Nastavení umožňující ostatním počítačům připojit se k databázím MySQL (verze pro Windows)
Provozní prostředí
- MySQL
-
- MySQL 8.0
- Windows
-
- Systém Windows 11
Požadavky
- MySQL
-
- MySQL 8.0
- Windows
-
- Systém Windows 11
- Windows 10
- Windows Server
-
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows Server 2012 R2
předpoklad
- MySQL 8 je nainstalován
Kontrola brány firewall
V MySQL je firewall nastaven na následující obrazovce během instalace, takže nemusíte konfigurovat žádná další nastavení.
Pro jistotu zkontrolujte nastavení brány firewall. Vzhledem k tomu, že operace do zobrazení se liší v závislosti na verzi systému Windows, zadejte do nabídky Start "firewall" pro jeho zobrazení.
Z nabídky vlevo vyberte "Pokročilé".
Pokud zleva vyberete "Příchozí pravidla", uvidíte, že do seznamu byly přidány "Port 3306" a "Port 33060". To je to, co bylo přidáno do MySQL.
Kontrola konfiguračního souboru
Dříve bylo nutné bind-address
změnit z konfiguračního souboru, ale v aktuální verzi tato položka neexistuje, takže není potřeba měnit nastavení.
Konfigurační soubor pro MySQL ve Windows najdete v následujících umístěních:
ProgramData
Složka je skrytá, proto zadejte cestu přímo do adresního řádku Průzkumníka souborů nebo nastavte skrytou složku tak, aby byla viditelná.
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
Nastavení přístupových oprávnění uživatelů
Chcete-li se přihlásit k databázi MySQL, musíte zadat uživatele, ale ve výchozím nastavení k ní mají všichni uživatelé přístup pouze lokálně. Zde tedy nastavíme oprávnění pro uživatele.
Tentokrát pracuji na účtu, abych root
uložil krok přidání účtu.
V reálném provozu je žádoucí vytvořit samostatný uživatelský účet a povolit připojení k tomuto účtu.
Existují dva způsoby, jak povolit připojení: pomocí příkazu nebo pomocí grafického uživatelského rozhraní.
Nastavení přístupových oprávnění uživatelů (operace GUI)
V nabídce Start vyberte "MySQL -> MySQL Workbench 8.0 CE" a spusťte ji.
Když jej spustíte, v levém dolním rohu je výchozí instance, takže ji vyberte.
Budete požádáni o heslo, proto se přihlaste pomocí účtu root.
Vyberte kartu Správa z nabídky Navigátor vlevo a vyberte Uživatelé a oprávnění.
V seznamu vyberte účet, pro který chcete změnit oprávnění. root
V tomto případě jsme vybrali účet.
Limit to Hosts Matching
Myslím, že existuje položka a je nastavena na výchozí nastavení localhost
. To znamená, že k němu lze přistupovat pouze z localhost.
Nastavte tuto hodnotu na IP adresy počítačů, ke kterým chcete povolit připojení.
Pokud zadáte normálně, bude cílit pouze na jednu jednotku, ale pokud chcete vybrat rozsah, můžete použít zástupný znak "%", takže pokud zadáte "192.168.0.%", povolíte "192.168.0.0" ~ "192.168.0.255".
Po zadání jej můžete použít kliknutím na tlačítko "Použít" vpravo dole.
Můžete vidět, že se změnil i seznam uživatelů.
Nastavení přístupových oprávnění uživatelů (příkazů)
- doplněk
- Nejedná se o definitivní informaci, protože je v rozsahu výzkumu, ale v MySQL 8 není možné změnit hostitele oprávnění příkazem po vytvoření uživatele, takže je nutné hostitele potvrdit v době vytvoření uživatele.
V nabídce Start vyberte "MySQL -> MySQL 8.0 Command Line Client" a spusťte jej.
Budete vyzváni k zadání hesla, proto zadejte heslo uživatele root.
Seznam uživatelů a hostitelů můžete procházet zadáním následujícího příkazu:
select user,host from mysql.user;
Chcete-li vytvořit uživatele, zadejte následující příkaz: Zadejte IP adresu počítače, ke kterému se chcete externě připojit k "Permission Host". Vzhledem k tomu, že lze použít zástupný znak "%", zadejte "%" pro povolení přístupu ze všech a "192.168.0.0" ~ "192.168.0.255" pro povolení "192.168.0.%". Pokud chcete zahrnout "%", uzavřete ho do jednoduchých uvozovek.
create user <ユーザー名>@<アクセス許可ホスト> identified by '<パスワード>';
Příklad vstupu
create user user1@'192.168.0.%' identified by 'xxxxxxxx';
Podařilo se mi vytvořit uživatele pomocí výše uvedeného příkazu, ale nemám žádná přístupová oprávnění, takže přidávám oprávnění pomocí následujícího příkazu.
Mezi typy oprávnění patří "VŠECHNA [PRÁVA]", "VYTVOŘIT (oprávnění vytvářet databáze, tabulky atd.)" a "SELECT (procházet záznamy tabulky)". Podívejte se prosím na oficiální webové stránky pro obsah oprávnění.
Oprávnění, která se mají nastavit, je možné zadat pro jednotlivé databáze nebo tabulky. Zadáte-li "*.*", můžete nastavit přístupová oprávnění pro všechny databáze a tabulky.
grant <権限の種類> on <データベース名>.<テーブル名> to <ユーザー名>@<アクセス許可ホスト>;
Příklad vstupu
grant all privileges on *.* to user1@'192.168.0.%';
Chcete-li nastavení odrážet, zadejte následující příkaz:
flush privileges;
Pokud znovu zkontrolujete seznam uživatelů, můžete potvrdit, že byl vytvořen a nakonfigurován.
Kontrola připojení
Jakýkoli nástroj, který lze připojit zvenčí, je v pořádku, ale tentokrát se pokusíme spojit s Workbench, oficiálním klientem MySQL.
Spusťte Workbench, pokud jej máte nainstalovaný na jiném počítači.
Přidejte připojení MySQL.
Zadejte nastavení vyžadovaná pro připojení. Můžete použít DNS jméno, ale z nějakého důvodu jsem se nemohl připojit k Workbenchi, tak jsem to zadal IP adresou.
Pokud je připojení zkontrolováno a úspěšné, lze usoudit, že nastavení je normální.