Indstillinger, der tillader andre pc'er at oprette forbindelse til MySQL-databaser (Windows-version)

Side opdateret :
Dato for oprettelse af side :

Driftsmiljø

MySQL
  • MySQL 8,0
Windows
  • Windows 11

Forudsætninger

MySQL
  • MySQL 8,0
Windows
  • Windows 11
  • Windows 10
Windows Server
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012 R2

forudsætning

  • MySQL 8 er installeret

Kontrol af firewallen

I MySQL er firewallen indstillet på følgende skærm under installationen, så du behøver ikke konfigurere yderligere indstillinger.

Tjek dine firewallindstillinger for en sikkerheds skyld. Da operationen indtil visning varierer afhængigt af versionen af Windows, skal du indtaste "firewall" i startmenuen for at få den vist.

Vælg "Avanceret" i menuen til venstre.

Hvis du vælger "Indgående regler" fra venstre, kan du se, at "Port 3306" og "Port 33060" er blevet tilføjet til listen. Dette er hvad der blev tilføjet i MySQL.

Kontrol af konfigurationsfilen

Tidligere var det nødvendigt at bind-address skifte fra konfigurationsfilen, men i den aktuelle version findes dette element ikke, så der er ikke behov for at ændre indstillingen.

Konfigurationsfilen til MySQL på Windows findes på følgende placeringer: ProgramData Mappen er skjult, så indtast stien direkte i adresselinjen i File Explorer, eller indstil den skjulte mappe til at være synlig.

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

Indstillinger for brugeradgangstilladelse

For at logge ind på en MySQL-database skal du angive en bruger, men som standard kan alle brugere kun få adgang til den lokalt. Så her indstiller vi tilladelser til brugeren.

Jeg bruger en konto til at root gemme kontotilføjelsestrinnet denne gang. I faktisk drift er det ønskeligt at oprette en separat brugerkonto og tillade forbindelse til denne konto.

Der er to måder at tillade forbindelser på: ved hjælp af en kommando eller ved hjælp af GUI.

Indstilling af brugeradgangsprivilegier (GUI-operationer)

Fra Start-menuen skal du vælge "MySQL -> MySQL Workbench 8.0 CE" for at starte den.

Når du starter det, er der en standardforekomst i nederste venstre hjørne, så vælg den.

Du bliver bedt om en adgangskode, så log ind med root-kontoen.

Vælg fanen Administration i menuen Navigator til venstre, og vælg Brugere og privilegier.

Vælg den konto, du vil ændre tilladelser for, på listen. root I dette tilfælde har vi valgt en konto.

Limit to Hosts Matching Jeg tror, at der er et element, og det er indstillet til localhost som standard. Det betyder, at det kun kan tilgås fra localhost. Angiv denne værdi til IP-adresserne på de pc'er, du vil tillade forbindelser til. Hvis du indtaster normalt, målrettes kun en enhed, men hvis du vil vælge et interval, kan du bruge jokertegnet "%", så hvis du angiver "192.168.0.%", tillader du "192.168.0.0" ~ "192.168.0.255".

Når du er indtastet, kan du anvende det ved at klikke på knappen "Anvend" nederst til højre.

Du kan se, at brugerlisten også er ændret.

Indstilling af brugeradgangsprivilegier (kommandoer)

supplement
Det er ikke endelige oplysninger, fordi det er inden for rammerne af forskning, men i MySQL 8 er det ikke muligt at ændre tilladelsesværten med en kommando, efter at brugeren er oprettet, så det er nødvendigt at bekræfte værten på tidspunktet for brugeroprettelsen.

Fra Start-menuen skal du vælge "MySQL -> MySQL 8.0 Command Line Client" og køre den.

Du bliver bedt om en adgangskode, så indtast root-adgangskoden.

Du kan gennemse listen over brugere og værter ved at indtaste følgende kommando:

select user,host from mysql.user;

For at oprette en bruger skal du indtaste følgende kommando: Indtast IP-adressen på den pc, du vil oprette forbindelse til eksternt til "Tilladelsesvært". Da jokertegnet "%" kan bruges, skal du indtaste "%" for at tillade adgang fra alle og "192.168.0.0" ~ "192.168.0.255" for at tillade "192.168.0.%". Hvis du vil medtage "%", skal du sætte det i enkelte anførselstegn.

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

Eksempel på input

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

Jeg var i stand til at oprette en bruger med ovenstående kommando, men jeg har ingen adgangsrettigheder, så jeg tilføjer tilladelser med følgende kommando.

Typerne af rettigheder omfatter "ALLE [PRIVILEGIER]", "OPRET (tilladelse til at oprette databaser, tabeller osv.)" og "SELECT (gennemse tabelposter)". Tjek venligst den officielle hjemmeside for indholdet af tilladelserne.

Tilladelser, der skal angives, kan angives pr. database eller pr. tabel. Hvis du indtaster "*.*", kan du angive adgangstilladelser for alle databaser og tabeller.

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

Eksempel på input

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

For at afspejle indstillingerne skal du indtaste følgende kommando:

flush privileges;

Hvis du tjekker brugerlisten igen, kan du bekræfte, at den er oprettet og konfigureret.

Kontrol af forbindelse

Ethvert værktøj, der kan tilsluttes udefra, er fint, men denne gang vil vi forsøge at oprette forbindelse til Workbench, MySQLs officielle klient.

Start Workbench, hvis du har det installeret på en anden pc.

Tilføj en MySQL-forbindelse.

Indtast de indstillinger, der kræves for forbindelsen. Du kan bruge et DNS-navn, men af en eller anden grund kunne jeg ikke oprette forbindelse til Workbench, så jeg specificerede det efter IP-adresse.

Hvis forbindelsen er kontrolleret og vellykket, kan det bedømmes, at indstillingen er normal.