Tento článek vysvětluje, jak nastavit uživatele na vašem serveru MySQL®, aby se mohl vzdáleně připojit k databázi MySQL.
Poznámka :Tento článek ukazuje, jak se připojit k místní instanci MySQL na aserver. Odpovídající kroky pro cloudové databáze najdete v tématu Připojení k aCloud Databaseinstance.
Abyste mohli provést tyto kroky, musíte mít přístup k místnímu serveru, abyste se mohli přihlásit jako root
uživatel MySQL.
Získejte svou IP adresu
Potřebujete znát adresu internetového protokolu (IP) počítače, ze kterého se připojujete. Tyto informace můžete získat návštěvou jedné z následujících stránek:
- https://icanhazip.com
- https://www.whatismyip.com
Udělit přístup
Chcete-li uživateli udělit přístup ze vzdáleného hostitele, proveďte následující kroky:
-
Přihlaste se lokálně k serveru MySQL jako
root
uživatele pomocí následujícího příkazu:# mysql -u root -p
Budete vyzváni k zadání hesla root MySQL.
Poznámka :Pokud získáte přístup k MySQL bez zadání hesla, zvažte spuštění
mysql_secure_installation
skript, který nastavuje rootovské heslo MySQL a aktualizuje další nastavení pro zvýšení bezpečnosti. Microsoft SQL Server ManagedServices vám může pomoci se správou vašich instancí SQL serveru. -
Použijte
GRANT
příkaz v následujícím formátu pro povolení přístupu pro vzdáleného uživatele. Ujistěte se, že jste změnili1.2.3.4
na IP adresu, kterou jste získali dříve, amy_password
na heslo, které chcetefooUser
použít:mysql> GRANT ALL ON fooDatabase.* TO fooUser@'1.2.3.4' IDENTIFIED BY 'my_password';
Tento příkaz uděluje
ALL
oprávnění k novému uživateli, když se uživatel připojí ze zadané IP adresy pomocí zadaného hesla.
Otestujte připojení vzdáleně
Chcete-li připojení otestovat vzdáleně, přistupte k serveru MySQL z jiného serveru Linux®. Následující příklad používá 44.55.66.77
jako IP adresa serveru MySQL:
# 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> _
Úvahy
Při nastavování vzdáleného uživatele zvažte následující informace:
-
Místní uživatel se liší od vzdáleného uživatele. Například
fooUser@localhost
není totéž jako[email protected]
. Pokud chcete, aby měli oba uživatelé stejná oprávnění, musíte oprávnění duplikovat. -
Nedoporučujeme udělovat
ALL
oprávnění. Standardním uživatelům doporučujeme udělitGRANT SELECT,INSERT,UPDATE,DELETE
oprávnění. -
Chcete-li udělit přístup pouze ke konkrétní tabulce, můžete použít
database.table
příkaz. Například v předchozím kroku můžete použítfooDatabase.fooTable
místofooDatabase
. -
Pokud používáte iptables, musíte do pravidla brány firewall přidat položku pro port Transmission Control Protocol (TCP) 3306. Můžete použít název
mysql
pro číslo portu.