Saya memiliki dump SQL 32 GB yang sangat besar yang harus saya impor ke MySQL. Saya belum pernah mengimpor dump SQL yang besar sebelumnya. Saya melakukan yang biasa:
mysql -uroot dbname < dbname.sql
Itu terlalu lama. Ada meja dengan sekitar 300 juta baris, itu menjadi 1,5 juta dalam waktu sekitar 3 jam. Jadi, tampaknya semuanya akan memakan waktu 600 jam (24 hari) dan tidak praktis. Jadi pertanyaan saya adalah, adakah cara yang lebih cepat untuk melakukan ini?
Info / Temuan Lebih Lanjut
- Tabelnya adalah semua InnoDB dan tidak ada kunci asing yang ditentukan. Namun, ada banyak indeks.
- Saya tidak memiliki akses ke server dan DB asli sehingga saya tidak dapat membuat cadangan baru atau melakukan salinan "panas" dll.
- Pengaturan
innodb_flush_log_at_trx_commit = 2
seperti yang disarankan di sini tampaknya tidak membuat peningkatan (terlihat jelas / eksponensial). - Statistik server selama impor (dari MySQL Workbench): https://imgflip.com/gif/ed0c8 .
- Versi MySQL adalah 5.6.20 komunitas.
- innodb_buffer_pool_size = 16M dan innodb_log_buffer_size = 8M. Apakah saya perlu menambah ini?