Installer PHPMyAdmin sur Debian
PHPMyAdmin est une interface Web pour l'administration simplifiée de bases de données MySQL. Ce guide facilite son installation sur Debian.
Ce guide est testé sur:
- Debian 6.0 Squeeze
- Debian 7.0 Wheezy
- Ubuntu 10.04 Lucid Lynx
- Ubuntu 10.10 Natty Narwal
Prérequis
Ce guide nécessite :
- un serveur HTTP avec support du PHP, comme décrit par Installer PHP-FPM sur Debian.
- un serveur MySQL, comme décrit par Installer et configurer MySQL sur Debian.
Installation
Détectez le proxy de commande (command ou sudo):
cmdProxy='command'
command type -f 'sudo' &>'/dev/null' && cmdProxy='sudo'
Installez le logiciel:
${cmdProxy} apt-get install phpmyadmin php5-mcrypt php5-gd
Rechargez la configuration de PHP:
test -x /etc/init.d/php5-fpm && ${cmdProxy} service php5-fpm force-reload
test -x /etc/init.d/apache2 && ${cmdProxy} service apache2 force-reload
L'application est maintenant disponible via: http://localhost/phpmyadmin/
Finalisation
Ce guide recommande:
- L'intégration de PHPMyAdmin aux pages de statut du serveur, comme décrit par Afficher les statuts d'un serveur -> PHPMyAdmin.
Configuration manuelle
Remarque : les commandes qui suivent n'ont aucun effet si la configuration automatique de PHPMyAdmin a été utilisée.
Obtenez le script de création de la base de données utilisée par l'outil pour gérer différentes informations:
SCRIPT="/usr/share/doc/phpmyadmin/scripts/create_tables_mysql_4_1_2+.sql.gz" if [ -e "/usr/share/doc/phpmyadmin/examples/create_tables_mysql_4_1_2+.sql.gz" ]; then SCRIPT="/usr/share/doc/phpmyadmin/examples/create_tables_mysql_4_1_2+.sql.gz" fi if [ -e "/usr/share/doc/phpmyadmin/examples/create_tables.sql.gz" ]; then SCRIPT="/usr/share/doc/phpmyadmin/examples/create_tables.sql.gz" fi SQL_COMMAND=$(command gunzip --to-stdout "${SCRIPT}")
Créez la base pma et l'utilisateur associé:
if [ ! -e "/etc/dbconfig-common/phpmyadmin.conf" ]; then MYSQL_PASSWD="$(command apg -q -a 0 -n 1 -M NCL)" echo "${SQL_COMMAND}; GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY '${MYSQL_PASSWD}';; GRANT SELECT ( Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv ) ON mysql.user TO 'pma'@'localhost'; GRANT SELECT ON mysql.db TO 'pma'@'localhost'; GRANT SELECT ON mysql.host TO 'pma'@'localhost'; GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON mysql.tables_priv TO 'pma'@'localhost';" \ | command mysql --user=root --password fi
Configurez l'application pour utiliser la base de données:
if [ ! -e "/etc/dbconfig-common/phpmyadmin.conf" ]; then command sed -i -e "s|[/]*\(.*pmadb.*=\)[^;]*\(;.*\)$|\1 'phpmyadmin'\2|" \ -e "s|[/]*\(.*controluser.*=\)[^;]*\(;.*\)$|\1 'pma'\2|" \ -e "s|[/]*\(.*controlpass.*=\)[^;]*\(;.*\)$|\1 '$MYSQL_PASSWD'\2|" \ -e "s|[/]*\(.*auth_type.*=\)[^;]*\(;.*\)$|\1 'cookie'\2|" \ -e "s|[/]*\(.*pma_.*;.*\)$|\1|" \ "/etc/phpmyadmin/config.inc.php" fi
Remarque: Si nécessaire, "forcez" l'URL d'accès à PHPMyAdmin. Ajoutez cette ligne à la fin du fichier /etc/phpmyadmin/config.inc.php (ajustez la valeur graissée à vos besoins):
$cfg['PmaAbsoluteUri'] = 'http://www.mon-domaine.com/un-chemin/phpmyadmin/';
Remerciements
- Merci aux développeurs de PHPMyAdmin.