您的位置:首页 > 数据库 > MySQL

MySQL更改数据存储引擎,禁用innodb

2014-01-02 16:12 585 查看
INNODB是MySQL被ORACLE收购后开发的,支持事务和行级锁等高级功能,但是并不是所有人都需要INNODB的,对大部分人来说,以前的MYISAM引擎就够了,一般会选择将默认引擎改为MYISAM,但是INNODB还是会耗费内存和硬盘,这时候,就需要把INNODB彻底禁用。

 


一、MySQL引擎更改

 
5.6以前的MySQL中,如下设置

 

default-storage-engine=MYISAM
skip-innodb

 

 MySQL5.6以后,这么设置是没法启动的,需要再增加一句设置

 
default-tmp-storage-engine=MYISAM


 

不仅如此,还需要添加以下配置,否则程序会很容易退出的:
loose-innodb-trx=0

loose-innodb-locks=0

loose-innodb-lock-waits=0

loose-innodb-cmp=0

loose-innodb-cmp-per-index=0

loose-innodb-cmp-per-index-reset=0

loose-innodb-cmp-reset=0

loose-innodb-cmpmem=0

loose-innodb-cmpmem-reset=0

loose-innodb-buffer-page=0

loose-innodb-buffer-page-lru=0

loose-innodb-buffer-pool-stats=0

loose-innodb-metrics=0

loose-innodb-ft-default-stopword=0

loose-innodb-ft-inserted=0

loose-innodb-ft-deleted=0

loose-innodb-ft-being-deleted=0

loose-innodb-ft-config=0

loose-innodb-ft-index-cache=0

loose-innodb-ft-index-table=0

loose-innodb-sys-tables=0

loose-innodb-sys-tablestats=0

loose-innodb-sys-indexes=0

loose-innodb-sys-columns=0

loose-innodb-sys-fields=0

loose-innodb-sys-foreign=0

loose-innodb-sys-foreign-cols=0


 


二、确认 MySQL 服务器 是否启用 InnoDB   存储引擎


1.SHOW  ENGINES; "InnoDB"   对应的  "Support"等于 “NO”  ,表示未启用  InnoDB  存储引擎。

2.“SHOW CREATE TABLE 表名”  查看

3.SHOW TABLE STATUS from  数据库库名  where Name='表名';

4.mysqlshow  -u 数据库登录帐号 -p '数据库登录帐号密码'   --status   数据库库名   表名

 

 三、修改mysql存储引擎

alter table 表名 type = myisam;

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息