J'utilise php mysqli_connect
pour se connecter à une base de données MySQL (toutes sur localhost)
<?php
//DEFINE ('DB_USER', 'user2');
//DEFINE ('DB_PASSWORD', 'pass2');
DEFINE ('DB_USER', 'user1');
DEFINE ('DB_PASSWORD', 'pass1');
DEFINE ('DB_HOST', '127.0.0.1');
DEFINE ('DB_NAME', 'dbname');
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if(!$dbc){
die('error connecting to database');
}
?>
il s'agit de la table mysql.user :
Fichier ini du serveur MySQL :
[mysqld]
# The default authentication plugin to be used when connecting to the server
default_authentication_plugin=caching_sha2_password
#default_authentication_plugin=mysql_native_password
avec caching_sha2_password
dans le fichier ini du serveur MySQL, il n'est pas possible de se connecter avec user1 ou user2 ;
erreur : mysqli_connect() : Le serveur a demandé une méthode d'authentification inconnue du client [caching_sha2_password] dans...
avec mysql_native_password
dans le fichier ini du serveur MySQL, il est possible de se connecter avec user1, mais avec user2, même erreur ;
Comment puis-je me connecter en utilisant caching_sha2_password
sur le serveur mySql ?
0 votes
L'AOP soutient-elle cette démarche ? J'ai vu d'autres rapports à propos de
mysqli
.0 votes
La réponse postée par @ doit être marquée comme réponse acceptée.
0 votes
Depuis le terminal, connectez-vous à mysql avec cette commande : mysql -u Root -p puis entrez le mot de passe Root, puis collez la commande suivante ALTER USER 'Root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root' ;