mysql无法启动服务,mysql卡死解决办法
今天在用mysql的innodb引擎时突然出现InnoDB registration as a STORAGE ENGINE failed.Unknown/unsupported table type: innodb.系统变得无法正常启动了,经过分析做个记录以借再次碰到此类问题的同学参考.
前几天,启动mysql时,突然报1067系统错误,死活无法启动,当时不管三七二十八,重装,清空注册表,重启,仍然没办法启动.
总是在安装后的配置那里最后一步启动服务的界面卡死,半天没反应,折腾了两三个小时,才猛然想起,该去看看日志,代码如下:
- 11022315:58:08[Note]Plugin'FEDERATED'isdisabled.
- 11022315:58:08InnoDB:Initializingbufferpool,size=17.0M
- 11022315:58:08InnoDB:Completedinitializationofbufferpool
- InnoDB:Novalidcheckpointfound.
- InnoDB:IfthiserrorappearswhenyouarecreatinganInnoDBdatabase,
- InnoDB:theproblemmaybethatduringanearlierattemptyoumanaged
- InnoDB:tocreatetheInnoDBdatafiles,butlogfilecreationfailed.
- InnoDB:Ifthatisthecase,pleasereferto
- InnoDB:http://dev.mysql.com/doc/refman/5.1/en/error-creating-innodb.html--phpfensi.com
- 11022315:58:08[ERROR]Plugin'InnoDB'initfunctionreturnederror.
- 11022315:58:08[ERROR]Plugin'InnoDB'registrationasaSTORAGEENGINEfailed.
- 11022315:58:08[ERROR]Unknown/unsupportedtabletype:innodb
- 11022315:58:08[ERROR]Aborting
大意是innodb初始化失败,不认识innodb类型.
google了一下,把my.ini文件打开,更改default-storage-engine=innodb为default-storage-engine=myism.
启动成功,但是建表时找不到innodb引擎了,但想着,也不能老这样啊,这样innodb也用不了了,有google了一下,主要是innodb日志大小不对造成的.
innodb_buffer_pool_size=512M
innodb_log_file_size=128M
把以上几个参数调大点,然后把ibdata1,ib_logfile0,ib_logfile1这三个文件删除后,再重启服务就好了.
如果还是不行,在my.ini文件里还需要加入tmpdir="usr/tmp"这样的路径,因为innodb还需要一个临时的文件缓存区.
还遇到的问题是密码正确,但GUI工具无法登陆,可以先用配置程序修改密码,然后在命令行下登陆刷新权限就可以了,flush privilege.
记录下来,仅供遇到此类问题的同学参考。
热门评论