351 Stimmen

Fernzugriff auf die MySQL-Datenbank von einer beliebigen IP-Adresse aus gewähren

Ich bin mir dieses Befehls bewusst:

GRANT ALL PRIVILEGES
ON database.*
TO 'user'@'yourremotehost'
IDENTIFIED BY 'newpassword';

Aber dann kann ich nur einer bestimmten IP-Adresse den Zugriff auf diese entfernte MySQL-Datenbank erlauben. Was ist, wenn ich möchte, dass jeder Remote-Host auf diese MySQL-Datenbank zugreifen kann? Wie kann ich das tun? Im Grunde mache ich diese Datenbank öffentlich, so dass jeder darauf zugreifen kann.

27voto

Dev Punkte 1098

Für alle, die damit nicht zurechtkommen, hier ist die Anleitung, wie ich die Berechtigungen erteilen konnte, ich hoffe, sie hilft jemandem

GRANT ALL ON yourdatabasename.* TO root@'%' IDENTIFIED BY
'yourRootPassword';

Wie bereits erwähnt % ist ein Platzhalter, mit dem jede IP-Adresse eine Verbindung zu Ihrer Datenbank herstellen kann. Ich gehe davon aus, dass Sie bei der Verbindung einen Benutzer namens root (was allerdings die Standardeinstellung ist). Geben Sie das Root-Passwort ein, und schon kann es losgehen. Beachten Sie, dass ich keine einfachen Anführungszeichen ( ' ) um den Benutzer Root.

24voto

Tomasz Czechowski Punkte 583

Verwenden Sie diesen Befehl:

GRANT ALL ON yourdatabasename.* TO root@'%' IDENTIFIED BY 'yourRootPassword';

Dann:

FLUSH PRIVILEGES; 

Dann kommentieren Sie die folgende Zeile in der Datei "/etc/mysql/mysql.conf.d/mysqld.cnf" aus (ist erforderlich!):

bind-address = 127.0.0.1 

Funktioniert bei mir!

17voto

akhil.o.v Punkte 179

Führen Sie das Folgende aus:

$ mysql -u root -p      
mysql> GRANT ALL ON *.* to root@'ipaddress' IDENTIFIED BY 'mysql root password';     
mysql> FLUSH PRIVILEGES;     
mysql> exit

Versuchen Sie dann, eine Verbindung von der angegebenen IP-Adresse herzustellen:

mysql -h address-of-remove-server -u root -p   

Sie sollten in der Lage sein, eine Verbindung herzustellen.

16voto

Sie können das Problem von MariaDB über dieser Befehl :

Anmerkung:

GRANT ALL ON *.* to root@'%' IDENTIFIED BY 'mysql root password';

% ist ein Platzhalter. In diesem Fall bezieht er sich auf alle IP-Adressen.

10voto

Anil Rana Punkte 304

Fernzugriff auf die Datenbank Mysql-Server 8:

CREATE USER 'root'@'%' IDENTIFIED BY 'Pswword@123';

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

FLUSH PRIVILEGES;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X