Jak zmienić katalog danych MySQL/MariaDB na Ubuntu

Jak zmienić katalog danych MySQL/MariaDB na Ubuntu
Domyślnie serwery bazy danych MySQL/MarIADB SQL umieszczają swoje dane na systemie plików głównych. To nie jest to, czego chcesz na swoich serwerach produkcyjnych przez większość czasu. Możesz umieścić dane serwera bazy danych na innej partycji twardej lub SSD.

W tym artykule pokażę, jak zmienić domyślny katalog danych bazy danych MySQL/Mariadb na Ubuntu. Więc zacznijmy.

Instalowanie MySQL/Mariadb na Ubuntu:

Pakiety bazy danych mysql/mariadb są dostępne w oficjalnym repozytorium pakietów Ubuntu. Możesz więc łatwo go zainstalować za pomocą APT Package Manager.

Najpierw zaktualizuj pamięć podręczną repozytorium pakietów Apt za pomocą następującego polecenia:

Aktualizacja $ sudo apt

Teraz, jeśli chcesz zainstalować serwer bazy danych MySQL, uruchom następujące polecenie:

$ sudo apt Zainstaluj mysql-server mysql-client

Jeśli chcesz zainstalować serwer bazy danych MariaDB, uruchom następujące polecenie:

$ sudo apt Zainstaluj mariadb-server mariadb-client

W tym artykule zamierzam zainstalować serwer bazy danych Mariadb. Możesz zainstalować MySQL, jeśli chcesz.

Po uruchomieniu wymaganego polecenia instalacji należy zobaczyć następującą monit. Naciskać y a następnie naciśnij kontynuować.

Należy zainstalować serwer bazy danych mysql/mariadb.

Znalezienie domyślnego katalogu danych MySQL/MARIADB:

Domyślny katalog danych Baza danych MySQL/MariaDB bardzo łatwo znajdziesz Grep Lub Egrep Komenda.

