MySQL¶
MySQL to wolnodostępny system zarządzania relacyjnymi bazami danych. Zarządzanie jest dostępne z panelu administracyjnego, phpMyAdmin i po zalogowaniu na SSH poleceniem: devil mysql.
Uwaga
Adres serwera MySQL jest zależny od numeru serwera. Dla serwera s0.small.pl będzie to adres mysql0.small.pl, dla serwera s1.small.pl - mysql1.small.pl, dla serwera s2.small.pl - mysql2.small.pl itd. W przykładach użyto adresu mysqlX.small.pl
DevilWEB¶
Po zalogowaniu się do panelu administracyjnego zarządzanie bazami MySQL znajduje się w zakładce MySQL. Po kliknięciu pokazuje się lista baz danych.

Zarządzanie bazą¶
- Aby zmienić uprawnienia dostępu do bazy należy kliknąć przycisk
Zarządzaji następniezarządzaj uprawnieniami.

- Można modyfikować uprawnienia dla wszystkich hostów użytkownika wybierając niebieski przycisk lub wybrać konkretny host.

- Aby dodać uprawnienia do bazy danych użytkownikowi należy kliknąć
+ Dodaj uprawnienia.
Dodanie bazy danych¶
Aby dodać nową bazę danych MySQL należy kliknąć + Dodaj bazę. Po załadowaniu się strony trzeba wybrać:
- nazwę bazy
- nazwę i hasło nowego użytkownika (bądź wybranie istniejącego użytkownika)
- opcjonalnie metodą porównywania znaków (po rozwinięciu opcji
zaawansowane ustawienia).

Lista użytkoników¶
Aby wyświetlić listę użytkowników należy kliknąć Użytkownicy. Przy dodanych użytkownikach jest możliwość edycji hostów, z których możliwe jest logowanie oraz możliwość zmiany hasła.

Dodanie użytkownika¶
Aby dodać nowego użytkownika należy kliknąć + Dodaj użytkonika. Po załadowaniu się strony trzeba wpisać nazwę i hasło.

Łączenie się do bazy spoza SMALL.PL¶
Informacja
Pole host może zostać wypełnione adresem IP (np. 10.10.10.1), hostem (np. example.pl) lub znakiem %, który oznacza dowolny adres IP.
Aby połączyć się do bazy danych spoza SMALL.PL należy:
- Kliknąć
Zarządzaj hostamina liście użytkowników przy wybranym użytkowniku - Kliknąć
+ Dodaj dostęp z nowego adresu. - Wypełnić pole
hosti kliknąć+ Dodaj. - Kliknąć
Zarządzajna liście baz danych przy wybranej bazie. - Kliknąć
+ Dodaj uprawnienia. - Wybrać dodany wcześniej host i kliknąć
+ Dodaj. - Wybrany wcześniej użytkownik ma teraz dostęp do wybranej bazy danych z podanego adresu IP.
Devil¶
Konfiguracja MySQL jest również możliwa z SHELLa za pomocą modułu devil mysql.
Dodawanie i usuwanie bazy¶
Dodawanie bazy danych MySQL odbywa się za pomocą polecenia: devil mysql db add NAZWA_BAZY [LOGIN] [--collate=...] gdzie argumentami są:
NAZWA_BAZY- nazwa bazy danychLOGIN- (opcjonalnie) nazwa użytkownika, który zostanie automatycznie utworzony, jeśli istnieje zostaną mu nadane wszystkie uprawnienia do wskazanej bazy--collate=...- (opcjonalnie) pozwala wybrać metodę porównywania znaków
Usuwanie bazy danych MySQL odbywa się za pomocą polecenia: devil mysql db del NAZWA_BAZY.
Dodawanie i usuwanie użytkowników¶
Dodawanie użytkownika MySQL odbywa się za pomocą polecenia: devil mysql user add LOGIN gdzie LOGIN to jego nazwa. Po jego utworzeniu należy ręcznie ustawić jego uprawnia dla wybranej bazy danych. Aby usunąć użytkownika MySQL należy posłużyć się poleceniem: devil mysql user del LOGIN
Zmiana hasła użytkownika¶
Zmiana hasła odbywa się poleceniem: devil mysql passwd LOGIN
Uprawnienia użytkowników¶
Pierwszym etapem nadawania uprawnień użytkownikom jest dodawanie dostępu ze wskazanego adresu. Aby to zrobić należy skorzystać z polecenia: devil mysql access add LOGIN@HOST gdzie LOGIN to nazwa wcześniej utworzonego użytkownika, a HOST to domena, adres IP bądź maska MySQL. Następnie dodanej wcześniej kombinacji LOGIN@HOST trzeba zmienić uprawnienia korzystając z polecenia devil mysql privileges LOGIN[@HOST] NAZWA_BAZY UPRAWNIENIA. UPRAWNIENIA to uprawnienia MySQL, które mają ulec zmianie. Dozwolone są makra +ALL oraz -ALL, które ustawiają lub usuwają wszystkie uprawnienia lub można podawać poszczególne uprawnienia, przykładowo: -INSERT +SELECT.
Lista baz i użytkowników¶
Aby otrzymać listę wszystkich baz danych i użytkowników należy skorzystać z polecenia devil mysql list [-v]. Użycie przełącznika -v dodatkowo pokaże uprawnienia.
Przykłady¶
Informacja
Aby połączyć się w trybie tekstowym (zdalnie) do bazy danych należy skorzystać z polecenia: mysql -h mysqlX.small.pl -u UŻYTKOWNIK_BAZY -p gdzie X to numer serwera.
Wszystkie poniższe operacje należy wykonywać po uprzednim zalogowaniu się przez SSH.
-
Import bazy danych (
UTF-8):
mysql --host mysqlX.small.pl --user UŻYTKOWNIK_BAZY -p NAZWA_BAZY < MOJA_KOPIA.sql -
Export bazy danych (
UTF-8):
mysqldump --host mysqlX.small.pl --user UŻYTKOWNIK_BAZY -p NAZWA_BAZY --no-tablespaces > MOJA_KOPIA.sql -
Export bazy danych razem z procedurami składowymi (
UTF-8):
mysqldump --routines --host mysqlX.small.pl --user UŻYTKOWNIK_BAZY -p NAZWA_BAZY --no-tablespaces > MOJA_KOPIA.sql -
Export bazy danych (
Latin1/CP1252/ISO 8859-1):
mysqldump --default-character-set=latin1 --host mysqlX.small.pl --user UŻYTKOWNIK_BAZY -p NAZWA_BAZY --no-tablespaces > MOJA_KOPIA.sql -
Export bazy danych (
Latin2/ISO 8859-2):
mysqldump --default-character-set=latin2 --host mysqlX.small.pl --user UŻYTKOWNIK_BAZY -p NAZWA_BAZY --no-tablespaces > MOJA_KOPIA.sql
Łączenie się do bazy spoza SMALL.PL¶
Domyślnie host wszystkich użytkowników baz MySQL jest ustawiony na %.devil, co powoduje, że nie można się zalogować do bazy spoza systemów SMALL.PL. W poniższym przykładzie zostanie dodana możliwość logowania się na użytkownika m1111 z dowolnego adresu ze wszystkimi prawami do bazy m1111_baza.
- Dozwolone logowanie z każdego adresu:
devil mysql access add m1111@% - Dodanie wszystkich uprawnień do bazy
m1111_bazaużytkownikowim1111zalogowanemu z dowolnego adresu:devil mysql privileges m1111@% m1111_baza +ALL