pindahkan folder data dan drive mysql centos

11

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

Vladimir Kakazsky
sumber
@abdelsaid tidak, saya menggunakan myisam

Jawaban:

13

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 mvperintah.

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/mysqldan perbarui untuk datadir = /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.

Kitab Zeus
sumber
0

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.

vimdude
sumber