Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Łączenie się z bazami danych MySQL


Wprowadzenie

Jedną z pierwszych rzeczy, o których musisz pomyśleć podczas pracy z bazą danych MySQL, jest sposób łączenia się i interakcji z instancją bazy danych. Wymaga to koordynacji między klientem bazy danych — komponentem używanym do interakcji z bazą danych, a serwerem bazy danych — rzeczywistą instancją MySQL, która przechowuje, organizuje i zapewnia dostęp do danych.

Z tego powodu musisz zrozumieć, jak połączyć się jako klient, dostarczając wymagane informacje do uwierzytelnienia. W tym przewodniku omówimy, jak połączyć się z bazą danych MySQL przy użyciu natywnego mysql klient wiersza poleceń — jeden z najczęstszych i najbardziej użytecznych sposobów interakcji z instancją bazy danych.

W towarzyszącym przewodniku dowiesz się, jak skonfigurować uwierzytelnianie MySQL, aby spełnić potrzeby Twojego projektu. Rozważ przeczytanie obu przewodników, aby uzyskać pełniejszy obraz tego, jak działa uwierzytelnianie w MySQL.



Podstawowe informacje o mysql klient

mysql klient jest domyślnym klientem wiersza poleceń i powłoką SQL dla MySQL. Możesz użyć go interaktywnie, aby wywołać sesję powłoki z serwerem lub podać mu pliki SQL, aby działały bez interakcji użytkownika. Jest to szczególnie przydatne podczas wdrażania opcji konfiguracyjnych i konfigurowania środowiska. Interaktywna eksploracja i zapytania ad-hoc są również mocną stroną podczas opracowywania wzorców dostępu, których będą używać Twoje programy.

Sposób łączenia się i uwierzytelniania z serwerem MySQL zależy od konfiguracji serwera. W kolejnych sekcjach omówimy niektóre z podstawowych opcji połączenia. Dla jasności rozróżnimy połączenia lokalne i zdalne:

  • połączenie lokalne :połączenie, w którym klient i instancja MySQL znajdują się na tym samym serwerze
  • połączenie zdalne :gdzie klient łączy się z dostępną przez sieć instancją MySQL działającą na innym komputerze

Zacznijmy od połączenia z bazą danych z tego samego komputera.



Łączenie z lokalną bazą danych za pomocą mysql

Bez żadnych argumentów mysql polecenie próbuje połączyć się z plikiem gniazda uniksowego, aby uzyskać dostęp do lokalnej bazy danych. Zwykle domyślna lokalizacja pliku gniazda jest określana przez plik konfiguracyjny lub przez skompilowaną wartość domyślną. Domyślnie do próby połączenia z bazą danych używana jest nazwa użytkownika systemu operacyjnego.

Jeśli więc Twój obecny użytkownik jest prawidłowym użytkownikiem MySQL w Twojej lokalnej bazie danych, możesz spróbować połączyć się, wpisując:

mysql

Jeśli konto istnieje i nie wymaga hasła lub jeśli dla konta skonfigurowano uwierzytelnianie przez gniazdo MySQL, zostaniesz automatycznie zalogowany. Jeśli nazwa użytkownika nie istnieje w MySQL lub jeśli wymagane jest hasło lub dodatkowe uwierzytelnienie, polecenie nie powiedzie się.

Aby kontrolować sposób, w jaki mysql próbuje zalogować się do bazy danych, przekazuje dodatkowe informacje za pomocą polecenia, korzystając z opcji wiersza poleceń:

  • --user=<username> lub -u <username> :określa użytkownika MySQL do uwierzytelnienia.
  • --password lub -p :mówi MySQL, aby poprosił o hasło dla użytkownika MySQL.
  • --host=127.0.0.1 lub -h 127.0.0.1 :mówi mysql aby połączyć się z lokalną instancją MySQL przy użyciu lokalnego adresu pętli zwrotnej TCP zamiast gniazda uniksowego. Jest to ważne, jeśli twój serwer MySQL nie jest skonfigurowany do korzystania z gniazd uniksowych.

Uwaga: MySQL interpretuje 127.0.0.1 inaczej niż localhost . Określanie 127.0.0.1 wskazuje, że chcesz użyć połączenia TCP, podczas gdy localhost spowoduje, że MySQL spróbuje użyć gniazda Unix do połączenia z lokalną bazą danych.

Tak więc, jeśli musisz zalogować się jako użytkownik MySQL eva z hasłem, ale nadal używając gniazda Unix do połączenia, możesz wpisać:

mysql --user=eva --password

mysql klient poprosi Cię o hasło do konta.

