saya perlu memindahkan data ke folder yang berbeda dan drive di server os os db saya.
saya menambahkan hard drive baru (karena kami kehabisan ruang),
saya punya 1tb hard drive dan saya punya 2tb baru saya ingin meletakkan data di server yang sama (dedicated server di-host di pusat data)
saya ingin tahu apa cara mudah untuk memigrasikan data tanpa kehilangan data apa pun?
Saat ini saya memiliki data yang terletak di: /var/lib/mysql/
on cent os.mysql version is 5.1
Jawaban:
Langkah 1
Pertama-tama, atur drive Anda (asumsikan sudah terpasang dan pasang dengan benar di fstab) dan buat direktori MySQL baru:
sudo mkdir /path/to/new/mysql
Pastikan folder ini memiliki izin yang tepat:
chown -R mysql:mysql /data/mysql
Sekarang di sini Anda dapat mematikan layanan saat menyalin data. Salin data dari direktori data saat ini ke direktori data baru, contoh :.
sudo cp -R /var/lib/mysql/* /path/to/new/mysql/
atau Anda dapat menyalin satu per satu basis data jika Anda inginkan atau jika Anda merasa aman, Anda dapat memindahkan folder menggunakan
mv
perintah.Langkah 2
Anda dapat mengubah lokasi data MySQL Anda di
my.cnf
. Jika Anda tidak tahu di mana file ini, Anda dapat menjalankan perintah:locate my.cnf
Ini akan memberi Anda jalan di mana my.cnf berada. Kemudian edit file:
sudo vi /etc/mysql/my.cnf
(tentu saja Anda harus mengganti dengan jalur Anda)Sekarang cari
datadir = /var/lib/mysql
dan perbarui untukdatadir = /path/to/new/mysql
.Kemudian restart mysql
sudo /etc/init.d/mysqld restart
Setelah beberapa hari / minggu, jika Anda merasa nyaman Anda dapat menghapus folder lama (/ var / lib / mysql) atau membuat cadangan semua yang ada di dalamnya.
sumber
Jika Anda tidak ingin shutdown selama migrasi, saya akan mengatur replikasi master-master ke lingkungan chroot pada 2tb dengan mysql (versi yang sama) di dalamnya, maka ketika pada sinkronisasi matikan 1tb dan Anda mendapat lingkungan chroot yang berfungsi.
Jika Anda tidak ingin menggunakan lingkungan chroot, ubah my.cnf (bukan chroot) untuk menunjuk ke tempat Anda ingin menyimpan file mysql pada disk 2tb dan nonaktifkan replikasi. Kemudian matikan lingkungan chroot dan pindahkan data ke apa yang Anda miliki di my.cnf, pindah ke sini tidak akan memakan waktu sedetik pun karena berada di disk yang sama. Mulai ulang mysql.
Ini sedikit rumit untuk dilakukan, Anda dapat bermain dengan ini di enm. Vm lokal pertama.
sumber