闲来无事,在linux服务器上编译安装mysql,成功后停掉编译的mysql,启动系统自带的yum安装好的mysql,发现网站代码报错:“1286:Unknown table engine 'InnoDB' [ SQL语句 ] : SHOW COLUMNS FROM ......”,之前网站是正常的,为什么现在就不行了呢,看错误是InnoDB引擎缺失。
mysql客户端连接查看:
mysql -uroot -pxxx
mysql> show plugins;
+------------+--------+----------------+---------+---------+
| Name | Status | Type | Library | License |
+------------+--------+----------------+---------+---------+
| binlog | ACTIVE | STORAGE ENGINE | NULL | GPL |
| partition | ACTIVE | STORAGE ENGINE | NULL | GPL |
| CSV | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MEMORY | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MyISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
| MRG_MYISAM | ACTIVE | STORAGE ENGINE | NULL | GPL |
+------------+--------+----------------+---------+---------+
6 rows in set (0.00 sec)
百度搜索,找解决方案,成功解决办法如下:
进入mysql数据目录:
service mysqld stop
cd /var/lib/mysql
mkdir bak
mv ib_logfile* bak/
service mysqld start
问题解决,查看数据库数据并没有丢失。
删除临时备份目录即可:rm -rf bak/