ฉันต้องการเริ่มแปลง MyISAM บางตารางเป็น INNODB ใช้ Ubuntu 14.04 เซิร์ฟเวอร์พร้อม MySQL 5.6 (apt-get อัพเกรดจาก 5.5), 32G ram บนซีพียู 4 คอร์ / 8 เธรด เริ่มแรกมีปัญหากับ ...
could not open single-table tablespace file .\mysql\innodb_index_stats.ibd after restart of MySQL
และ
Error: Table "mysql"."innodb_table_stats" not found.
ฉันทำตามคำแนะนำที่โพสต์ของ Rolando แล้วและฐานข้อมูลไม่พังหรือสร้างข้อผิดพลาดขนาดใหญ่อีกต่อไป (ปัญหาข้างต้นหายไปเพียงอธิบายเหตุการณ์สำคัญ ๆ )
ตอนนี้ฉันกังวลเกี่ยวกับข้อผิดพลาดต่อไปนี้ก่อนที่ฉันจะแปลงอะไรเป็น INNODB สหพันธ์สามารถละเว้นจากสิ่งที่ฉันอ่านบรรทัดที่สองด้านล่าง (รวมถึงหัวข้อของโพสต์นี้) เกี่ยวข้องกับฉัน
2014-05-19 01:50:57 30950 [Note] Plugin 'FEDERATED' is disabled.
2014-05-19 01:50:57 30950 [ERROR] Function 'innodb' already exists
2014-05-19 01:50:57 30950 [Warning] Couldn't load plugin named 'innodb' with soname 'ha_innodb.so'.
2014-05-19 01:50:57 30950 [ERROR] Function 'federated' already exists
2014-05-19 01:50:57 30950 [Warning] Couldn't load plugin named 'federated' with soname 'ha_federated.so'.
2014-05-19 01:50:57 30950 [ERROR] Function 'blackhole' already exists
2014-05-19 01:50:57 30950 [Warning] Couldn't load plugin named 'blackhole' with soname 'ha_blackhole.so'.
2014-05-19 01:50:57 30950 [ERROR] Function 'archive' already exists
2014-05-19 01:50:57 30950 [Warning] Couldn't load plugin named 'archive' with soname 'ha_archive.so'.
เพิ่มต่อไปนี้ใน my.cnf จากคำแนะนำที่โพสต์ของ Rolando
innodb_buffer_pool_size=4G
innodb_buffer_pool_instances=2
innodb_read_io_threads=12
innodb_write_io_threads=12
innodb_io_capacity=300
innodb_log_file_size=128M
ไม่แน่ใจว่าเกี่ยวข้องกับ INNODB หรือไม่ ขึ้นอยู่กับสิ่งที่ฉันสามารถหาได้เพิ่ม
innodb_flush_method = O_DIRECT
innodb_log_files_in_group = 2
innodb_flush_log_at_trx_commit = 1
innodb_file_per_table = 1
นั่นไม่ได้ช่วยอะไร ไม่ใช่ว่าฉันคาดว่าจะกำจัด "ฟังก์ชั่นที่มีอยู่" ... lol