Jadi saya cukup baru dalam menyetel InnoDB. Saya perlahan-lahan mengubah tabel (jika perlu) dari MyIsam ke InnoDB. Saya memiliki sekitar 100MB di innodb, jadi saya meningkatkan innodb_buffer_pool_size
variabel menjadi 128MB:
mysql> show variables like 'innodb_buffer%';
+-------------------------+-----------+
| Variable_name | Value |
+-------------------------+-----------+
| innodb_buffer_pool_size | 134217728 |
+-------------------------+-----------+
1 row in set (0.00 sec)
Ketika saya pergi untuk mengubah innodb_log_file_size
nilai (contoh my.cnf di halaman konfigurasi innodb mysql berkomentar untuk mengubah ukuran file log menjadi 25% dari ukuran buffer. Jadi sekarang my.cnf saya terlihat seperti ini:
# innodb
innodb_buffer_pool_size = 128M
innodb_log_file_size = 32M
Ketika saya me-restart server, saya mendapatkan kesalahan ini:
110216 9:48:41 InnoDB: Menginisialisasi kumpulan buffer, ukuran = 128.0M
110216 9:48:41 InnoDB: Menyelesaikan inisialisasi pool buffer
InnoDB: Kesalahan: file log ./ib_logfile0 berukuran berbeda 0 5242880 byte
InnoDB: dari yang ditentukan dalam file .cnf 0 33554432 byte!
110216 9:48:41 [ERROR] Fungsi init 'InnoDB' Plugin mengembalikan kesalahan.
110216 9:48:41 [GALAT] Plugin 'InnoDB' pendaftaran sebagai MESIN PENYIMPANAN gagal.
Jadi pertanyaan saya: Apakah aman untuk menghapus log_files lama, atau apakah ada metode lain untuk mengubah innodb_log_file_size
variabel?