Heim >Backend-Entwicklung >PHP-Tutorial >Lösung für PHP-Warnung: mysqli_query(): (HY000/1045): Zugriff für Benutzer verweigert

Lösung für PHP-Warnung: mysqli_query(): (HY000/1045): Zugriff für Benutzer verweigert

WBOY
WBOYOriginal
2023-06-23 10:10:031770Durchsuche

Wenn Sie PHP verwenden, um eine Verbindung zur MySQL-Datenbank herzustellen, wird häufig die Fehlermeldung „PHP-Warnung: mysqli_query(): (HY000/1045): Zugriff für Benutzer verweigert“ angezeigt.

Dieser Fehler wird normalerweise durch einen falschen Datenbank-Benutzernamen oder ein falsches Passwort verursacht. Wenn es nicht rechtzeitig behandelt wird, kann PHP keine Verbindung zur MySQL-Datenbank herstellen und keine Datenbankoperationen ausführen.

Hier sind einige gängige Möglichkeiten, dieses Problem zu lösen:

  1. Überprüfen Sie, ob der Benutzername und das Passwort der Datenbank korrekt sind.

Überprüfen Sie im PHP-Code, ob der Benutzername und das Passwort mit denen in der MySQL-Datenbank übereinstimmen, einschließlich ob Der Fall ist richtig. Wenn es sich um eine lokale Verbindung handelt, können Sie versuchen, eine Verbindung über das Root-Konto oder andere Konten mit Datenbankzugriffsrechten herzustellen, um zu überprüfen, ob die Verbindung erfolgreich hergestellt werden kann.

  1. Überprüfen Sie, ob der MySQL-Server läuft.

Wenn der MySQL-Server nicht läuft, können Sie keine Verbindung zu ihm herstellen. Führen Sie den Befehl „service mysql status“ oder „systemctl status mysqld.service“ auf dem Terminal aus oder verwenden Sie „mysqli_connect_errno()“ im PHP-Code, um zu überprüfen, ob ein Fehler in der Verbindung vorliegt. Wenn der MySQL-Dienst nicht startet, Sie müssen das Problem lösen, indem Sie die MySQL-Serverfrage starten.

  1. Überprüfen Sie, ob der MySQL-Benutzer zur Nutzung der Datenbank berechtigt ist.

Wenn der MySQL-Benutzer keine Berechtigung zur Nutzung der Datenbank hat, können Datenbankoperationen nicht ausgeführt werden. Führen Sie den folgenden Befehl aus, um den MySQL-Benutzer zur Nutzung der Datenbank zu autorisieren: GRANT ALL ON . TO 'mysqluser'@'localhost' IDENTIFIED BY 'password';

  1. Überprüfen Sie die Firewall-Einstellungen

Überprüfen Sie, ob Ihre Firewall-Einstellungen dies zulassen Kommunikation mit dem MySQL-Server. Normalerweise verwendet der MySQL-Server standardmäßig Port 3306 für Verbindungen. Sie müssen daher sicherstellen, dass dieser Port durch die Firewall zugelassen wird.

  1. Überprüfen Sie die MySQL-Serverprotokolle

Die MySQL-Serverprotokolle enthalten möglicherweise Details zum Verbindungsfehler. Suchen Sie die Fehlerprotokolldatei im MySQL-Installationsverzeichnis und versuchen Sie, Aufzeichnungen über Verbindungsfehler zu finden.

Sobald schließlich die Fehlermeldung „PHP-Warnung: mysqli_query(): (HY000/1045): Zugriff für Benutzer verweigert“ erscheint, müssen wir je nach Situation nacheinander verschiedene mögliche Ursachen untersuchen und versuchen, eine Verbindung herzustellen Führen Sie MySQL nach der Fehlerbehebung in der Datenbank erneut durch, um sicherzustellen, dass PHP eine reibungslose Verbindung herstellen und Datenbankvorgänge ausführen kann.

Das obige ist der detaillierte Inhalt vonLösung für PHP-Warnung: mysqli_query(): (HY000/1045): Zugriff für Benutzer verweigert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Message Queuing-System in PHPNächster Artikel:Message Queuing-System in PHP