$ sudo grep -r -kolor datadir/etc/mysql/*

Jak widać, domyślny katalog danych dla serwera bazy danych MariaDB jest /var/lib/mysql. Plik konfiguracyjny serwera bazy danych mariadb to /etc/mysql/mariadb.conf.D/50-serwer.CNF. Jeśli chcesz zmienić domyślny katalog danych serwera bazy danych MariaDB, musisz go zmienić w pliku konfiguracyjnym /etc/mysql/mariadb.conf.D/50-serwer.CNF.

Domyślny katalog danych dla serwera bazy danych MySQL jest /var/lib/mysql również. Ale plik konfiguracyjny jest inny dla serwera bazy danych MySQL. Dla MySQL plik konfiguracyjny to /etc/mysql/mysql.conf.D/Mysqld.CNF. Jeśli zainstalowałeś serwer bazy danych MySQL, aby zmienić domyślny katalog danych, musisz zmodyfikować ten plik konfiguracyjny.

W następnych sekcjach pokażę, jak przygotować partycję twardych lub SSD do katalogu danych MySQL/MariaDB i zmień domyślny katalog danych.

Przygotowanie katalogu danych MySQL/MariaDB:

W tej sekcji pokażę, jak przygotować swój dysk twardy lub partycję SSD do katalogu danych MySQL/MariaDB.

Możesz wymienić wszystkie zainstalowane dyski twarde lub SSD na komputerze za pomocą następującego polecenia:

$ sudo lsblk | Dysk GREP

Wszystkie zainstalowane dyski twarde i SSD powinny być wymienione. SDB to dysk twardy, w którym chcę umieścić moje dane mysql/mariaDB. Twój powinien być inny. Więc wymień go od teraz.

Teraz musisz zrobić nową partycję na dysku twardym SDB z fdisk.

NOTATKA: W tej sekcji nie przejdę szczegółów na temat działania FDISK. Aby dowiedzieć się, jak podzielić dyski twarde lub SSDS z FDisk, przeczytaj artykuł, jak używać fdisk w Linux.

Aby wykonać partycję na dysku twardym SDB, Otwórz go z fdisk w następujący sposób:

$ sudo fdisk /dev /sdb

Teraz naciśnij N a następnie naciśnij .

Teraz naciśnij P a następnie naciśnij .

Teraz naciśnij .

Naciskać .

Naciskać . Należy utworzyć nową partycję.

Teraz naciśnij w i naciśnij .

Powiedzmy, że partycja dysku twardego, którego chcesz użyć jako katalog danych MySQL/MARIADB /dev/sdb1.

Teraz sformatuj partycję /dev/sdb1 Z następującym poleceniem:

$ sudo mkfs.ext4 -l db_data /dev /sdb1

Teraz zrób nowy katalog /db za wymieszanie /dev/sdb1 przegroda.

$ sudo mkdir /db

/db będzie nowym katalogiem danych mysql/mariaDB.

Teraz otwarte /etc/fstab Plik z następującym poleceniem:

$ sudo nano /etc /fstab

Teraz dodaj następujący wiersz na końcu pliku i zapisz plik, naciskając + X śledzony przez y I .

/dev /sdb1 /db ext4 domyślnie 0 0

Teraz ponownie uruchom komputer z następującym poleceniem:

$ sudo restart

Kiedyś komputerowy, /dev/sdb1 powinno być zamontowane /db Jak widać na zrzucie ekranu poniżej.

$ df -h /db

Teraz zmień właściciela i grupę /db katalog do Mysql Z następującym poleceniem:

$ sudo chown mysql: mysql /db

Teraz musisz zatrzymać usługę bazy danych mysql/mariadb i skopiować wszystkie pliki z domyślnego katalogu danych /var/lib/mysql do nowego katalogu danych /db.

Jeśli używasz MariaDB, zatrzymaj usługę MariaDB za pomocą następującego polecenia:

$ sudo systemctl stop mariadb

Jeśli używasz MySQL, zatrzymaj usługę MySQL za pomocą następującego polecenia:

$ sudo systemctl stop Mysql

Teraz skopiuj całą zawartość domyślnego katalogu danych /var/lib/mysql do nowego katalogu danych /db Z następującym poleceniem:

$ sudo rsync -Avzh/var/lib/mysql//db

Cała zawartość /var/lib/mysql Katalog powinien zostać skopiowany do nowego katalogu /db.

/db Katalog jest teraz przygotowany na nowy katalog danych MySQL/MARIADB.

Konfigurowanie Apparmor:

Teraz musisz skonfigurować Apparmor, aby zezwolić /db być katalogiem danych MySQL/MariaDB.

Aby to zrobić, edytuj plik alias Apparmor /etc/apparmor.D/Tubilables/alias następująco:

$ sudo nano /etc /apparmor.D/Tubilables/alias

Teraz dodaj następujący wiersz na końcu pliku i zapisz go, naciskając + X śledzony przez y I .

alias /var /lib /mysql -> /db,

Teraz uruchom ponownie usługę Apparmor za pomocą następującego polecenia:

$ sudo systemctl restart apparmor

Teraz jesteś gotowy zmienić katalog danych MYSQL/MARIADB.

Zmiana katalog danych MySQL/MARIADB:

Aby zmienić katalog danych z /var/lib/mysql Do /db, Musisz edytować wymagany plik konfiguracyjny w zależności od tego, czy używasz MySQL/Mariadb.

Jeśli używasz MariaDB, plik konfiguracyjny musisz edytować /etc/mysql/mariadb.conf.D/50-serwer.CNF.

Jeśli używasz MySQL, plik konfiguracyjny do edycji jest /etc/mysql/mysql.conf.D/Mysqld.CNF.

Teraz edytuj wymagany plik konfiguracyjny w zależności od tego, czy używasz MySQL/MariaDB w następujący sposób:

Mariadb:

$ sudo nano/etc/mysql/mariadb.conf.D/50-serwer.CNF

Mysql:

$ sudo nano/etc/mysql/mysql.conf.D/Mysqld.CNF

Teraz znajdź linię oznaczoną na zrzucie ekranu poniżej.

Zmienić Datadir Do /db jak pokazano na zrzucie ekranu poniżej. Następnie zapisz plik, naciskając + X śledzony przez y I .

Teraz rozpocznij usługę MySQL/Mariabd z następującym poleceniem:

Mariadb:

$ sudo systemctl start mariadb

Mysql:

$ sudo systemctl start mysql

Testowanie mysql/mariadb:

Teraz spróbuj połączyć się z serwerem MySQL/Mariadb w następujący sposób:

$ sudo mysql -u root -p

Następnie wpisz hasło serwera MySQL/Mariadb i naciśnij .

Powinieneś zostać zalogowany do powłoki MySQL/Mariadb źródło Użytkownik bazy danych. To wskazanie, że to działa.

Ale, dla pewności, wpisz następujące zapytanie, aby znaleźć, który katalog MySQL/Mariadb jest obecnie używany jako katalog danych.

SQL> Wybierz @@ datadir;

Jak widać, aktualny katalog danych jest /db Tak jak skonfigurowałem.

W ten sposób zmienisz katalog danych MySQL/MariaDB na Ubuntu. Dziękujemy za przeczytanie tego artykułu.