首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL数据库引擎: MyISAM用于information_schema,而InnoDB用于其他数据库

问MySQL数据库引擎: MyISAM用于information_schema,而InnoDB用于其他数据库
EN

Stack Overflow用户
提问于 2012-04-24 19:30:14
回答 1查看 2.4K关注 0票数 8

我目前正在MySQL中的所有数据库中使用MyISAM,但是我刚刚注意到,对于不是内存的表,我的information_schema数据库使用MyISAM。

我正在调查InnoDB/MyISAM问题。虽然我不认为这是原因,但我担心这种混合。数据库最初是用MyISAM建立的。稍后,更新my.cnf文件以将引擎重置为InnoDB。我使用的是MySQL 5.5.10。

如果将information_schema数据库设置为MyISAM,但将所有其他数据库设置为MySQL?,可能会出现哪些问题?

用于那些寻求帮助的人:--如果您遇到这个问题以寻找答案或想知道更多信息,请查看默认的数据库引擎:

代码语言:javascript
复制
show variables;

若要查看分配给数据库中表的引擎:

代码语言:javascript
复制
show table status;

我的my.cnf设置:

代码语言:javascript
复制
[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
EN

回答 1

Stack Overflow用户

发布于 2012-04-24 20:06:04

使用的存储引擎是按表计算的.在创建新表时使用默认存储引擎,并且不为新表指定存储引擎。

无论您将默认存储引擎设置为什么,系统表都应该是MyISAM。

来自MySQL文档

重要 不要将MySQL数据库(例如用户或主机)中的mysql系统表转换为InnoDB类型。这是一个不受支持的操作。系统表必须始终为MyISAM类型。

如果不直接查询information_schema表,则不需要混合这些类型。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10304719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档