Dieser Artikel erläutert, wie Sie einen Benutzer auf Ihrem MySQL®-Server einrichten, um sich remote mit einer MySQL-Datenbank zu verbinden.
Hinweis :Der Artikel zeigt Ihnen, wie Sie sich mit einer MySQL-Instanz lokal auf einem Server verbinden. Die entsprechenden Schritte für Cloud-Datenbanken finden Sie unter Verbinden mit einer Cloud-Datenbankinstanz.
Um diese Schritte auszuführen, müssen Sie Zugriff auf den lokalen Server haben, um sich als root
anzumelden MySQL-Benutzer.
Ihre IP-Adresse abrufen
Sie müssen die Internet Protocol (IP)-Adresse des Computers kennen, von dem aus Sie sich verbinden. Sie können diese Informationen abrufen, indem Sie eine der folgenden Websites besuchen:
- https://icanhazip.com
- https://www.whatismyip.com
Zugriff gewähren
Führen Sie die folgenden Schritte aus, um einem Benutzer Zugriff von einem Remote-Host zu gewähren:
-
Melden Sie sich lokal als
root
bei Ihrem MySQL-Server an Benutzer mit dem folgenden Befehl:# mysql -u root -p
Sie werden nach Ihrem MySQL-Root-Passwort gefragt.
Hinweis :Wenn Sie Zugang zu MySQL erhalten, ohne ein Passwort einzugeben, sollten Sie die
mysql_secure_installation
ausführen -Skript, das ein MySQL-Root-Passwort festlegt und andere Einstellungen aktualisiert, um die Sicherheit zu erhöhen. Microsoft SQL Server ManagedServices kann Ihnen bei der Verwaltung Ihrer SQL Server-Instanzen helfen. -
Verwenden Sie einen
GRANT
Befehl im folgenden Format, um den Zugriff für Remote-Benutzer zu ermöglichen. Stellen Sie sicher, dass Sie1.2.3.4
ändern an die IP-Adresse, die Sie zuvor erhalten haben, undmy_password
zu dem Passwort, das Sie wollenfooUser
zu verwenden:mysql> GRANT ALL ON fooDatabase.* TO fooUser@'1.2.3.4' IDENTIFIED BY 'my_password';
Diese Anweisung gewährt
ALL
Berechtigungen für den neuen Benutzer, wenn der Benutzer sich von der angegebenen IP-Adresse unter Verwendung des angegebenen Kennworts verbindet.
Testen Sie die Verbindung aus der Ferne
Um die Verbindung aus der Ferne zu testen, greifen Sie von einem anderen Linux®-Server auf den MySQL-Server zu. Das folgende Beispiel verwendet 44.55.66.77
als IP-Adresse des MySQL-Servers:
# mysql -u fooUser -p -h 44.55.66.77
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 17
Server version: 5.0.45 Source distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> _
Überlegungen
Beachten Sie beim Einrichten eines Remote-Benutzers die folgenden Informationen:
-
Ein lokaler Benutzer unterscheidet sich von einem entfernten Benutzer. Beispiel:
fooUser@localhost
ist nicht dasselbe wie[email protected]
. Wenn Sie möchten, dass beide Benutzer die gleichen Berechtigungen haben, müssen Sie die Berechtigungen duplizieren. -
Wir empfehlen nicht,
ALL
zu gewähren Berechtigungen. Für Standardbenutzer empfehlen wir,GRANT SELECT,INSERT,UPDATE,DELETE
zu gewähren Berechtigungen. -
Um nur Zugriff auf eine bestimmte Tabelle zu gewähren, können Sie die
database.table
verwenden Befehl. Im vorherigen Schritt könnten Sie beispielsweisefooDatabase.fooTable
verwenden stattfooDatabase
. -
Wenn Sie iptables verwenden, müssen Sie Ihrer Firewall-Regel einen Eintrag für Port 3306 des Transmission Control Protocol (TCP) hinzufügen. Sie können den Namen
mysql
verwenden für die Portnummer.