天天看点

mysql启动报错

 mysql启动报错的原因常见的有一下几种:

   1、数据所在分区满了

   2、pid所在目录mysql用户没有写权限

   3、存储引擎为innodb引擎,这个时候启动的时候需要恢复所有的操作(select,create,drop,insert。update,delete),当不能有效的执行恢复操作的时候,mysql启动报错

    早上来上班的时候,被通知整栋大楼要停电,想了一下,公司机房还放了几台测试机,如果突然断电的话,会导致测试机中的虚拟机不可用,赶紧一台一台关机吧,其中有一台虚拟机上装着mysql,先进去把mysql关掉吧,避免等下开机启动mysql报错,然后依次关掉所有的虚拟机,最后宿主机

   最终断电了,来电之后,赶紧起机器 ,一切顺利,但是到mysql的时候

mysql启动报错

   我了个去,最不愿意看到的事还是发生了,一步一步检测吧

1、检查磁盘情况

磁盘空间还有很多,排除

2、检查pid文件是否存在,并查看其所在目录的权限

去相应目录查看

mysql启动报错

恩是有权限的,等等,我的pid文件呢?也就是说在启动的时候,mysql没有创建pid文件

手动创建一个试试

更改其属主属组

再启动,还报错

排除pid的问题

3、由配置文件可以,mysql存储引擎中有innodb,可能属于第三种情况

在配置文件中添加如下参数,然后启动

启动ok

注:

   启动成功之后, 把配置文件中该选项注释掉,然后重启数据库,要不然,很多操作都不支持了

innodb_force_recovery 参数含义如下

   默认为0 表示当需要恢复时,执行所有的恢复操作

   可以设置为1-6,当参数大于0的时候,可以对表进行slect,create,drop操作,但insert,update或者delect这类操作室不允许的

继续阅读