MySQL: InnoDB: ERROR: usia pos pemeriksaan terakhir adalah X, yang melebihi kapasitas grup log Y?

10

Dalam lingkungan MySQL produksi, pesan galat berikut ditulis untuk /var/log/mysql/error.logsetiap menit keempat:

110723 18:36:02  InnoDB: ERROR: the age of the last checkpoint is 9433856,
InnoDB: which exceeds the log group capacity 9433498.
InnoDB: If you are using big BLOB or TEXT rows, you must set the
InnoDB: combined size of log files at least 10 times bigger than the
InnoDB: largest such row.

Saya tidak yakin bagaimana mengurai pesan kesalahan.

Lebih khusus saya tidak mengerti bagaimana usia pos pemeriksaan berhubungan dengan "kapasitas grup log", dan bagaimana pada gilirannya berkaitan dengan ukuran baris dengan besar BLOB/ TEXTkolom.

Pada dasarnya saya bingung tentang cara memecahkan masalah dan melanjutkan memperbaiki masalah ini. Pertanyaan saya adalah:

  • Apa arti pesan kesalahan?
  • Apa yang saya lakukan salah?
  • Bagaimana saya bisa memperbaikinya?
Knorv
sumber

Jawaban:

11

Pesan kesalahan berarti Anda mencoba memasukkan terlalu banyak data ke dalam InnoDB terlalu cepat, dan log InnoDB terisi sebelum data dapat dimasukkan ke dalam file data utama.

Untuk mengatasinya, Anda harus menghentikan MySQL dengan bersih (sangat penting), menghapus file-file log InnoDB yang ada (mungkin lb_logfile*di direktori data MySQL Anda, kecuali jika Anda sudah memindahkannya), kemudian menyesuaikan innodb_log_file_sizesesuai dengan kebutuhan Anda, dan kemudian mulai MySQL lagi . Artikel ini dari blog kinerja MySQL mungkin bermanfaat.

womble
sumber
1
Apa konsekuensi dari hanya mengabaikan pesan kesalahan?
Matt Healy
1
Kamu bercanda kan? Anda serius mempertimbangkan mengabaikan pesan KESALAHAN tentang PENYIMPANAN DATABASE ANDA? Kapan perbaikan membutuhkan sekitar 10 detik waktu henti?
womble
6
Tidak, itu sebenarnya bukan lelucon, itu adalah pertanyaan asli. Apakah server akan mogok? Apakah data akan hilang? Apakah kinerja akan menurun? Semua yang di atas?
Matt Healy
1
Womble, jawaban yang bagus! Saya sudah memperbaiki masalahnya, tetapi saya ingin tahu apa konsekuensi kesalahan ketika konfigurasi salah. Masalahnya adalah saya melihat beberapa perlambatan berselang dan saya ingin tahu apakah itu terkait dengan kesalahan ini atau jika itu adalah sesuatu yang berbeda. Terima kasih!
knorv
4
Ya, server database akan secara efektif menggantung untuk setiap pembaruan ke tabel InnoDB ketika log terisi. Itu bisa melumpuhkan sebuah situs.
womble