Jeśli chcesz spróbować zalogować się przy użyciu tej samej nazwy użytkownika, ale przez połączenie TCP z lokalną bazą danych, wpisz:

mysql --user=eva --password --host=127.0.0.1

Domyślna konfiguracja uwierzytelniania, a także początkowa nazwa użytkownika i hasło administratora mogą się różnić w zależności od tego, jak zainstalowano MySQL. Jednak wiele metod konfiguruje MySQL tak, aby używał gniazda uniksowego i zawierał domyślny root użytkownika jako konto administratora.

W takich przypadkach możesz zalogować się do bazy danych jako root użytkownik wpisując:

mysql --user=root --password

Zostaniesz poproszony o podanie hasła administracyjnego, które zostało wybrane lub wygenerowane podczas instalacji, aby kontynuować.

Wszystkie te metody umożliwiają połączenie z lokalną bazą danych MySQL.



Łączenie ze zdalną bazą danych

Jeśli chcesz połączyć się ze zdalną bazą danych MySQL, musisz podać lokalizację sieciową zdalnego hosta i ewentualnie dodać dodatkowe informacje.

Dostępne metody uwierzytelniania różnią się w zależności od konfiguracji instancji MySQL. Najczęściej jednak do uwierzytelnienia należy podać następujące parametry:

Opcja Opis
--host= lub -h Nazwa hosta sieciowego lub adres IP serwera MySQL.
--port= lub -P Port sieciowy, na którym działa serwer MySQL. Jeśli serwer używa portu 3306, domyślnego portu MySQL, ten parametr można pominąć.
--user= lub -u Nazwa użytkownika bazy danych, z którą chcesz się połączyć. Jeśli nie zostanie określony, zostanie użyta nazwa użytkownika systemu operacyjnego.
--password lub -p Wskaż, że chcesz podać hasło dla określonego konta. mysql klient zapyta o hasło po naciśnięciu Enter .
Baza danych MySQL Nazwa bazy danych MySQL, do której chcesz uzyskać dostęp. Jeśli nie określono, mysql połączy się z serwerem bez łączenia się z określoną bazą danych.

Podstawowy format połączenia ze zdalną bazą danych zazwyczaj wygląda mniej więcej tak:

mysql --host=<hostname> --port=<port> --user=<user> --password <database>

Po naciśnięciu Enter , mysql klient poprosi o hasło. Po pomyślnym uwierzytelnieniu zostanie uruchomiona nowa interaktywna sesja MySQL.

Jako przykład możemy sobie wyobrazić, że chcemy połączyć się z bazą danych z następującymi wymaganiami:

  • nazwa hosta:myhost
  • port:1234
  • baza danych:applicationdb
  • nazwa użytkownika:myapplicationuser
  • hasło:mypass

Wywołanie mysql z następującymi opcjami pozwoli na uwierzytelnienie:

mysql --host=myhost --port=1234 --user=myapplicationuser --password applicationdb

Po naciśnięciu klawisza Enter zostaniesz poproszony o hasło, w którym możesz uwierzytelnić się za pomocą mypass .



Dostosowywanie konfiguracji uwierzytelniania serwera MySQL

Jeśli chcesz zmodyfikować reguły określające sposób uwierzytelniania użytkowników w Twoich instancjach MySQL, możesz to zrobić, modyfikując konfigurację serwera. W tym artykule dowiesz się, jak zmodyfikować konfigurację uwierzytelniania MySQL.



Wniosek

W tym przewodniku omówiliśmy uwierzytelnianie MySQL od strony klienta. Pokazaliśmy, jak używać mysql Klient wiersza poleceń do łączenia się zarówno z lokalnymi, jak i zdalnymi instancjami baz danych.

Umiejętność łączenia się z różnymi instancjami MySQL jest jednym z pierwszych kroków, które musisz zrozumieć, gdy zaczynasz pracę z systemem baz danych. Możesz uruchomić lokalną instancję MySQL na potrzeby programowania, która nie wymaga żadnego specjalnego uwierzytelniania, ale Twoje bazy danych w fazie tymczasowej i produkcyjnej prawie na pewno będą wymagały uwierzytelniania. Możliwość uwierzytelnienia w obu przypadkach pozwoli Ci dobrze pracować w różnych środowiskach.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak automatycznie generować migracje za pomocą Sequelize CLI z modeli Sequelize?

  2. Narzędzie LINQ dla Javy

  3. Jak unpivot tabelę w MySQL

  4. Procedura zapisana z opcjonalnymi parametrami WHERE

  5. Pobieranie pojedynczego wiersza, pojedynczej kolumny z PDO