Cara Memindahkan Direktori Data MariaDB di CentOS 7
Pemindahan direktori data MariaDB bertujuan untuk mengalokasikan partisi atau disk tersendiri untuk database. Secara default lokasi direktori data MariaDB berada di /var/lib/mysql. Tutorial ini menggunakan CentOS 7 dan database MariaDB 10.0.
1. Memindahkan Lokasi Direktori Data
Pemeriksaan lokasi direktori data dapat dilakukan melalui mysql shell.
1 2 3 4 5 6 7 8 | $ mysql -u root -p MariaDB [(none)]> select @@datadir; +-----------------+ | @@datadir | +-----------------+ | /var/lib/mysql/ | +-----------------+ |
Setelah itu, hentikan service mysql.
1 2 | $ sudo systemctl stop mysql $ sudo systemctl status mysql |
Membuat direktori baru untuk data MariaDB.
1 | $ sudo mkdir -p /data/mariadb-data |
Kemudian melakukan sinkronisasi data dari direktori default ke direktori baru. Lalu ubah nama direktori default.
1 2 | $ sudo rsync -av /var/lib/mysql /data/mariadb-data $ sudo mv /var/lib/mysql /var/lib/mysql.bak |
2. Mengarahkan ke Direktori Baru
Buka file konfigurasi my.cnf
1 | $ sudo nano /etc/my.cnf |
Tambahkan kode di bawah ini di atas !includedir /etc/my.cnf.d.
1 2 3 4 5 6 7 | [mysqld] datadir=/data/mariadb-data/mysql socket=/data/mariadb-data/mysql/mysql.sock [client] port=3306 socket=/data/mariadb-data/mysql/mysql.sock |
3. Pengujian
Setelah melakukan konfigurasi lokasi direktori data, selanjutnya menjalankan kembali service mysql.
1 2 | $ sudo systemctl start mysql $ sudo systemctl status mysql |
Kemudian login ke mysql, dan lakukan pemeriksaan lokasi direktori data.
1 2 3 4 5 6 7 8 | $ mysql -u root -p MariaDB [(none)]> select @@datadir; +---------------------------+ | @@datadir | +---------------------------+ | /data/mariadb-data/mysql/ | +---------------------------+ |
Jangan lupa periksa juga database yang sudah ada sebelumnya, apakah berhasil dipindahkan dan terbaca semua.
1 2 3 4 | MariaDB [(none)]> show databases; MariaDB [(none)]> use namadatabase; MariaDB [(none)]> show tables; MariaDB [(none)]> select * from namatable; |
Selamat mencoba 🙂
min, kok saya malah ke stack di start MySQL nya itu ya…. gak bisa di start, alasannya error code
pesan error lengkapnya apa? cek status servicenya, systemctl status mysql.