Verschiedene Möglichkeiten zum Verbinden eines Remote-MySQL-Servers mit Ubuntu

Mehvish Ashiq 15 Februar 2024
  1. Verschiedene Möglichkeiten zum Verbinden eines Remote-MySQL-Servers mit Ubuntu
  2. Stellen Sie zur Datenmanipulation eine Verbindung vom Ubuntu 20.04-Clientcomputer zum Ubuntu 20.04-Servercomputer her
  3. Stellen Sie eine Verbindung vom Ubuntu 20.04-Clientcomputer zum Ubuntu 20.04-Servercomputer her, um den Server zu starten, zu stoppen und neu zu starten
Verschiedene Möglichkeiten zum Verbinden eines Remote-MySQL-Servers mit Ubuntu

Heute lernen wir, wie man mit Ubuntu eine Verbindung zu einem Remote-MySQL-Server herstellt, um Daten zu manipulieren und den MySQL-Server zu starten und zu stoppen.

Verschiedene Möglichkeiten zum Verbinden eines Remote-MySQL-Servers mit Ubuntu

  1. Vom Ubuntu 20.04-Clientcomputer zum Ubuntu 20.04-Servercomputer für die Datenbearbeitung
  2. Von Ubuntu 20.04-Clientmaschine zu Ubuntu 20.04-Servermaschine, um MySQL Server zu stoppen/starten

Stellen Sie zur Datenmanipulation eine Verbindung vom Ubuntu 20.04-Clientcomputer zum Ubuntu 20.04-Servercomputer her

Verbinden Sie sich mit einem benutzerdefinierten Benutzer

Hier erfahren Sie, wie Sie einen benutzerdefinierten Benutzer verbinden, der sich auf einem Remote-MySQL-Server befindet. Wir haben einen Benutzer namens mehvish auf dem Remote-MySQL-Server erstellt und ihm alle Privilegien gewährt.

mysql> CREATE USER "mehvish"@"%" IDENTIFIED BY "PASSWORD";
#here % sign shows that this user can be connected remotely

Um eine Verbindung zu einem entfernten MySQL-Server herzustellen, muss auf unserem Rechner ein mysql-client installiert sein. Bei Microsoft Windows 10 wird der mysql-client bei der Installation des MySQL-Servers automatisch mitinstalliert.

Sie können diesem Artikel für die MySQL-Installation auf dem Client-Rechner folgen.

Um eine Remote-Verbindung herzustellen, benötigen wir die IP-Adresse eines Hostcomputers, auf dem der MySQL-Server gehostet wird, den Benutzernamen und das Passwort dieses bestimmten Benutzerkontos. Um diese IP-Adresse abzurufen, verwenden wir den Befehl ip a oder ifconfig auf Ubuntu, wo sich der MySQL-Server befindet.

Sobald wir die IP-Adresse, den Benutzernamen und das Passwort kennen, können wir den folgenden Befehl verwenden, um eine Verbindung zu einem Remote-MySQL-Server herzustellen.

# Syntax
# mysql -h hostIP -u username -p password
$ mysql -h 192.168.56.102 -u mehvish -p ******

Sie erhalten höchstwahrscheinlich die folgende Fehlermeldung, wenn Sie zum ersten Mal versuchen, eine Remote-Verbindung herzustellen.

ERROR 2003 (HY000): Can't connect to MySQL server on '10.0.2.15:3306' (10060)

Um diesen Fehler zu beseitigen, müssen wir die Konfigurationsdatei auf dem MySQL-Server ändern. Wir verwenden den vim Texteditor, um die Konfigurationsdatei zu bearbeiten, aber Sie können jede Ihrer Wahlen verwenden.

$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

Suchen Sie nach dem Öffnen der Datei die Bind-Adresse im Abschnitt [mysqld] und kommentieren Sie diese wie im folgenden Screenshot angegeben. Warum kommentieren wir die Option bind-address?

Der MySQL-Server lässt aufgrund seines Standardverhaltens keine Remote-Verbindungen zu; es lässt nur den localhost mit dem MySQL-Server verbinden. Kommentieren Sie deshalb die Bind-Adresse und erlauben Sie einem entfernten Client-Rechner, eine Verbindung mit dem MySQL-Server herzustellen.

Alternativ können wir Folgendes tun, anstatt die bind_address zu kommentieren.

  1. Wir können den Wert von bind-address von 127.0.0.1 auf 0.0.0.0 ändern.
  2. Wenn es keine bind-address-Option gibt, können wir skip-networking und skip-bind-address schreiben.

Verschiedene Möglichkeiten zum Verbinden eines Remote-Mysql-Servers mit Ubuntu-Kommentar-Bind-Adresse auf Ubuntu

