Einstellungen, die es anderen PCs erlauben, sich mit MySQL-Datenbanken zu verbinden (Windows-Version)

Diese Seite wurde aktualisiert :
Erstellungsdatum der Seite :

Betriebsumgebung

MySQL (MySQL)
  • MySQL 8.0
Fenster
  • Windows 11

Voraussetzungen

MySQL (MySQL)
  • MySQL 8.0
Fenster
  • Windows 11
  • Windows 10 (Englisch)
Windows Server
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2

Vorbedingung

  • MySQL 8 ist installiert

Überprüfen der Firewall

In MySQL wird die Firewall während der Installation auf dem folgenden Bildschirm eingestellt, sodass Sie keine zusätzlichen Einstellungen vornehmen müssen.

Überprüfen Sie vorsichtshalber Ihre Firewall-Einstellungen. Da die Bedienung bis zur Anzeige je nach Windows-Version unterschiedlich ist, geben Sie im Startmenü "Firewall" ein, um diese anzuzeigen.

Wählen Sie "Erweitert" aus dem Menü auf der linken Seite.

Wenn Sie auf der linken Seite "Eingehende Regeln" auswählen, können Sie sehen, dass "Port 3306" und "Port 33060" zur Liste hinzugefügt wurden. Dies wurde in MySQL hinzugefügt.

Überprüfen der Konfigurationsdatei

Bisher war es notwendig, die Konfigurationsdatei zu bind-address ändern, aber in der aktuellen Version ist dieses Element nicht vorhanden, sodass die Einstellung nicht geändert werden muss.

Die Konfigurationsdatei für MySQL unter Windows befindet sich an den folgenden Speicherorten: ProgramData Der Ordner ist ausgeblendet, geben Sie also den Pfad direkt in die Adressleiste des Datei-Explorers ein oder stellen Sie den versteckten Ordner so ein, dass er sichtbar ist.

C:\ProgramData\MySQL\MySQL Server 8.0\my.ini

Einstellungen für Benutzerzugriffsberechtigungen

Um sich bei einer MySQL-Datenbank anzumelden, müssen Sie einen Benutzer angeben, aber standardmäßig können alle Benutzer nur lokal darauf zugreifen. Hier legen wir also die Berechtigungen für den Benutzer fest.

Ich arbeite mit einem Konto, um dieses Mal den Schritt zum Hinzufügen des Kontos zu root speichern. Im tatsächlichen Betrieb ist es wünschenswert, ein separates Benutzerkonto zu erstellen und die Verbindung zu diesem Konto zuzulassen.

Es gibt zwei Möglichkeiten, Verbindungen zuzulassen: über einen Befehl oder über die grafische Benutzeroberfläche.

Festlegen von Benutzerzugriffsberechtigungen (GUI-Operationen)

Wählen Sie im Startmenü "MySQL -> MySQL Workbench 8.0 CE" aus, um es zu starten.

Wenn Sie es starten, befindet sich in der unteren linken Ecke eine Standardinstanz, also wählen Sie sie aus.

Sie werden nach einem Passwort gefragt, also melden Sie sich mit dem root-Konto an.

Wählen Sie im Menü "Navigator" auf der linken Seite die Registerkarte "Administration" und dann "Benutzer und Berechtigungen" aus.

Wählen Sie in der Liste das Konto aus, für das Sie die Berechtigungen ändern möchten. root In diesem Fall haben wir ein Konto ausgewählt.

Limit to Hosts Matching Ich denke, dass es ein Element gibt und es standardmäßig auf localhost eingestellt ist. Das bedeutet, dass nur von localhost aus darauf zugegriffen werden kann. Legen Sie diesen Wert auf die IP-Adressen der PCs fest, zu denen Sie Verbindungen zulassen möchten. Wenn Sie normal eingeben, wird nur eine Einheit als Ziel verwendet, aber wenn Sie einen Bereich auswählen möchten, können Sie den Platzhalter "%" verwenden, wenn Sie also "192.168.0.%" angeben, lassen Sie "192.168.0.0" ~ "192.168.0.255" zu.

