Principe

Nous avons vu l'installation de la base de données mysql avec la Formation d'administrateur Baby?. Pour gérer cette base, il suffit de faire un ssh sur le serveur et d'utiliser "mysql" qui est abondament documenté.

Mais si vous voulez gérer ça à distance, ou ne pas trop vous préoccuper de mysql, il est bon d'installer phpMyAdmin.

Installation

phpMyAdmin s'installe comme n'importe quel module php. En root sur le serveur, le plus simple est d'extraire l'archive dans le répertoire racine du site web (/srv/www/htdocs par défaut sur la SuSE 9.0). Comme en général le nom du répertoire créé par le désarchivage est long, un "mv" permet de le renommer en quelque chose de plus léger. Par exemple phpMyAdmin,

Ensuite, utilisez vi pour aller modifier le fichier config.inc.php. Les lignes à modifier sont du genre :

 $cfg['Servers'][$i]['host'] = 'mecum.dodin.org';
 $cfg['Servers'][$i]['port'] = '';
 $cfg['Servers'][$i]['socket'] = '';
 (...)

Chaque ligne contient un commentaire. Chez moi, "localhost" ne fonctionne pas bien et il me faut donner le FQDN (mecum.dodin.org). Il y a quelques dizaines de lignes comme ça, avec, en particulier le mot de passe root de la base mysql, et votre mot de passe administrateur pour phpMyAdmin (éviter de mettre le même).

Une autre méthode est également possible: modifiez le fichier config.inc.php comme suit (voir la documentation de phpMyAdmin sur la page Documentation.html#quick_install située sur votre serveur dans le répertoire phpMyAdmin):

 $cfg['blowfish_secret'] = 'jmlezk436584dsfg4'; 

/* YOU MUST FILL IN THIS FOR COOKIE AUTH! indiquez la valeur que vous voulez*/

 (...)
 /* Authentication type */
 $cfg['Servers'][$i]['auth_type'] = 'cookie';
 $cfg['Servers'][$i]['user'] = 'root';
 $cfg['Servers'][$i]['password'] = '';
 /* Server parameters */
 $cfg['Servers'][$i]['host'] = 'localhost';

L'avantage non négligeable est que le mot de passe n'est pas inscrit dans ce fichier, dans le cas bien sûr où d'autres personnes y auraient accès.

Protégez le répertoire de phpMyAdmin par un fichier .htaccess du genre de celui-çi :

 AuthType Basic
 AuthName "Accès réservé"
 AuthUserFile <chemin du fichier des mots de passe>
 Require user <votre login>

Dans la dernière ligne, ne mettez pas valid-user, sinon tous les usagers pourront utiliser phpMyAdmin, ce qui n'est sans doute pas le but.

Quand vous aurez vérifié que tout marche bien (faites une sauvegarde, par exemple), vous pourrez désactiver (mettre sur TRUE) l'option qui vous donne un avertissement en rouge (si vous ne le voyez pas, c'est sans doute qu'il est inutile).

Vous n'avez plus qu'à vous connecter...