Sejauh mengimpor data MySQL, tiga (3) hal perlu dipertimbangkan.
MyISAM
Mengimpor tabel MyISAM semudah memindahkan tiga file dengan ekstensi .frm
, .MYD
, dan .MYI
file untuk tabel yang diberikan ke dalam folder MySQL. Misalnya, jika nama tabel adalah mydata, maka tiga (3) file
mydata.frm
mydata.MYD
mydata.MYI
Berikut ini bisa jadi mimpi buruk dari mimpi buruk. Mengimpor InnoDB sepenuhnya bergantung pada banyak faktor yang termasuk dalam salah satu dari dua kategori:
InnoDB (innodb_file_per_table dinonaktifkan [default])
Semua data InnoDB dan halaman indeks terletak di /var/lib/mysql/ibdata1
. File ini harus dipindahkan dari mesin sumber Anda (Server-S) ke mesin target (Server-T) dan ditempatkan di jalur absolut yang sama. Faktanya, inilah yang mengejutkan:Server-S dan Server-T harus sama. Dengan kata lain, Anda tidak dapat mengimpor dan mengekspor .ibd
InnoDB file ke mesin lain. Mereka hanya dapat diimpor dan diekspor pada mesin yang sama dengan .ibd
telah dibuat pada.
Anda juga harus memindahkan /var/ib/mysql/ib_logfile0 dan /var/ib/mysql/ib_logfile1 dari Server-S dan menempatkannya di jalur absolut yang sama di Server-T.
Anda juga harus memastikan bahwa setiap variabel InnoDB yang diset di /etc/my.cnf dari Server-S harus diset di /etc/my.cnf di Server-T.
InnoDB (innodb_file_per_table diaktifkan)
Untuk setiap tabel InnoDB, akan ada dua file. Misalnya, jika tabel InnoDB di database mydata disebut mytable, Anda akan memiliki /var/lib/mysql/mydata/mytable.frm
dan /var/lib/mysql/mydata/mytable.ibd. .ibd
file berisi data dan halaman indeks untuk tabel. Untuk mengimpor tabel individual, Anda harus
- Tempatkan
mytable.frm
di folder/var/lib/mysql/mydata folder
di Server-T - Tempatkan
mytable.ibd
di folder/var/lib/mysql/mydata folder
di Server-T - Jalankan
ALTER TABLE mydata.mytable IMPORT TABLESPACE;
Pastikan Anda memiliki /var/lib/mysql/ibdata1
di tempat yang sama ia diimpor.
Moral cerita
Tolong jangan gunakan teknik IMPORT TABLESPACE di server yang berbeda. Lakukan saja mysqldump dari semuanya dan impor file mysqldump. Pembuangan logis selalu merupakan cara yang paling aman !!!