Einmal eingegeben, können Sie es anwenden, indem Sie unten rechts auf die Schaltfläche "Übernehmen" klicken.

Sie können sehen, dass sich auch die Benutzerliste geändert hat.

Festlegen von Benutzerzugriffsberechtigungen (Befehle)

Ergänzung
Es handelt sich nicht um endgültige Informationen, da sie sich im Rahmen der Forschung befinden, aber in MySQL 8 ist es nicht möglich, den Berechtigungshost mit einem Befehl zu ändern, nachdem der Benutzer erstellt wurde, daher ist es notwendig, den Host zum Zeitpunkt der Benutzererstellung zu bestätigen.

Wählen Sie im Startmenü "MySQL -> MySQL 8.0 Command Line Client" aus und führen Sie es aus.

Sie werden zur Eingabe eines Passworts aufgefordert, geben Sie also das Root-Passwort ein.

Sie können die Liste der Benutzer und Hosts durchsuchen, indem Sie den folgenden Befehl eingeben:

select user,host from mysql.user;

Um einen Benutzer zu erstellen, geben Sie den folgenden Befehl ein: Geben Sie die IP-Adresse des PCs, mit dem Sie sich extern verbinden möchten, in den "Permission Host" ein. Da der Platzhalter "%" verwendet werden kann, geben Sie "%" ein, um den Zugriff von allen zuzulassen, und "192.168.0.0" ~ "192.168.0.255", um "192.168.0.%" zuzulassen. Wenn Sie "%" einschließen möchten, schließen Sie es in einfache Anführungszeichen ein.

create user <ユーザー名>@<アクセス許可ホスト> identified by '<パスワード>';

Beispiel-Eingabe

create user user1@'192.168.0.%' identified by 'xxxxxxxx';

Ich konnte mit dem obigen Befehl einen Benutzer erstellen, aber ich habe keine Zugriffsrechte, also füge ich Berechtigungen mit dem folgenden Befehl hinzu.

Zu den Arten von Berechtigungen gehören "ALL [PRIVILEGES]", "CREATE (Berechtigung zum Erstellen von Datenbanken, Tabellen usw.)" und "SELECT (Tabellendatensätze durchsuchen)". Bitte informieren Sie sich auf der offiziellen Website über den Inhalt der Berechtigungen.

Die festzulegenden Berechtigungen können pro Datenbank oder pro Tabelle angegeben werden. Wenn Sie "*.*" eingeben, können Sie Zugriffsberechtigungen für alle Datenbanken und Tabellen festlegen.

grant <権限の種類> on <データベース名>.<テーブル名> to <ユーザー名>@<アクセス許可ホスト>;

Beispiel-Eingabe

grant all privileges on *.* to user1@'192.168.0.%';

Um die Einstellungen widerzuspiegeln, geben Sie den folgenden Befehl ein:

flush privileges;

Wenn Sie die Benutzerliste erneut überprüfen, können Sie bestätigen, dass sie erstellt und konfiguriert wurde.

Überprüfung der Verbindung

Jedes Tool, das von außen verbunden werden kann, ist in Ordnung, aber dieses Mal werden wir versuchen, uns mit Workbench, dem offiziellen Client von MySQL, zu verbinden.

Starten Sie Workbench, wenn Sie es auf einem anderen PC installiert haben.

Fügen Sie eine MySQL-Verbindung hinzu.

Geben Sie die Einstellungen ein, die für die Verbindung erforderlich sind. Sie können einen DNS-Namen verwenden, aber aus irgendeinem Grund konnte ich keine Verbindung zu Workbench herstellen, also habe ich ihn über die IP-Adresse angegeben.

Wenn die Verbindung überprüft wird und erfolgreich ist, kann davon ausgegangen werden, dass die Einstellung normal ist.