我目前正在对 MySQL 中的所有数据库使用 InnoDB,但是我刚刚注意到我的 information_schema 数据库将 MyISAM 用于不是 MEMORY 的表。
我正在调查 InnoDB/MyISAM 问题。虽然我不认为这是它的原因,但我担心这种混合。该数据库最初是使用 MyISAM 建立的。后来更新了 my.cnf 文件以将引擎重置为 InnoDB。我正在使用 MySQL 5.5.10。
将 information_schema 数据库设置为 MyISAM,但将所有其他数据库设置为 MySQL,可能会出现哪些问题?
对于寻求帮助的人: 如果您在寻找答案时遇到此问题或想了解更多信息,请查看您的默认数据库引擎:
show variables;
要查看分配给数据库中表的引擎:
show table status;
我的 my.cnf 设置:
[client]
default-character-set=utf8
[mysqld]
log=/usr/local/var/mysql/mysqld.log
character-set-server = utf8
collation-server = utf8_general_ci
lower_case_table_names=2
default_storage_engine=InnoDB
# Performance hacks:
innodb_flush_method=nosync
innodb_flush_log_at_trx_commit=0