====== PHPmyAdmin : activation des fonctionnalités avanvées ======
===== Symptôme =====
Les versions récentes de //phpmyadmin// proposent des fonctionnalités "avancées". Cette évolution se manifeste par l'apparition d'un message de deux messages d'erreurs, lors de la connexion à //phpmyadmin// :
The additional features for working with linked tables have been deactivated. To find out why click here.
Connection for controluser as defined in your configuration failed.
Cela n'empêche pas phpmyadmin de continuer à fonctionner, comme par le passé. Mais on peut vouloir activer les nouvelles fonctionnalités et (au passage ou prioritairement) faire disparaître les messages d'erreurs.
===== Correction =====
On va s'attacher à activer les nouvelles fonctionnalités. Pour ce faire, il va falloir :
* créer un base de données pour que phpmyadmin puisse y faire sa cuisine,
* créer une utilisatrice (controluser) ayant les droits voulus sur cette base de données,
* faire en sorte que cette utilisatrice soit bien celle définie dans notre configuration de phpmyadmin.
Nous allons supposer que nous utilisons Ubuntu Linux. L'adaptation à d'autre Linux peut être plus où moins complexe...
==== Création de la base de données ====
Elle se fait en ligne de commande (ne pas saisir les "%%//%%" ni le texte qui les suit immédiatement :
$ cd /usr/share/doc/phpmyadmin/examples/ // on va chercher de fichier de commandes de création
$ sudo gunzip create_tables.sql.gz // on le décompresse
$ mysql -u root -p < create_tables.sql // on demande à mySQL d'exécuter les commandes
==== Création de l'utilisatrice avec les bons droits ====
Le login et le mot de passe de cette utilisatrice est déjà fixé dans les fichiers de configuration de //phpmyadmin//. En effet, il faut créer l'utilisatrice avec l'identité de laquelle //phpmyAdmin// se connectera à //mySQL// pour faire sa cuisine interne.
L'information se trouve dans le fichier ///etc/phpmyadmin/config-db.php//. Pour en consulter le contenu, le plus simple et d'ouvir un terminal et d'y taper la commande suivante :
$ sudo less /etc/phpmyadmin/config-db.php
on recherche les deux lignes consécutives définissant le nom d'utilisatrice et le mot de passe :
$dbuser='phpmyadmin';
$dbpass='le_mot_de_passe_prédéfini'
Ces lignes se situant au début du fichier, vous devriez les voir dès la validation de la command //less//. Pour vous déplacer dans le fichier : flèche-basse, flèche-haute. Pour quitter //less//, taper la lettre "q".
Pour créer l'utilisatrice mySQL et lui octroyer les bon droits sur la base créée à l'étape précédent, on le fait tranquillement via //phpmyadmin// ;-)
nom d'utilisatrice : phpmyadmin
host : localhost
password : celui qui était indiqué dans le fichier etc/phpmyadmin/config-db.php
base sur laquelle on doit lui donner des droits : phpmyadmin
droits minimaux à lui donner sur cette base : SELECT, INSERT, UPDATE, DELETE