System zarządzania bazą danych MariaDB

MariaDB to stosunkowo nowe rozwiązanie wśród systemów zarządzania bazami danych (DBMS – Data Base Management System). To ulepszona wersja dla słynnego MySQLa, który został kupiony przez Sun Microsystems (teraz Oracle) w 2008 r.  Z powodu polityki Oracla  społeczeństwo opensource miało mniejszy wpływ na DBMS i jego rozwój znacznie zwolnił. Skłoniło to developerów MySQLa do utworzenia forka MariaDB z intencją utrzymania go pod licencją GNU GPL i kontynuowaniem jego rozwoju.

Komendy MariaDB:

# mysql – powłoka do administracji i odpytywania bazy.

# mysql_secure_installation – zwiększa bezpieczeństwo instalacji MariaDB.

# mysqldump – backup i przywracanie jednej tabeli, kilku tabel lub całej bazy.

Domyślnym plikiem z logami MariaDB jest /var/log/mariadb/mariadb.log.

 

Konfiguracja MariaDB.

Głównym plikiem konfiguracyjnym jest /etc/my.cnf, w którym znajdują się ustawienia domyślne powłoki mysql, skryptu startowego mysql_safe i demona mysqld.

[mysqld] to blok związany z demonem mysqld a [mysqld_safe] związany jest z programem startowym. Dyrektywa includedir na dole instruuje program startowy aby szukał dodatkowych plików konfiguracyjnych w katalogu /etc/my.cnf.d. Domyślnie w tym katalogu znajdują się trzy pliku konfiguracyjne:

W plikach tych znajduje się konfiguracja odpowiednio dla klientów ogólnie, konkretnych klientów oraz serwera mysqld.

 

Wymagania SELinux dla operacji związanych z MariaDB.

Są dwie zmienne boolean zwiazane z MariaDB:

Te zmienne pozwalają lub zabraniają demonowi mysqld na łączenie się z dowolnym portem i użytkownikom na podłączanie się do lokalnego serwera MariaDB.

 

Instalacja i konfiguracja MariaDB.

Pakiety w RHEL związane z MariaDB:

  • mariadb – klient MariaDB i plik konfiguracyjny.
  • mariadb-server – serwer MariaDB, narzędzia, pliki konfiguracyjne i logi.
  • mariadb-libs – niezbędne biblioteki dla klienta.

1. Instalacja pakietów, start i dodanie do autostartu serwera MariaDB.

2. Uruchomienie bezpiecznej instalacji:

3. Zalogowanie do powłoki mysql:

4. Wyświetlenie pomocy:

5. Wyświetlenie list baz:

6. Wyświetlenie pomocy związanej związanej z utworzeniem bazy:

6. Utworzenie bazy o nazwie database1:

7. Utworzenie tabeli scientists w bazie database1:

8. Wypełnienie tabeli scientists danymi:

9. Wyświetlenie tabeli scientists:

 

Tworzenie użytkowników bazy i nadawanie im róznych uprawnień.

1. Zalogowanie do powłoki mysql.

2. Zmiana bazy i wyświetlenie pomocy związanej z dodawaniem użytkownika:

3. Utworzenie użytkownika user1 hasłem password1, który może łączyć się tylko lokalnie z bazą:

4. Utworzenie użytkownika user2 hasłem password2, który może łączyć się ze zdalnego hosta z bazą:

5. Wyświetlenie pomocy mysql związanej z nadawaniem uprawnień:

6. Nadanie użytkownikowi user1 wszystkich uprawnień do bazy:

7. Nadanie użytkownikowi user2 uprawnień tylko do odczytu do bazy:

8. Przeładowanie uprawnień.

 

Backup i przywracanie bazy lub tabeli.

Backup to duplikowanie danych do innej lokalizacji na wypadek utraty danych. Są dwa rodzaje backupu: fizyczny i logiczny. Backup fizyczny to kopiowanie aktualnych plików, które mogą należeć do systemu operacyjnego, bazy danych lub innej aplikacji. Backup logiczny zawiera tylko komendy SQL niezbędne do odtworzenia danych.

Przywracanie danych to czynność odwrotna do backupu.

Backup wszystkich baz w systemie:

Przywrócenie określonej bazy np. DB1:

Backup wybranych baz np. DB1 DB2 DB3:

Przywrócenie trzech baz z przykładu powyżej:

Backup określonych tabel takich jak np. tb1 i tb2 w bazie DB1:

Aby przywrócić tylko tabelę tb1 z przykładu powyżej:

 

Backup, usunięcie bazy lub tabeli i odtworzenie bazy.

1. Backup bazy.

2. Wykasowanie bazy database1.

3. Potwierdzenie:

4. Ponowne utworzenie bazy database1.

5. Odtworzenie bazy.

6.  Ponowne zalogowanie i sprawdzenie obecności tabeli scientist.

7. Wykasowanie tabeli scientists a póżniej bazy database1 choć moźna od razu skasować bazę i poskutkuje to skasowanem tabeli.

 

 

 

 

 

One Reply to “System zarządzania bazą danych MariaDB”

Leave a Reply

Your email address will not be published. Required fields are marked *