Úvod
Jedna z prvních věcí, na kterou budete muset myslet při práci s databází MySQL, je způsob připojení a interakce s instancí databáze. To vyžaduje koordinaci mezi databázovým klientem – komponentou, kterou používáte k interakci s databází, a databázovým serverem – skutečnou instancí MySQL, která ukládá, organizuje a poskytuje přístup k vašim datům.
Z tohoto důvodu musíte pochopit, jak se připojit jako klient poskytnutím požadovaných informací k ověření. V této příručce se budeme zabývat tím, jak se připojit k databázi MySQL pomocí nativního mysql
klient příkazového řádku – jeden z nejběžnějších a nejužitečnějších způsobů interakce s instancí databáze.
V doprovodné příručce můžete zjistit, jak nakonfigurovat autentizaci MySQL, aby vyhovovala potřebám vašeho projektu. Zvažte přečtení obou příruček, abyste získali úplnější obrázek o tom, jak autentizace v MySQL funguje.
Základní informace o mysql
klient
mysql
klient je výchozí klient příkazového řádku a SQL shell pro MySQL. Můžete jej použít interaktivně k vytvoření shellové relace se serverem nebo jej můžete napájet soubory SQL, které se spouští bez interakce uživatele. Je to užitečné zejména při implementaci možností konfigurace a nastavení vašeho prostředí. Interaktivní průzkum a ad-hoc dotazy jsou také silnou stránkou při vývoji přístupových vzorů, které budou vaše programy používat.
Způsob připojení a ověření pomocí serveru MySQL závisí na konfiguraci vašeho serveru. V následujících částech si projdeme některé základní možnosti připojení. V zájmu přehlednosti budeme rozlišovat mezi místním a vzdáleným připojením:
- místní připojení :připojení, kde se klient a instance MySQL nacházejí na stejném serveru
- vzdálené připojení :kde se klient připojuje k síťové instanci MySQL běžící na jiném počítači
Začněme připojením k databázi ze stejného počítače.
Připojení k místní databázi pomocí mysql
Bez jakýchkoli argumentů, mysql
příkaz se pokusí připojit k souboru soketu Unix za účelem přístupu k místní databázi. Obvykle je výchozí umístění souboru soketu určeno buď konfiguračním souborem, nebo zkompilovanou výchozí hodnotou. Ve výchozím nastavení se k pokusu o připojení k databázi používá uživatelské jméno vašeho operačního systému.
Pokud je tedy váš aktuální uživatel platným uživatelem MySQL ve vaší lokální databázi, můžete se zkusit připojit zadáním:
mysql
Pokud účet existuje a nevyžaduje heslo nebo je pro účet nakonfigurována autentizace soketu MySQL, budete přihlášeni automaticky. Pokud uživatelské jméno v MySQL neexistuje nebo pokud je vyžadováno heslo nebo další ověření, příkaz selže.
Chcete-li ovládat způsob, jakým mysql
pokusí se přihlásit do databáze, předat další informace pomocí příkazu pomocí voleb příkazového řádku:
--user=<username>
nebo-u <username>
:určuje uživatele MySQL, u kterého se má autentizovat.--password
nebo-p
:říká MySQL, aby požádala uživatele MySQL o heslo.--host=127.0.0.1
nebo-h 127.0.0.1
:říkámysql
pro připojení k místní instanci MySQL pomocí místní adresy zpětné smyčky TCP namísto soketu Unix. Toto je důležité použít, pokud váš server MySQL není nakonfigurován pro použití soketů Unix.
Poznámka: MySQL interpretuje 127.0.0.1
jinak než localhost
. Zadání 127.0.0.1
označuje, že chcete použít připojení TCP, zatímco localhost
způsobí, že se MySQL pokusí použít Unixový soket pro připojení k místní databázi.
Pokud se tedy potřebujete přihlásit jako uživatel MySQL eva
s heslem, ale stále pomocí Unixového soketu pro připojení, můžete napsat:
mysql --user=eva --password
mysql
klient vás vyzve k zadání hesla k účtu.
Pokud se chcete pokusit přihlásit se stejným uživatelským jménem, ale přes připojení TCP k místní databázi, zadejte místo toho:
mysql --user=eva --password --host=127.0.0.1
Výchozí konfigurace autentizace, stejně jako počáteční administrátorské uživatelské jméno a heslo, se mohou lišit v závislosti na způsobu instalace MySQL. Mnoho metod však nastavuje MySQL tak, aby používal soket Unix a zahrnoval výchozí root
uživatele jako účet správce.
V těchto případech se můžete přihlásit do databáze jako root
uživatele zadáním:
mysql --user=root --password
Budete vyzváni k zadání hesla správce, které bylo vybráno nebo vygenerováno během instalace, abyste mohli pokračovat.
Všechny tyto metody umožňují připojení k místní databázi MySQL.
Připojení ke vzdálené databázi
Pokud se chcete připojit ke vzdálené databázi MySQL, budete muset zadat síťové umístění vzdáleného hostitele a případně přidat nějaké další informace.
Dostupné metody ověřování se liší v závislosti na konfiguraci instance MySQL. Nejčastěji však musíte k ověření zadat následující parametry:
Možnost | Popis |
---|---|
--host= nebo -h | Název hostitele sítě nebo IP adresa serveru MySQL. |
--port= nebo -P | Síťový port, na kterém běží server MySQL. Pokud server používá port 3306, výchozí port MySQL, může být tento parametr vynechán. |
--user= nebo -u | Uživatelské jméno databáze, pod kterým se chcete připojit. Pokud není zadáno, bude použito uživatelské jméno vašeho operačního systému. |
--password nebo -p | Uveďte, že chcete zadat heslo pro zadaný účet. mysql klient vás vyzve k zadání hesla, jakmile stisknete Enter . |
Databáze MySQL | Název databáze MySQL, ke které chcete přistupovat. Pokud není uvedeno, mysql se připojí k serveru bez připojení ke konkrétní databázi. |
Základní formát pro připojení ke vzdálené databázi obvykle vypadá asi takto:
mysql --host=<hostname> --port=<port> --user=<user> --password <database>
Po stisknutí Enter , mysql
klient vás vyzve k zadání hesla. Pokud se autentizujete úspěšně, bude zahájena nová interaktivní relace MySQL.
Jako příklad si můžeme představit, že se chceme připojit k databázi s následujícími požadavky:
- název hostitele:
myhost
- port:1234
- databáze:
applicationdb
- uživatelské jméno:
myapplicationuser
- heslo:
mypass
Volání mysql
s následujícími možnostmi vám umožní ověřit:
mysql --host=myhost --port=1234 --user=myapplicationuser --password applicationdb
Po stisknutí klávesy Enter budete vyzváni k zadání hesla, pomocí kterého se můžete ověřit pomocí mypass
.
Úprava konfigurace ověřování serveru MySQL
Pokud chcete upravit pravidla, která určují, jak se uživatelé mohou autentizovat k vašim instancím MySQL, můžete tak učinit úpravou konfigurace vašeho serveru. V tomto článku se dozvíte, jak upravit konfiguraci ověřování MySQL.
Závěr
V této příručce jsme se zabývali ověřováním MySQL ze strany klienta. Ukázali jsme, jak používat mysql
klient příkazového řádku pro připojení k místním i vzdáleným instancím databáze.
Vědět, jak se připojit k různým instancím MySQL, je jedním z prvních kroků, kterým musíte porozumět, když začnete pracovat s databázovým systémem. Můžete spustit místní instanci MySQL pro vývoj, která nepotřebuje žádné speciální ověřování, ale vaše databáze ve fázi přípravy a produkce budou téměř jistě vyžadovat ověření. Možnost ověření v obou případech vám umožní dobře pracovat v různých prostředích.