Pencarian

Sabtu, 24 September 2011

Mengubah Folder Data MySql di Ubuntu Server

Setelah berkali-kali dihadapkan pada masalah yang sama (lupa backup), akhirnya saya memindahkan folder data mysql yang sebelumnya saya juga telah memindahkan root directory apache baik pada laptop saya yang sudah sekarat maupun pada beberapa server yang saya bangun menggunakan linux.

Folder data mysql secara default terletak di /var/lib/mysql/ dan memang seharusnya  /var ini di beri partisi khusus dengan space yang lumayan besar karena isinya (variable) terkait dengan data-data yang bersifat dinamis, namun entah kenapa dan tak tau alasannya saya masih saja tetap menggabungkannya dengan partisi root /.

Okeh, langsung saja, saya akan memindahkan folder data mysql ke /home/mysql-data/

Membuat folder baru mysql di /home/
# mkdir /home/mysql-data
Copy semua data mysql di /var/lib/mysql/
# cp /var/lib/mysql/* /home/mysql-data -R
Ubah owner dan permission folder mysql yang baru
# chown mysql:mysql /home/mysql-data/ -R
# chmod 700 /home/mysql-data/ -R

Hentikan proses mysql
# /etc/init.d/mysql stop
Edit file my.cnf (pastikan kamu sudah membackup terlebih dahulu file-file yang akan di edit)
# nano /etc/mysql/my.cnf
cari baris datadir, lalu ubah isinya sesuai folder yang baru :
datadir         = /home/mysql-data

simpan file tersebut.
lalu edit file berikut :
# nano /etc/apparmor.d/usr.sbin.mysqld
ada 2 baris yang mendefinisikan path mysql ( /var/lib/mysql ), lalu ubah ke folder baru.
/home/mysql-data/ r,
/home/mysql-data/** rwk,
dan simpan file tersebut.
restart apparmor dan jalankan kembali mysql
# /etc/init.d/apparmor restart
# /etc/init.d/mysql start
Okeh, sampai tahap ini seharusnya folder data mysql sudah berpindah di /home/mysql-data/. Dan seperti biasa, jika mysql tidak bisa di akses (error) silahkan lihat log
# tail -f /var/log/syslog
dan jika error masih berlanjut, hubungi google :D

sedikit tambahan untuk yang belum tau :
opsi -R berarti recursive yaitu perintah yang dilakukan akan menyertakan sub foldernya, pada perintah cp berarti folder di copy bersama sub folder pada chown maupun chmod berarti hak akses akan diberikan untuk sub folder maupun file yang terdapat pada sub folder.

tanda # berarti dalam posisi root (full akses)

Keep share...

Tidak ada komentar:

Posting Komentar