<?php /* Servers configuration */ $i = 0; $cfg['blowfish_secret'] = 'a8b7c6d'; //What you want /* Server: localhost [1] */ $i++; $cfg['Servers'][$i]['verbose'] = 'Local Databases'; $cfg['Servers'][$i]['host'] = '127.0.0.1'; $cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['auth_type'] = 'cookie'; $cfg['Servers'][$i]['user'] = ''; $cfg['Servers'][$i]['password'] = ''; // Hidden databases in PhpMyAdmin left panel // $cfg['Servers'][$i]['hide_db'] = '(information_schema|mysql|performance_schema|sys)'; // Allow connection without password $cfg['Servers'][$i]['AllowNoPassword'] = true; // Suppress Warning about pmadb tables $cfg['PmaNoRelation_DisableWarning'] = true; // To have PRIMARY & INDEX in table structure export $cfg['Export']['sql_drop_table'] = true; $cfg['Export']['sql_if_not_exists'] = true; $cfg['MySQLManualBase'] = 'http://dev.mysql.com/doc/refman/5.7/en/'; /* End of servers configuration */ ?>
SELECT user, password_expired, password_lifetime FROM mysql.user;notez le résultat qui devrait être quelque chose comme :
mysql> SELECT user, password_expired, password_lifetime FROM mysql.user; +-----------+------------------+-------------------+ | user | password_expired | password_lifetime | +-----------+------------------+-------------------+ | root | N | NULL | | mysql.sys | N | NULL | +-----------+------------------+-------------------+ 2 rows in set (0.00 sec) mysql>
ERROR 1820 (HY000): You must reset your passwrd using ALTER USER statement before executing this statement.
ALTER USER 'root'@'localhost' PASSWORD EXPIRE;Ne maitrisant pas du tout le sujet je n'ose pas ...
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;Note : ne pas oublier le ; final.
ERROR 1820 (HY000): You must reset your passwrd using ALTER USER statement before executing this statement.
$cfg['Servers'][$i]['auth_type'] = 'http'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'root'; $cfg['Servers'][$i]['AllowNoPassword'] = false;J'ai mis que les différentes.
mysql> SELECT user, password_expired, password_lifetime FROM mysql.user; +-----------+------------------+-------------------+ | user | password_expired | password_lifetime | +-----------+------------------+-------------------+ | root | N | NULL | | mysql.sys | N | NULL | +-----------+------------------+-------------------+Et, on a accès à PhpMyAdmin avec root sans mot de passe.
mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE; Query OK, 0 rows affected (0.00 sec)et renvoyons la commande précédente :
mysql> SELECT user, password_expired, password_lifetime FROM mysql.user; ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.Nous avons bien l'erreur.
#1862 - Your password has expired. To log in you must change it using a client that supports expired passwords. mysqli_real_connect(): (HY000/1862): Your password has expired. To log in you must change it using a client that supports expired passwords.Bizarrement, bien qu'il n'y avait pas de mot de passe à root, il est indiqué que la durée de validité du mot de passe est expirée.
mysql> ALTER USER USER() IDENTIFIED BY 'mot_de_passe'; Query OK, 0 rows affected (0.00 sec)Nota : mot_de_passe est, en clair, le mot de passe que vous voulez affecter à root.
mysql> SELECT user, password_expired, password_lifetime FROM mysql.user; +-----------+------------------+-------------------+ | user | password_expired | password_lifetime | +-----------+------------------+-------------------+ | root | N | NULL | | mysql.sys | N | NULL | +-----------+------------------+-------------------+Et, l'accès à PhpMyAdmin est de nouveau possible mais, bien sûr en utilisant le nouveau 'mot_de_passe' affecté à root précédemment.
Citation
Artemus24
Je n'utilise pas exactement les mêmes paramètres que vous dans le fichier "config.inc.php".$cfg['Servers'][$i]['auth_type'] = 'http'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'root'; $cfg['Servers'][$i]['AllowNoPassword'] = false;J'ai mis que les différentes.
7) si tout va bien, je vous conseille, sous l'approbation d'Otomatic, de modifier votre fichier config.inc.php selon mes recommandations.
$cfg['Servers'][$i]['auth_type'] = 'cookie'; $cfg['Servers'][$i]['user'] = ''; $cfg['Servers'][$i]['password'] = ''; $cfg['Servers'][$i]['AllowNoPassword'] = true;permet les accès dans tous les cas de figure.