Rumah  >  Soal Jawab  >  teks badan

Adakah terdapat cara untuk meningkatkan prestasi import MySQL yang perlahan dari semasa ke semasa?

Saya mempunyai fail mysqldump yang besar (~700GB) dan saya mahu memulihkannya pada pelayan lain. Untuk GB pertama, kelajuan import agak pantas, sekitar MB/s, tetapi selepas beberapa GB data, kelajuan menurun kepada antara 50kb/s dan 200kb/s.

Parameter untuk mysqldump ialah --skip-comments --no-create-info --no-autocommit --quick --extended-insert --insert-ignore --compress jadi beberapa peningkatan kelajuan telah dilakukan.

Import adalah melalui pv /file.sql | 完成的mysql -u 用户 DB

Saya juga menjalankan mysqltuner dan menambah baik beberapa tetapannya.

Saya tertanya-tanya: adakah perkara biasa untuk mysqldump sebesar itu perlahan selepas beberapa ketika? Atau ada apa-apa yang boleh diperbaiki lagi?

P粉969253139P粉969253139288 hari yang lalu502

membalas semua(1)saya akan balas

  • P粉201448898

    P粉2014488982024-01-06 08:18:50

    Apabila mengimport sejumlah besar data, ciri berikut harus dilumpuhkan.

    1. Lumpuhkan pencetus
    2. Lumpuhkan pengindeksan
    3. Lumpuhkan kekangan atau semakan
    4. Lumpuhkan kunci asing

    Sebab setiap kali anda memasukkan, pangkalan data akan menyemak hubungan rekod yang dimasukkan dalam jadual lain. Apabila jadual semakin besar, proses ini mula perlahan. Semasa setiap sisipan, pangkalan data juga menjalankan operasi sisipan tambahan atau menjalankan pencetus sisipan ke dalam indeks jadual.

    Selain itu, oleh kerana transaksi dalam MySQL adalah lemah, anda perlu berusaha supaya commit tidak berfungsi selepas setiap sisipan, anda boleh menggunakan arahan commit, contohnya sekali selepas setiap 10000 rekod dimasukkan.

    balas
    0
  • Batalbalas