Wir können die folgenden Optionen verwenden, um die Konfigurationsdatei mit dem Texteditor vim zu bearbeiten und zu speichern.

  1. Drücken Sie I, um die Datei zu bearbeiten.
  2. Drücken Sie Esc, um den Bearbeitungsmodus zu verlassen.
  3. Drücken Sie Esc, geben Sie :w ein und drücken Sie Enter, um die Datei zu speichern.
  4. Drücken Sie Esc, geben Sie :q ein und drücken Sie Enter, um die Datei zu verlassen.
  5. Drücken Sie Esc, geben Sie :wq ein und drücken Sie Enter, um die Datei in einem Schritt zu speichern und zu beenden.
  6. Drücken Sie Esc, geben Sie :q! ein und drücken Sie Enter, um die Datei zu verlassen und alle Änderungen zu verwerfen.

Wir müssen den Dienst auf der Maschine, auf der der MySQL-Server gehostet wird, wie folgt neu starten.

$ sudo systemctl restart mysql

Verwenden Sie nun den folgenden Befehl erneut, um sich erfolgreich mit dem Benutzerkonto mehvish zu verbinden, das sich auf dem Remote-MySQL-Server befindet. Denken Sie daran, dass wir die folgende Abfrage auf unserem lokalen Computer verwenden.

$ mysql -h 192.168.56.102 -u mehvish -p ******

Verbinden Sie sich mit einem root-Benutzer

Bevor wir in die Details eintauchen, prüfen wir, ob der Benutzer root die Remote-Verbindungen akzeptiert. Wir können den folgenden Befehl auf Ubuntu verwenden, wo unser MySQL-Server gehostet wird.

mysql> SELECT USER, HOST from mysql.user;

Ausgang:

Verschiedene Möglichkeiten zum Verbinden eines Remote-Mysql-Servers mit Ubuntu - Benutzerhost auf Ubuntu

Haben Sie gesehen, dass der Benutzer root nur von localhost aus verbunden werden kann? Wir müssen den Fernzugriff gewähren, indem wir die folgenden Befehle verwenden, um eine Fernverbindung herzustellen.

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost';
mysql> UPDATE mysql.user SET host='%' WHERE user='root';

Starten Sie außerdem den MySQL-Server mit dem folgenden Befehl neu.

$ sudo systemctl restart mysql

Überprüfen Sie nun, ob der Benutzer root die Remote-Verbindungen akzeptiert oder nicht. Sehen Sie, der Host des Benutzers root auf dem Servercomputer ist %, was zeigt, dass wir eine Remoteverbindung zum Root-Konto herstellen können.

Verschiedene Möglichkeiten, einen Remote-Mysql-Server mit Ubuntu zu verbinden - Root mit Remote-Zugriff auf Ubuntu

Jetzt können wir den root-Benutzer von unserem lokalen Rechner verbinden, indem wir die folgende Abfrage verwenden, um Daten zu lesen/schreiben.

$ mysql -h 192.168.56.102 -u root -p ******

Was ist, wenn wir den MySQL-Server starten, stoppen und neu starten möchten? Dazu müssen wir uns in der Shell des MySQL-Servers befinden, was bedeutet, dass wir uns so verbinden müssen, dass die Shell des Servers auf unserem Computer geöffnet wird.

Wie können wir das machen? Sehen wir uns das folgende Kapitel an.

Stellen Sie eine Verbindung vom Ubuntu 20.04-Clientcomputer zum Ubuntu 20.04-Servercomputer her, um den Server zu starten, zu stoppen und neu zu starten

Wir müssen die angegebenen Schritte befolgen, um einen Remote-Server über eine sichere Shell (auch Secure Socket Shell genannt) zu verbinden.

  1. Installieren Sie ssh, um den Shell-Zugriff auf den MySQL-Server zu erhalten, der auf der Ubuntu-Maschine gehostet wird.

  2. Jetzt konfiguriere das ssh. Öffnen Sie dann das Terminal auf Ihrem Hostcomputer (lokaler Computer) und geben Sie die richtigen Anmeldeinformationen ein, um eine Verbindung zum Remoteserver herzustellen.

    Abhängig von Ihrer Situation können Sie eine der folgenden Optionen verwenden.

    2.1. Verwenden Sie den Befehl ssh remote_host. Es ist am einfachsten und wird verwendet, wenn wir auf den Remote- und lokalen Computern denselben Benutzernamen haben.
    2.2. Verwenden Sie ssh remote_username@remote_host, wenn der Benutzername auf einem entfernten Computer anders ist als auf dem lokalen Computer. Dadurch erhalten Sie Zugriff auf die Shell des Servercomputers.

  3. Wir können die folgenden Befehle verwenden, um gemäß den Anforderungen zu funktionieren.

MySQL-Server starten:

$ sudo systemctl start mysql

Beenden Sie den MySQL-Server:

$ sudo systemctl stop mysql

MySQL-Server neu starten:

$ sudo systemctl restart mysql

Überprüfen Sie den Status des MySQL-Servers:

$ sudo systemctl status mysql

Denken Sie daran, dass der MySQL-Server auf Ihrer Seite mysqld heißt, dann müssen Sie möglicherweise den folgenden Befehl verwenden.

$ sudo /etc/init.d/mysql restart
Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook

Verwandter Artikel - MySQL Linux