Wprowadzenie do serwera MySQL
Co to jest MySQL Server?
Na rynku dostępnych jest wiele systemów RDBMS (systemów) do zarządzania bazami danych, z których najpopularniejszym jest MySQL. MySQL jest otwartym systemem zarządzania relacyjnymi bazami danych (RDBMS) i jest oparty na Structured Query Language (SQL - język służący do zarządzania bazą danych i wykonywania operacji CRUD, takich jak tworzenie, czytanie, aktualizacja i usuwanie.) tutaj omawiamy serwer MySQL.
MySQL, krótka podróż:
- Po raz pierwszy został stworzony i jest własnością szwedzkiej firmy MySQL AB, a jego pierwsze wydanie zostało wydane w 1995 roku, 23 maja.
- W 2008 roku MySQL AB został przejęty przez Sun Microsystems w ramach 1 miliarda transakcji.
- W 2010 r. Sun Microsystems został przejęty przez Oracle.
- Najnowsza wersja serwera MySQL to 8.0, która została wydana 19 kwietnia 2018 r.
MySQL może wirtualnie działać na dowolnej platformie, takiej jak Linux, Solaris i Windows, i jest najpopularniejszym i najszerzej RDBMS, ponieważ jest open source i darmowym serwerem DB, który zapewnia znacznie zaawansowane funkcje bazy danych.
Kilka przykładów użycia MySQL Server to:
- Google, Facebook, Yahoo i wielu innych gigantów technologicznych zastosowało MySQL w celu zwiększenia swoich możliwości przetwarzania danych.
- MySQL jest bardzo ważnym komponentem dla LAMP, która jest platformą programistyczną z Linuksem jako systemem operacyjnym, Apache jako serwerem WWW, MySQL jako RDBMS i PHP jako językiem programowania. Niemniej jednak Python lub Perl mogą być również używane zamiast PHP jako języka programowania lub skryptów.
- Może być stosowany wszędzie, gdzie Dane muszą być przechowywane w sposób relacyjny, tj. W formacie tabelarycznym. Każda tabela ma klucz podstawowy, a wiersze mogą odnosić się do siebie za pomocą tego klucza podstawowego.
Zalety serwera MySQL:
-
Przenośny -
Może działać na wielu platformach, takich jak UNIX, Solaris, Windows, OS / 2 itp.
-
Otwarte źródło -
Co najważniejsze, MySQL jest udostępniany wszystkim jako oprogramowanie typu open source i każdy może go używać bezpłatnie, zgadzając się na jego warunki.
-
Bezpieczeństwo -
Wszystkie bazy danych MySQL są bardzo bezpieczne i są zablokowane hasłami, które są szyfrowane za pomocą skomplikowanych algorytmów i nigdy nie jest łatwo je złamać.
-
Łączność -
Dostępnych jest wiele mechanizmów do łączenia się z serwerami MySQL, takimi jak TCP / IP, gniazda UNIX i nazwane potoki
-
Regularne aktualizacje i ciągły rozwój
Będąc platformą typu open source, MySQL ma ogromną społeczność programistów i regularnie wydaje łatki i aktualizacje dla MySQL.
Architektura serwera MySQL:
Architektura MySQL składa się głównie z następujących komponentów:
- Serwer MySQL
- Klienci MySQL
- Katalog danych
- Silnik pamięci masowej
MySQL oparty jest na modelu klient-serwer.
Źródło: http://actimem.com/wp-content/uploads/2015/09/mysql.png.webp?x78177
Serwer MySQL:
Jest to instancja MySQL, w której rzeczywiste dane są przechowywane i przetwarzane. Ten komponent odpowiada za przetwarzanie przychodzących zapytań pochodzących od klientów MySQL i manipuluje tabelami bazy danych. Odpowiada również za przyjmowanie połączeń z bazą danych pochodzących od klientów MySQL. Ważne programy komponentu MySQL Server to:
-
MySQL:
Jest to demon serwera MySQL. Działa w tle i zarządza żądaniami klientów MySQL.
-
mysqld_safe:
Jest to program, który restartuje serwer za każdym razem, gdy wystąpi błąd. To była jedna z funkcji bezpieczeństwa tego programu, druga polega na tym, że przechowuje dzienniki informacji o środowisku wykonawczym do dziennika błędów.
-
mysql.server:
Jest to narzędzie MySQL, które zostało uruchomione w celu uruchomienia skryptu mysqld_safe.
-
mysqld_multi:
Ten program służy do zarządzania wieloma procesami mysqld, które nasłuchują połączeń na różnych kanałach połączeń, takich jak TCP / IP, gniazda UNIX itp.
Klienci MySQL:
Klienci MySQL to w zasadzie narzędzia używane do komunikacji z serwerem MySQL. Innymi słowy, są to programy komunikujące się z serwerem MySQL. Przykładami klientów MySQL są dowolne programy, takie jak Perl, PHP, Java, MySQL, mysqladmin i narzędzia, takie jak zrzut MySQL, mysqlcheck, myisamchk. Ważnymi programami w klientach MySQL są:
- MySQL to powłoka SQL, w której można pisać i wykonywać instrukcje SQL. Może być interaktywny lub nieinteraktywny. W przypadku użycia interaktywnego wyniki są zwracane w formacie tabelarycznym, a użycie nieinteraktywne zwraca wynik w formacie rozdzielonym tabulatorami.
- mysqladmin to klient do administrowania serwerem MySQL. Można go używać do sprawdzania plików konfiguracji, aktualizowania ich, sprawdzania aktualnego stanu serwera, a także do tworzenia i usuwania baz danych itp.
- mysqldump to narzędzie klienckie i program do tworzenia kopii zapasowych baz danych, który wykonuje logiczne kopie zapasowe.
- mysqlcheck i myisamchk są klientami używanymi do wykonywania konserwacji tabel baz danych, takich jak naprawa, optymalizacja i analiza tabel.
Katalog danych:
Katalog danych zawiera rzeczywiste dane, które są przechowywane w wyniku bieżących operacji na dowolnych aplikacjach / oprogramowaniu lub serwerach. Obejmuje bazy danych, tabele, pliki dziennika, procedury przechowywane itp.
- Domyślna lokalizacja katalogu danych w systemie Linux to: / var / lib / mysql
- Domyślna lokalizacja bazy danych w systemie Windows to: C: \ ProgramData \ MySQL \ MySQL Server 5.8
- Nazwa pliku konfiguracyjnego zawierającego ścieżkę do katalogu danych to mysqld.cnf
- cnf można znaleźć na /etc/mysql/mysql.conf.d/mysqld.cnf
- Rzeczywiście można zmienić lokalizację przechowywania datadir na wypadek, gdyby komuś zabrakło przydzielonego miejsca. Proszę przejść przez poniższy artykuł, który pięknie wyjaśnia, jak można to osiągnąć:
https://www.digitalocean.com/community/tutorials/how-to-move-a-mysql-data-directory-to-a-new-location-on-ubuntu-16-04
Silnik pamięci masowej:
Silnik pamięci to moduł oprogramowania używany przez RDBMS do wykonywania operacji CRUD (tworzenie, czytanie, aktualizowanie i usuwanie).
Silniki pamięci są w MySQL dwóch typów:
- Transakcyjny
- Nietransakcyjny
Główną różnicą między transakcyjnym a nietransakcyjnym silnikiem pamięci jest to, że tabele transakcyjne rejestrują wszystkie operacje bazy danych w pliku dziennika, więc nawet jeśli MySQL ulegnie awarii, nadal możesz odzyskać dane, podczas gdy nie jest tak w przypadku silników nietransakcyjnych. Niemniej jednak, aby podkreślić, silniki nietransakcyjne są znacznie szybsze, a także mają mniejsze wymagania dotyczące miejsca na dysku. Poniżej znajdują się niektóre z silników pamięci używanych przez MySQL, najczęściej używanym z nich jest InnoDB.
Silniki pamięci obsługiwane przez MySQL:
- InnoDB
- MyISAM
- Pamięć
- CSV
- Łączyć
- Archiwum
- Federated
- Czarna dziura
- Przykład
Polecane artykuły
Jest to przewodnik po serwerze MySQL. W tym artykule przeanalizowaliśmy Przykłady, zalety i architekturę MySQL Server. Możesz także przejrzeć następujące artykuły, aby dowiedzieć się więcej -
- Ściągawka MySQL
- Co to jest serwer Tableau?
- MySQL vs SQL Server