Heim > Datenbank > MySQL-Tutorial > So ändern Sie den Host in MySQL

So ändern Sie den Host in MySQL

藏色散人
Freigeben: 2023-02-15 10:17:37
Original
4642 Leute haben es durchsucht

So ändern Sie den Host in MySQL: 1. Stoppen Sie den MySQL-Dienst über „sudo service mysql stop“; 2. Starten Sie MySQL im abgesicherten Modus und setzen Sie dann das Root-Passwort zurück. 3. Über „update user set Host='%; ' where User ='hive';"-Anweisung kann den Host ändern.

So ändern Sie den Host in MySQL

Die Betriebsumgebung dieses Tutorials: Windows 10-System, MySQL Version 5.7, Dell G3-Computer.

Wie ändere ich den Host in MySQL?

Ändern Sie schnell das Hostattribut des MySQL-Benutzers:

Wenn Sie sich remote bei MySQL anmelden, muss das von Ihnen verwendete Konto besondere Anforderungen haben.

Das Standard-Hostattribut des Kontos ist localhost, was bedeutet, dass dieses Konto nur lokal verwendet werden kann. Wenn Sie ein Konto für die Remote-Anmeldung verwenden möchten, müssen Sie den Hostattributwert des Kontos in % ändern.

Die ausgeführte SQL-Anweisung lautet wie folgt:

update user set host = '%' where user = 'root';
Nach dem Login kopieren

Zusätzlich: MySQL ändert das Root-Passwort, ändert das Konto, meldet sich beim Host an

1. Ich habe das Root-Passwort vergessen

Der Remote-Server verfügt über ein MySQL Dienst, und es gibt ein Hive-Konto darin. Der Remote-Server kann über die Befehlszeile mit mysql -hlocalhost -uxxx -pxxx angemeldet werden, aber mit dem Navicat-Client kann ich mich nicht anmelden und Navicat zeigt immer noch die IP-Adresse von an meine eigene Maschine.

Erste Vermutung ist, dass das Passwort von Konto A in MySQL nicht richtig gesetzt ist. Sie müssen also das Root-Konto verwenden, um das Hive-Konto zurückzusetzen.

Der Trick ist, dass MySQL nicht von mir erstellt wurde. Und in der Testumgebung weiß ich nicht, wen ich nach dem Passwort fragen soll. Dann nutzen Sie die ultimative Waffe: Ändern Sie das Root-Passwort.

2.MySQL-Root-Passwort zurücksetzen.

Als Erstes ist zu beachten: Das Root-Konto von MySQL und das Root-Konto des Servers sind nicht dasselbe Konzept, also verwechseln Sie sie nicht.

Beenden Sie zunächst den MySQL-Dienst:

sudo service mysql stop
Nach dem Login kopieren

Wenn Sie ein Root-Konto des Servers haben, ist sudo natürlich nicht erforderlich. Das Gleiche gilt für alle folgenden Vorgänge. Der obige Befehl funktioniert unter Ubuntu und Debian. Verwenden Sie mysqld, um MySQL unter CentOS, Fedora und RHEL zu ersetzen. Das Gleiche gilt für alle unten aufgeführten Vorgänge.

Dann starten Sie MySQL im abgesicherten Modus:

sudo mysqld_safe --skip-grant-tables --skip-networking &
Nach dem Login kopieren

Auf diese Weise können wir uns direkt mit Root ohne Passwort anmelden:

mysql -u root
Nach dem Login kopieren

Auf diese Weise melden wir uns mit dem Root-Konto bei MySQL an.

Dann können Sie das Root-Passwort zurücksetzen:

mysql> use mysql; 
mysql> update user set password=PASSWORD("mynewpassword") where User='root'; 
mysql> flush privileges;
Nach dem Login kopieren

Nachdem das Zurücksetzen abgeschlossen ist, beenden Sie MySQL. Starten Sie dann den MySQL-Dienst:

sudo service mysql restart
Nach dem Login kopieren

Als nächstes melden Sie sich mit dem Root-Konto an:

mysql -u root -pmynewpassword
Nach dem Login kopieren

3. Ändern Sie die relevanten Berechtigungen des A-Kontos

Nachdem Sie sich mit dem Root-Konto bei MySQL angemeldet haben, nehmen wir einen Schauen Sie sich das A-Konto an Verwandte Informationen:

mysql> use mysql;
Database changed
mysql> select User, Host from user where User='hive';
+------+--------------+
| User | Host     |
+------+--------------+
| hive | 127.0.0.1  |
+------+--------------+
Nach dem Login kopieren

Sie werden es jetzt verstehen. Kein Wunder, dass der Navicat-Client nicht angemeldet werden kann. Der Host des Hive-Kontos ist nur 127.0.0.1, daher können Sie sich natürlich nur auf diesem Computer anmelden.

mysql> update user set Host='%' where User='hive';
Nach dem Login kopieren

Stellen Sie das Hive-Konto so ein, dass sich alle Computer anmelden können, und aktualisieren Sie dann die Berechtigungen:

mysql> flush privileges;
Nach dem Login kopieren

Überprüfen Sie es erneut:

mysql> select User, Host from user where User='hive';
+------+------+
| User | Host |
+------+------+
| hive | %  |
+------+------+
Nach dem Login kopieren

So weit sind Sie fertig!

Das Obige ist meine persönliche Erfahrung, ich hoffe, es kann jedem eine Referenz geben. Wenn es Fehler oder unvollständige Überlegungen gibt, können Sie mich gerne aufklären.

Empfohlenes Lernen: „MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonSo ändern Sie den Host in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage