Ich benutze PHP mysqli_connect
für die Anmeldung bei einer MySQL-Datenbank (alle auf 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');
}
?>
Dies ist die mysql.user-Tabelle:
MySQL Server ini Datei:
[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
Mit caching_sha2_password
in der MySQL Server-INI-Datei ist es überhaupt nicht möglich, sich mit Benutzer1 oder Benutzer2 anzumelden.
Fehler: mysqli_connect (): Der Server hat eine Authentifizierungsmethode angefordert, die dem Client [caching_sha2_password] in ... unbekannt ist.
Mit mysql_native_password
in der MySQL Server-INI-Datei ist es möglich, sich mit Benutzer1 anzumelden, aber mit Benutzer2 der gleiche Fehler.
Wie kann ich mich mit caching_sha2_password
dem mySql Server anmelden?
mysqli
.