PHP kann keine Verbindung zu mysql8 herstellen (Problem mit dem Verschlüsselungs-Plug-in)

PHP7 stellt nie eine Verbindung zu MySQL8 her

//连接数据库
$conn=mysqli_connect($mysql_server_name,$mysql_username,$mysql_password,$mysql_database);
if (mysqli_connect_errno()) {
    
    
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

Bitte fügen Sie eine Bildbeschreibung hinzu

In vielen Tutorials wird empfohlen, die Konfiguration in der Konfigurationsdatei /etc/my.cnf hinzuzufügen:

default-authentication-plugin=mysql_native_password

Starten Sie dann MySQL neu und erstellen Sie einen Benutzer

CREATE USER 'native'@'localhost' IDENTIFIED  BY 'password'

Aber tatsächlich funktioniert es immer noch nicht, nachdem ich es versucht habe. Überprüfen Sie die Datenbank

SELECT Host,User,plugin FROM mysql.user;

Überprüfen Sie das vom Benutzer verwendete Verschlüsselungs-Plug-in.
Fügen Sie hier eine Bildbeschreibung ein
Der zuvor erstellte Benutzer verwendet weiterhin das caching_sha2_password-Plug-in. Zu diesem Zeitpunkt können wir angeben , welches Plug-In beim Erstellen eines Benutzers verwendet werden soll . Dies ist stabiler. Überprüfen Sie nach der Erstellung am besten, welches Plug-In verwendet wird.

CREATE USER 'native'@'localhost' IDENTIFIED WITH mysql_native_password  BY 'password'

Je suppose que tu aimes

Origine blog.csdn.net/weixin_45654405/article/details/125082625
conseillé
Classement