Linux修改MySql默认存储引擎为InnoDB

时间:2022-05-01 07:33:51
一、关闭相关应用

二、停止mysql
bin/mysqladmin -u root -p shutdown

注意:可能出现以下错误

错误如下:

Timeout error occurred trying to stop MySQL Daemon.

Stopping mysqld:                                           [FAILED]

Starting mysqld:                                           [  OK  ]


解决办法:

[root@AY140624215512103ccdZ local]#

Solution (force kill mysqld - warning you do risk table corruption here but there's no choice if you want your DB up right away)

[root@AY140624215512103ccdZ local]# killall -9 mysqld

[root@AY140624215512103ccdZ local]# service mysqld restart

Stopping mysqld:                                           [  OK  ]

Starting mysqld:                                           [  OK  ]


三、备份my.cnf
cd /etc
cp my.cnf my.cnf_bak

四、修改my.cnf
[mysqld] 后加入
vi my.cnf
default-storage-engine=InnoDB

 

五、删除/mysql/data目录下的ib_logfile0,ib_logfile1

否则在启动mysql时会遇到下述错误:
[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
[ERROR] Unknown/unsupported table type: InnoDB
[ERROR] Aborting

六、启动mysql
cd /home/administrator/mysql
bin/mysqld_safe -user=root &

七、登录mysql检查修改是否成功
mysql -h ip -u root -p

mysql>show engines;
mysql>show variables like'storage_engine';
+----------------+--------+
| Variable_name  | Value  |
+----------------+--------+
| storage_engine | InnoDB |
+----------------+--------+