Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
phpmyadmin [Le 29/04/2016, 10:46] 64.62.219.87 [phpMyAdmin] |
phpmyadmin [Le 25/07/2024, 17:17] (Version actuelle) 78.114.49.174 erreur apache2 |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>sgbd mysql serveur réseau}} | + | {{tag>Jammy sgbd mysql serveur réseau}} |
---- | ---- | ||
+ | ====== phpMyAdmin ====== | ||
- | develloper par HANI BOUNEDJAR 12/01/2011 | + | **[[https://www.phpmyadmin.net/|phpMyAdmin]]** est une interface web en PHP pour administrer à distance les [[:SGBD]] [[:MySQL]] et [[:MariaDB]]. |
- | ==== Pré-requis ==== | + | Il permet d'administrer les éléments suivants : |
+ | * les bases de données | ||
+ | * les tables et leurs champs (ajout, suppression, définition du type) | ||
+ | * les index, les clés primaires et étrangères | ||
+ | * les utilisateurs de la base et leurs permissions | ||
+ | * importer ou exporter les données dans divers formats (CSV, XML, PDF, OpenDocument, Word, Excel et LaTeX) | ||
- | Avoir [[:tutoriel:comment_installer_un_paquet#paquet_present_dans_les_depots|installé les paquets]] suivants : | + | {{:phpmyadmin.png}} |
- | * le SGBD [[apt>mysql-server|MySQL]] | + | |
- | * le serveur HTTP [[apt>apache2]] et ses outils [[apt>apache2-utils]] | + | |
- | ==== Installation via les dépôts ==== | + | Pour toute information complémentaire il faut vous référer à [[https://docs.phpmyadmin.net/fr/latest/|la documentation officielle de phpMyAdmin (en français).]] |
- | [[:tutoriel:comment_installer_un_paquet#paquet_present_dans_les_depots|Installer le paquet]] **[[apt>phpmyadmin]]**. | + | ===== Pré-requis ===== |
- | Lors de l'installation, il vous sera demandé de préciser quelle version d'Apache vous utilisez (théoriquement la plus récente) afin que ce dernier soit configuré pour s'adapter à phpMyAdmin. | + | Avoir [[:tutoriel:comment_installer_un_paquet#paquet_present_dans_les_depots|installé les paquets]] suivants : |
+ | * le SGBD [[apt>mysql-server|MySQL]] ou [[apt>mariadb-server|MariaDB]] | ||
+ | * le serveur web [[apt>apache2]] (ou [[apt>lighttpd]]) | ||
- | Pour protéger phpMyAdmin, pensez à modifier le mot de passe d'administration. Par défaut celui ci est vide. | + | S'être assuré que le serveur web fonctionne et que les scripts PHP sont correctement interprétés. |
+ | ===== Installation via les dépôts ===== | ||
- | <code>sudo htpasswd /etc/phpmyadmin/htpasswd.setup admin</code> | + | Il est recommandé d'installer phpMyAdmin depuis les dépôts officiels afin d'avoir une installation immédiatement fonctionnelle et de bénéficier des mises à jour de sécurité. |
+ | [[:tutoriel:comment_installer_un_paquet#paquet_present_dans_les_depots|Installer le paquet]] **[[apt>phpmyadmin]]**.\\ | ||
+ | Soit en ligne de commande : | ||
+ | <code>sudo apt install phpmyadmin</code> | ||
- | Vous pouvez essayer d'y accéder à l'adresse [[http://localhost/phpmyadmin]]. Si la page n'est pas accessible, essayez de lancer | + | Lors de l'installation, il vous sera posé quelques questions auxquelles il faut répondre avec soin : |
- | sudo ln -s /usr/share/phpmyadmin/ /var/www/html/phpmyadmin | + | * Choisir le serveur web à configurer automatiquement (utiliser les flèches du clavier ou la touche //tab// pour se déplacer et la barre d'espace pour sélectionner/désélectionner) : |
- | afin de lier phpmyadmin et votre serveur apache. (Il y a peut être une méthode plus propre FIXME ?) | + | <note important>Le surlignage rouge n'est pas une sélection, il faut que ça affiche une étoile * entre les crochets, en utilisant la barre d'espace</note> |
- | ===== Utilisation ===== | + | {{:screenshot_20171028_125829.png|}} |
+ | * Créer la base de données phpmyadmin : **oui** | ||
+ | {{::screenshot_20171028_112911.png|}} | ||
+ | * Définir un mot de passe pour l'utilisateur MySQL phpmyadmin : | ||
+ | {{:screenshot_20171028_112939.png|}} | ||
+ | * Indiquer le mot de passe de l'utilisateur MySQL « root » tel que défini à l'installation de mysql-server : | ||
+ | {{:screenshot_20171028_113015.png|}} | ||
- | phpMyAdmin est accessible à l'adresse [[http://localhost/phpmyadmin]] (il est nécessaire d'activer le javascript de votre navigateur internet). | ||
- | Pour vous connecter, utilisez votre login / mot de passe utilisé avec [[mysql|MySQL]]. Si aucun nouvel utilisateur n'est créé, vous pouvez utiliser le compte ''root'' pour les créer : | ||
- | * Utilisateur : root | ||
- | * Mot de passe : celui que vous avez défini à l'installation de MySQL | ||
+ | phpMyAdmin devrait être accessible à l'adresse http://localhost/phpmyadmin | ||
- | ===== Problèmes connus ===== | + | root |
- | Concernant les problèmes de non accessibilité de PHPMyAdmin, s'assurer auparavant que, lors de l'installation du paquet phpmyadmin, le serveur web souhaité (généralement Apache) a bien été sélectionné lorsque la question a été posée. Sinon, utiliser la commande suivante pour pouvoir répondre à la question à nouveau : | + | |
- | <code>sudo dpkg-reconfigure phpmyadmin</code> | + | |
- | <note importante> | + | ==== Sécurisation === |
- | Il semble impératif d'appuyer sur la barre d'espace du clavier pour valider la sélection (apparition d'un astérisque) AVANT d'appuyer sur Entrée !! | + | La configuration par défaut (faite ci-dessus) lors de l'installation crée un alias qui donne accès à phpMyAdmin par un url du type : **mon-site.fr/phpmyadmin** et les robots des hackers le savent !\\ |
- | </note> | + | Si votre phpMyAdmin est en ligne, il peut être judicieux de renommer cet alias.\\ |
- | + | Pour le faire, il suffit : | |
- | + | d'éditer avec les [[:sudo|droits d'administration]] le fichier /etc/phpmyadmin/apache.conf\\ | |
- | Le paquet crée le lien dans ''/etc/apache2/conf.d''. | + | et de remplacer |
- | ==== Page phpmyadmin non accessible ==== | + | |
- | + | ||
- | Il se peut que la page [[http://localhost/phpmyadmin]] ne soit pas accessible. Ce problème peut être dû à une mauvaise configuration de votre serveur Apache ou du paquet phpmyadmin. Après chacune des solutions suivantes FIXME , redémarrez le serveur Apache avec cette ligne de commande: | + | |
- | + | ||
- | <code>sudo /etc/init.d/apache2 restart</code> | + | |
- | + | ||
- | Si le problème persiste, [[http://forum.ubuntu-fr.org/|le forum]] est à votre disposition. | + | |
- | + | ||
- | Problème possible : apache cherche par défaut dans "/var/www/phpmyadmin". Il se peut que ce fichier n'existe pas. | + | |
- | Solution : sachant que l'installation s'est faite dans "/usr/share/phpmyadmin", il suffit de créer un lien symbolique : | + | |
- | + | ||
- | <code>sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin</code> | + | |
- | + | ||
- | ATTENTION depuis ubuntu 14.04 l’accès n'est plus /var/www mais : /var/www/html | + | |
- | il faudra donc créer le lien ainsi: | + | |
- | <code>sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin</code> | + | |
- | + | ||
- | <note tip>Sinon vous pouvez peut être (en tous cas ça marche) LOL modifier le fichier dans /etc/apache2/sites-enabled et trouver le fichier 000-default.conf (il n'y en a qu' un :-) puis vous rajoutez cela: "allow from localhost" (sans les "") et sur la ligne du dessous: "Deny from all" (toujours sans les ""). | + | |
- | Vous devriez donc avoir en première ligne ceci: | + | |
- | <Directory /> | + | |
- | Deny from all | + | |
- | allow from localhost | + | |
- | </Directory> | + | |
- | + | ||
- | Ensuite vous redémarrez apache2 avec sudo /etc/init.d/apache2 restart ou avec sudo service apache2 restart et voilà ça fonctionne! </note> | + | |
- | + | ||
- | ==== Page phpmyadmin non accessible (2) ==== | + | |
- | + | ||
- | La configuration de base de phpmyadmin, sous apache, peut se trouver sous /etc/apache2/conf.d/ par lien symbolique à /etc/phpmyadmin/apache.conf | + | |
- | * Si le lien n'existe pas, le créer | + | |
<code> | <code> | ||
- | sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf | + | Alias /phpmyadmin /usr/share/phpmyadmin |
+ | # par quelque chose comme ci-dessous (avec accents ou pas? !) | ||
+ | Alias /nom-accès-personnalisé /usr/share/phpmyadmin | ||
</code> | </code> | ||
- | * Il est préférable de modifier l'Alias, par un nom moins commun que phpmyadmin, très fréquemment attaqué, par les robots pirates (bad_bot) | + | [[:apache2#autres_commandes_utiles|Recharger la conf d'apache (reload)]] |
- | * **__Renseigner explicitement (Order)__** les autorisations (Allow) et/ou les interdictions (Deny), sinon Apache interdira par défaut si rien est précisé. | + | |
- | Exemple à adapter: | + | ==== Ajouter des thèmes graphiques ==== |
- | Avec les [[:sudo|droits d'administration]], [[:tutoriel:comment_modifier_un_fichier|éditez le fichier]] **/etc/apache2/conf.d/phpmyadmin.conf** | + | Il est possible de changer de thème graphique, notamment avec les versions récentes, pour cela, rendez-vous sur |
- | <code> gksudo gedit /etc/apache2/conf.d/phpmyadmin.conf </code> | + | [[https://www.phpmyadmin.net/themes|thèmes]] |
- | <file php phpmyadmin.conf> | + | ===== Problèmes courants ===== |
- | Alias /elephant-bleu /usr/share/phpmyadmin | + | |
- | <Directory /usr/share/phpmyadmin> | + | ==== Erreur 404 avec Apache ==== |
- | SetEnvIfNoCase User-Agent "^ZmEu" bad_bot | + | Concernant les problèmes de non accessibilité de phpMyAdmin, s'assurer auparavant que, lors de l'installation du paquet //phpmyadmin//, le serveur web souhaité (généralement Apache) a bien été sélectionné lorsque la question a été posée :\\ |
- | SetEnvIfNoCase User-Agent "^BackDoorBot" bad_bot | + | l'interface n'est pas très claire à ce niveau et l'option //Apache// peut sembler sélectionnée alors qu'elle ne l'est pas. Il faut appuyer sur la barre d'espace et s'assurer d'avoir une astérisque ** * ** au niveau d'//Apache//. |
- | SetEnvIfNoCase user-agent "^BlackWidow" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^BotALot" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^Cegbfeieh" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^ChinaClaw" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^CopyRightCheck" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Custo" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^DISCo" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Download\ Demon" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^eCatch" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^EirGrabber" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^EmailSiphon" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^EmailWolf" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Express\ WebPictures" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^ExtractorPro" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^EyeNetIE" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^FlashGet" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^GetRight" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^GetWeb!" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Go!Zilla" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Go-Ahead-Got-It" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^GrabNet" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Grafula" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^HMView" bad_bot | + | |
- | SetEnvIfNoCase user-agent "HTTrack" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Image\ Stripper" bad_bot | + | |
- | SetEnvIfNoCase user-agent "Indy\ Library" [NC,OR] | + | |
- | SetEnvIfNoCase user-agent "^InterGET" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Internet\ Ninja" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^JetCar" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^JOC\ Web\ Spider" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^larbin" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^LeechFTP" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^libwww-perl" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Mass\ Downloader" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^MIDown\ tool" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Mister\ PiX" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Navroad" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^NearSite" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^NetAnts" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^NetSpider" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Net\ Vampire" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^NetZIP" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Octopus" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Offline\ Explorer" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Offline\ Navigator" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^Openfind" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^PageGrabber" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Papa\ Foto" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^pavuk" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^pcBrowser" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^RealDownload" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^ReGet" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^SiteSnagger" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^SmartDownload" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^SpankBot" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^SuperBot" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^SuperHTTP" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Surfbot" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^tAkeOut" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Teleport\ Pro" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^Titan" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^VoidEYE" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Web\ Image\ Collector" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Web\ Sucker" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebAuto" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^WebBandit" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebCopier" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebFetch" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebGo\ IS" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebLeacher" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebReaper" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebSauger" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Website\ eXtractor" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Website\ Quester" bad_bot | + | |
- | SetEnvIfNoCase User-Agent "^Webster Pro" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebStripper" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebWhacker" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WebZIP" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Wget" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Widow" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^WWWOFFLE" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Xaldon\ WebSpider" bad_bot | + | |
- | SetEnvIfNoCase user-agent "^Zeus" bad_bot | + | |
- | #Order Allow,Deny | + | Utilisez la commande suivante pour pouvoir répondre à nouveau aux questions : |
- | #Allow from all | + | <code>sudo dpkg-reconfigure phpmyadmin</code> |
- | #Deny from env=bad_bot | + | |
- | Order Deny,Allow | + | <note importante> |
- | Deny from all | + | Dans les écrans de configuration, les déplacement se font avec la touche TAB (ou les flèches du clavier), les sélections avec la barre d'espace et les validations avec la touche Entrée. |
- | Allow from 127.0.0.1 | + | </note> |
- | + | ||
- | Options +Indexes +FollowSymLinks -ExecCGI | + | |
- | AllowOverride None | + | |
- | + | ||
- | #basculer en https si virtualhost en 443 existe | + | |
- | #RewriteEngine on | + | |
- | #RewriteCond %{HTTPS} off | + | |
- | #RewriteRule (.*) https://%{HTTP_HOST}/elephant-bleu/index.php [NC,R,L] | + | |
- | <IfModule mod_php5.c> | + | ==== Accès root ==== |
- | + | ||
- | AddType application/x-httpd-php .php | + | |
- | php_flag magic_quotes_gpc Off | + | |
- | php_flag track_vars On | + | |
- | php_flag register_globals Off | + | |
- | php_value include_path . | + | |
- | </IfModule> | + | |
- | </Directory> | + | Avec [[:MySQL]] et [[:MariaDB]], l'authentification de l'utilisateur //root// de MySQL se fait au moyen du //[[:mysql#authentification|plugin auth_socket]]//, donc avec [[:sudo]].\\ |
+ | Cette méthode ne permet pas de se connecter avec phpMyAdmin, mais il est [[:mysql#ajouter_ou_changer_le_mot_de_passe_de_root|vivement déconseillé]] de modifier ce comportement. | ||
- | # Authorize for setup | + | Si vous avez besoin d'un accès total à vos bases de données depuis un même compte, la solution conseillée est donc de créer un nouvel utilisateur et de lui attribuer tous les privilèges : |
- | <Directory /usr/share/phpmyadmin/setup> | + | |
- | <IfModule mod_authn_file.c> | + | |
- | AuthType Basic | + | |
- | AuthName "phpMyAdmin Setup" | + | |
- | AuthUserFile /etc/phpmyadmin/htpasswd.setup | + | |
- | </IfModule> | + | |
- | Require valid-user | + | |
- | </Directory> | + | |
- | + | ||
- | # Disallow web access to directories that don't need it | + | |
- | <Directory /usr/share/phpmyadmin/libraries> | + | |
- | Order Deny,Allow | + | |
- | Deny from All | + | |
- | </Directory> | + | |
- | <Directory /usr/share/phpmyadmin/setup/lib> | + | |
- | Order Deny,Allow | + | |
- | Deny from All | + | |
- | </Directory> | + | |
- | </file> | + | |
- | + | ||
- | Pour recharger la configuration Apache | + | |
<code> | <code> | ||
- | sudo apache2ctl configtest && sudo service apache2 reload && sudo service apache2 status | + | sudo mysql |
+ | </code> | ||
+ | Puis dans la console MySQL : | ||
+ | <code mysql> | ||
+ | CREATE USER 'nom_utilisateur_choisi'@'localhost' IDENTIFIED BY 'mot_de_passe_solide'; | ||
+ | GRANT ALL ON *.* TO 'nom_utilisateur_choisi'@'localhost' WITH GRANT OPTION; | ||
+ | FLUSH PRIVILEGES; | ||
+ | QUIT; | ||
</code> | </code> | ||
- | [[http://127.0.0.1/elephant-bleu]] | ||
- | Certains préfèreront intégrer directement l'Alias dans le Virtualhost. Dans ce cas là, le lien symbolique ne sert à rien. | + | En remplaçant évidemment //nom_utilisateur_choisi// et //mot_de_passe_solide// dans cette requête. |
- | + | ||
- | ==== Fonctionnalités sur les tables reliées désactivées ==== | + | |
- | + | ||
- | Si vous avez le message d'erreur suivant | + | |
- | + | ||
- | > Certaines fonctionnalités ayant trait aux tables reliées sont désactivées. Pour une analyse du problème, cliquez ici. | + | |
- | + | ||
- | - [[:tutoriel:comment_modifier_un_fichier|Ouvrez le fichier]] **/etc/phpmyadmin/config.inc.php** ; | + | |
- | - Cherchez la ligne <file> $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';</file> | + | |
- | - Ajoutez la ligne <file> $cfg['Servers'][$i]['tracking'] = 'pma_tracking';</file> | + | |
- | - Déconnectez puis reconnectez vous de phpMyAdmin. | + | |
- | + | ||
- | ====> Impossible d'ajouter un utilisateur ==== | + | |
- | + | ||
- | Si le compte ''root'' ne peut pas ajouter de nouveaux utilisateurs ou si vous obtenez un message d'erreur similaire : | + | |
- | + | ||
- | > ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement | + | |
- | + | ||
- | Il est possible que vous ayez fait une installation incomplète ou partielle. | + | |
- | - [[:tutoriel:comment_supprimer_un_paquet|Supprimez le paquet]] (et sa configuration) **mysql-server-5.1** ; | + | |
- | - Redémarrez ; | + | |
- | - Réinstallez [[:MySQL]] ; | + | |
- | - Réinstallez phpMyAdmin. | + | |
- | + | ||
- | FIXME, ne disposant pas de connaissances MySQL avancées, c'est la seule façon que j'ai trouvé pour résoudre. Si vous connaissez une solution moins radicale, veuillez remplacer ce que j'ai indiqué. | + | |
- | + | ||
- | + | ||
- | ==== Créer un lien vers phpmyadmin ==== | + | |
- | + | ||
- | Il se peut que l'installation n'ait pas créé le lien symbolique permettant d'accéder à phpmyadmin, il faut alors le créer manuellement : | + | |
- | + | ||
- | <code>sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin</code> | + | |
- | + | ||
- | Rappelez vous avoir créé ce lien symbolique quand vous voudrez supprimer l'alias /phpmyadmin, en effet si vous gardez ce lien la page mon_domaine/phpmyadmin restera accessible même après avoir modifié l'alias dans le fichier de conf apache: /etc/apache2/conf.d/phpmyadmin.conf (pour détruire un lien symbolique pensez à la commande unlink, ici on utiliserai "unlink /var/www/phpmyadmin". ) | + | |
- | + | ||
- | Attention, le lien avec la version 14.10 n'est pas dans le bon dossier, il suffit de faire un couper-coller et le placer dans le dossier html. | + | |
- | ==== Reconfigurer le paquet phpmyadmin ==== | + | |
- | + | ||
- | Ouvrez un terminal, entrez | + | |
- | + | ||
- | <code>sudo dpkg-reconfigure phpmyadmin</code> | + | |
- | + | ||
- | et veillez à sélectionner la version de votre serveur HTTP (apache2 normalement). | + | |
- | + | ||
- | Il faut impérativement le faire en utilisant la barre d'espace avant de faire "Enter", sans quoi cela ne marche pas. | + | |
- | Une astérisque apparait alors dans le rectangle rouge à côté de "apache2". | + | |
- | + | ||
- | ==== Erreur : “La connexion au controluser tel que défini dans votre configuration a échoué” ==== | + | |
- | + | ||
- | Pour résoudre ce problème, il suffit de changer le mot de passe de l'utilisateur 'phpmyadmin' pour le rendre //identique// à celui de l'utilisateur 'root' de mysql. | + | |
- | + | ||
- | Pour cela, il faut [[:tutoriel:comment_modifier_un_fichier|modifier le fichier]] ''/etc/dbconfig-common/phpmyadmin.conf'' : | + | |
- | <code>gksudo gedit /etc/dbconfig-common/phpmyadmin.conf</code> | + | |
- | Modifier la variable dbc_dbpass, de manière à ce que la ligne ressemble à ça : \\ | + | |
- | ''dbc_dbpass='mot_de_passe''' | + | |
- | + | ||
- | Ensuite, il faut régénérer les fichiers de configurations de PhpMyAdmin : | + | |
- | <code>sudo dpkg-reconfigure phpmyadmin</code> | + | |
- | Il faut refuser de recréer la base de donnée ''phpmyadmin'' si l'assistant le propose, ainsi que garder ''phpmyadmin.conf'' que vous venez de créer et ne pas accepter celui par défaut où il n'y a pas de mot de passe. | + | |
- | ==== Paramétrez le serveur apache2 ==== | + | |
- | Il se peut que l'installation du paquet phpMyAdmin n'ait pas inclus son en-tête de configuration pour le serveur apache. Rajoutez la ligne nécessaire pour qu'il soit pris en compte : | + | <note warning>Cette solution peut être utile sur un serveur de développement mais elle rend plus dangereuse une [[wpfr>attaque par force brute]] sur la page de connexion de phpMyAdmin. En production il est indispensable de protéger l'accès avec HTTPS et un mot de passe extrêmement solide et/ou une authentification à deux facteurs, et/ou des mesures de restriction d'accès par IP. |
+ | Et veillez à utiliser un couple identifiant / mot de passe différent pour chacun de vos sites ou applications web.</note> | ||
+ | ==== accès impossible à localhost ==== | ||
+ | juillet 2024 : une erreur de configuration du fichier etc/apache2/mods-enabled/php8.2.load empêche le démarrage d'apache2 et donc l'accès à localhost et à phpmyadmin. Ouvrez ce fichier et lisez la 3e ligne qui renvoie sur le fichier /usr/lib/apache2/modules/libphp8.2.so En fait (chez moi), ce fichier s'appelle désormais libphp8.3.so. Il faut donc corriger la ligne de ce premier fichier avec [[sudo|Droits de super utilisateur]] avec le nom correct. L'accès est rétabli. | ||
+ | ==== autres ==== | ||
- | <code>sudo echo -e '\n#phpmyadmin\nInclude /etc/phpmyadmin/apache.conf' >> /etc/apache2/apache2.conf</code> | + | Si des erreurs apparaissent en fin de configuration, le plus simple est de [[:tutoriel:comment_supprimer_un_paquet| supprimer complètement (purger)]] phpMyAdmin et de le réinstaller. |
- | Redémarrez le serveur apache et [[http://localhost/phpmyadmin|réessayez]]. | + | Si le problème persiste, [[https://forum.ubuntu-fr.org/|le forum]] est à votre disposition. |
+ | Vous pouvez essayer de mettre phpmyadmin en login ( sans majuscule ) , ça a marché pour moi même avec php 7.2 ! | ||
===== Désinstallation ===== | ===== Désinstallation ===== | ||
Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez. | Pour supprimer cette application, il suffit de [[:tutoriel:comment_supprimer_un_paquet|supprimer son paquet]]. La configuration de l'application sera conservée ou supprimée selon la méthode de désinstallation que vous choisirez. | ||
+ | ===== Alternative ===== | ||
+ | [[https://www.adminer.org/|Adminer]] | ||
===== Voir aussi ===== | ===== Voir aussi ===== | ||
Ligne 307: | Ligne 122: | ||
Vous pouvez consulter les sites suivants pour obtenir un complément d'information... | Vous pouvez consulter les sites suivants pour obtenir un complément d'information... | ||
- | * [[http://phpmyadmin.readthedocs.org/projects/phpmyadmin-french/fr/latest/|Documentation complète en français]] **(fr)** ; | + | * [[https://docs.phpmyadmin.net/fr/latest/|Documentation complète en français]] **(fr)** |
- | * [[http://www.phpmyadmin.net|Site officiel du projet]] **(en)** ; | + | * [[https://www.phpmyadmin.net|Site officiel du projet]] **(en)** |
+ | * [[https://help.ubuntu.com/community/phpMyAdmin|page phpMyAdmin sur help.ubuntu.com]] **(en)** | ||
---- | ---- | ||
- | //Contributeurs : [[utilisateurs:guigouz|Guigouz]], [[utilisateurs:mcpeter|McPeter]]// | + | //Contributeurs : [[utilisateurs:guigouz|Guigouz]], [[utilisateurs:mcpeter|McPeter]], [[utilisateurs:krodelabestiole]]// |