Heim >Datenbank >MySQL-Tutorial >Eine lokal verbundene virtuelle Maschine mit MySQL-Eingabeaufforderung darf keine Verbindung herstellen

Eine lokal verbundene virtuelle Maschine mit MySQL-Eingabeaufforderung darf keine Verbindung herstellen

咔咔
咔咔Original
2020-06-30 16:20:54202Durchsuche

Dieser Artikel löst das Problem, dass die lokale Navicat-Verbindung zum Remote-MySQL-Server anzeigt, dass die Verbindung nicht zulässig ist

1. ProblembehebungLokales Navicat stellt eine Verbindung zur MySQL-Datenbank der virtuellen Maschine centos7.3 herNach Bestätigung der Verbindung wird ein Fehler wie dieser gemeldet

2. Das Problem wurde gefundenDieses Problem scheint auf den ersten Blick ein Fernverbindungsproblem zu sein, aber für neue Lernende ist es für Partner wahrscheinlich schwierig zu glauben, dass dies ein Problem ist, daher wird Kaka Schritt für Schritt bei der Lösung dieses Problems helfen.

Zuerst gehen wir zum Terminal der virtuellen Maschine und verbinden uns mit MySQL.

Führen Sie den Befehl

aus und geben Sie dann das Passwort ein, um MySQL aufzurufen

Führen Sie den Befehl show databases; aus, um alle aktuellen Datenbanken anzuzeigen Worauf wir hauptsächlich achten müssen, ist die mysql Bibliothek, wechseln Sie die Datenbank, führen Sie den Befehl use mysql aus, es gibt eine Datenbank in MySQL-Benutzertabelle. Lassen Sie mich hier einen kleinen Punkt ansprechen. Im Terminal haben wir früher clear ausgeführt, um den Bildschirm zu löschen, aber die Ausführung von „clear“ in MySQL hat keine Auswirkung.

Der Befehl zum Löschen des Bildschirms im MySQL-Terminal lautet system clear

Okay, zurück zum Thema, in der Tabelle user benötigen wir nur zwei Informationen, eine ist hos und eine der andere ist Benutzer. Wir müssen die Abfrageanweisung ausführen, um sie abzufragen.

Im obigen Bild gibt die Host-Spalte die IP an, über die sich Benutzer anmelden können. Wenn es sich um localhost handelt, können Sie sich nur lokal anmelden und nicht remote.

Aus diesem Grund kann unser lokaler Navicat keine Verbindung zu MySQL herstellen.

Da es sich um eine lokale virtuelle Maschine handelt und kein Sicherheitsproblem besteht, setzt Kaka den Host auf %.

% stellt ein Platzhalterzeichen dar, was bedeutet, dass alle Verbindungen erlaubt sind und keine IP eingeschränkt ist.

Hinweis: In der Produktionsumgebung können Sie den Host nicht auf % setzen, um Probleme zu vermeiden. Die spezifischen Einstellungen können entsprechend der IP der Produktionsumgebung festgelegt werden 🎜>Das Problem wurde gefunden.

Führen Sie den Befehl aus

, ändern Sie localhost in %, erlauben Sie alle IPs verbinden.

Sie müssen die Berechtigungen hier noch aktualisierenupdate user set host='%' where user='root';flush privilegesLokales Navicta stellt erneut eine Verbindung zur Datenbank her. Das ist es an dieser Stelle.

Ungefähr wann

implementiert werden muss .

flush privilegesDieser Befehl extrahiert die Benutzerinformationen oder Berechtigungen in den Benutzer- und Berechtigungstabellen aus der MySQL-Bibliothek in den Speicher.

Wenn Benutzerdaten und Berechtigungen geändert werden und Sie direkt wirksam werden möchten, ohne die Datenbank neu zu starten, müssen Sie diesen Befehl ausführen.

Das heißt, dieser Befehl ist nur anwendbar, wenn Benutzerdaten und Benutzerberechtigungen geändert werden.

Das obige ist der detaillierte Inhalt vonEine lokal verbundene virtuelle Maschine mit MySQL-Eingabeaufforderung darf keine Verbindung herstellen. 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