Jadi ini masih melanjutkan kisah saya saat database server MariaDB (atau MySQL atau Percona, masih mirip) gagal dijalankan beberapa hari lalu. Yang membuat badan panas dingin bukan masalah install ulang stack servernya dari awal, ini sih tinggal mengikuti catatan dan selesai sudah.

Yang repot itu memulihkan data – datanya, terutama kalau daemon mysql tidak mau jalan. Jelas tidak mungkin menjalankan backup database dengan mysqldump lah prosesnya sendiri tidak ada yang aktif. 🙁

Apa yang bisa kita lakukan untuk menyelamatkan data – datanya? Ada satu cara dan ini termasuk manual karena kita akan memindahkan file database – bukan .sql atau semacamnya – yang disimpan di direktori data MySQL ke server yang baru atau kosongan. Dimana lokasinya? Biasanya ada di /var/lib/mysql karena ini defaultnya. Kurang lebih isinya akan seperti berikut:

ls /var/lib/mysql
Servernesia.err  aria_log.00000001  ib_logfile0  ibdata1  mysql.sock          servernesia
Servernesia.pid  aria_log_control   ib_logfile1  mysql    performance_schema

Langkah selanjutnya? Silahkan diambil semua file dan folder diatas, mungkin download ke komputer anda dulu dan nanti upload ke lokasi yang sama tapi pada database server yang baru. Ini kondisinya saat database server baru belum aktif prosesnya, jadi matikan dulu kalau sudah terlanjur. Setelahnya akan muncul proses pengecekan database karena file – file diatas tidak tercatat sebelumnya, dan kalau ada kerusakan akan otomatis diperbaiki juga. Baik tipe databasenya MyISAM atau InnoDB.

Seharusnya selain data anda berhasil dipulihkan setelahnya juga username, password dan privilegesnya akan tetap sama dengan asalnya. Jadi tidak perlu mengubah apapun.

Misal databasenya tidak disimpan di lokasi defaultnya maka anda bisa mengeceknya sendiri dengan membaca file my.cnf, cari teks datadir dan nilainya adalah direktori tersimpannya.