MYSQL无法启动提示:Defaultstorageengine(InnoDB)isnotavailable的解决方法
2023-06-13 09:14:28 时间
在my.ini(linux下/etc/my.cnf)加上skip-innodb,就可以了。
我这样设置后,在linux下都没问题,今天在我本机winXP启动MYSQL,提示启动不起来。看下mysql目录的错误日志:
引用
09061310:15:27[ERROR]Defaultstorageengine(InnoDB)isnotavailable
09061310:15:27[ERROR]Aborting
09061310:15:27[Note]C:\www\mysql\bin\mysqld-nt:Shutdowncomplete
估计是上次加了参数后,一直没启动起来。。。已经很久没用本机的mysql了。
查了下,原来my.ini里有一句:default-storage-engine=INNODB,把默认的engine设为INNODB,而我又加了skip-innodb,怪不得启不来了。
将default-storage-engine改为MYISAM,MYSQL启动OK!
在skip-innodb下,data目录下的ibdata1,ib_logfile0,ib_logfile1这三个文件就不需要了,就可以删除。
测试了下,在没加skip-innodb时,删除了这三个文件,启动时会自动创建这三个文件,日志如下:
引用
InnoDB:Thefirstspecifieddatafile.\ibdata1didnotexist:
InnoDB:anewdatabasetobecreated!
09061310:19:37InnoDB:Settingfile.\ibdata1sizeto10MB
InnoDB:Databasephysicallywritesthefilefull:wait...
09061310:19:37InnoDB:Logfile.\ib_logfile0didnotexist:newtobecreated
InnoDB:Settinglogfile.\ib_logfile0sizeto24MB
InnoDB:Databasephysicallywritesthefilefull:wait...
09061310:19:38InnoDB:Logfile.\ib_logfile1didnotexist:newtobecreated
InnoDB:Settinglogfile.\ib_logfile1sizeto24MB
InnoDB:Databasephysicallywritesthefilefull:wait...
InnoDB:Doublewritebuffernotfound:creatingnew
InnoDB:Doublewritebuffercreated
InnoDB:Creatingforeignkeyconstraintsystemtables
InnoDB:Foreignkeyconstraintsystemtablescreated
09061310:19:39InnoDB:Started;logsequencenumber00
09061310:19:39[Note]C:\www\mysql\bin\mysqld-nt:readyforconnections.
再删除这三个文件,加了skip-innodb后,启动日志:
引用
09061310:30:12[Note]C:\www\mysql\bin\mysqld-nt:Normalshutdown
09061310:30:12[Note]C:\www\mysql\bin\mysqld-nt:Shutdowncomplete
09061310:30:17[Note]C:\www\mysql\bin\mysqld-nt:readyforconnections.
Version:"5.0.45"socket:""port:3306Sourcedistribution
那三个文件就不会自动产生了。
我这样设置后,在linux下都没问题,今天在我本机winXP启动MYSQL,提示启动不起来。看下mysql目录的错误日志:
引用
09061310:15:27[ERROR]Defaultstorageengine(InnoDB)isnotavailable
09061310:15:27[ERROR]Aborting
09061310:15:27[Note]C:\www\mysql\bin\mysqld-nt:Shutdowncomplete
估计是上次加了参数后,一直没启动起来。。。已经很久没用本机的mysql了。
查了下,原来my.ini里有一句:default-storage-engine=INNODB,把默认的engine设为INNODB,而我又加了skip-innodb,怪不得启不来了。
将default-storage-engine改为MYISAM,MYSQL启动OK!
在skip-innodb下,data目录下的ibdata1,ib_logfile0,ib_logfile1这三个文件就不需要了,就可以删除。
测试了下,在没加skip-innodb时,删除了这三个文件,启动时会自动创建这三个文件,日志如下:
引用
InnoDB:Thefirstspecifieddatafile.\ibdata1didnotexist:
InnoDB:anewdatabasetobecreated!
09061310:19:37InnoDB:Settingfile.\ibdata1sizeto10MB
InnoDB:Databasephysicallywritesthefilefull:wait...
09061310:19:37InnoDB:Logfile.\ib_logfile0didnotexist:newtobecreated
InnoDB:Settinglogfile.\ib_logfile0sizeto24MB
InnoDB:Databasephysicallywritesthefilefull:wait...
09061310:19:38InnoDB:Logfile.\ib_logfile1didnotexist:newtobecreated
InnoDB:Settinglogfile.\ib_logfile1sizeto24MB
InnoDB:Databasephysicallywritesthefilefull:wait...
InnoDB:Doublewritebuffernotfound:creatingnew
InnoDB:Doublewritebuffercreated
InnoDB:Creatingforeignkeyconstraintsystemtables
InnoDB:Foreignkeyconstraintsystemtablescreated
09061310:19:39InnoDB:Started;logsequencenumber00
09061310:19:39[Note]C:\www\mysql\bin\mysqld-nt:readyforconnections.
再删除这三个文件,加了skip-innodb后,启动日志:
引用
09061310:30:12[Note]C:\www\mysql\bin\mysqld-nt:Normalshutdown
09061310:30:12[Note]C:\www\mysql\bin\mysqld-nt:Shutdowncomplete
09061310:30:17[Note]C:\www\mysql\bin\mysqld-nt:readyforconnections.
Version:"5.0.45"socket:""port:3306Sourcedistribution
那三个文件就不会自动产生了。
相关文章
- 部署 Keepalived 实现 MySQL 双主高可用架构
- 解决MySQL错误代码2003(mysql错误代码2003)
- MySQL字符串分割:一种简单而有效的方法(mysql字符串分割)
- 解决MySQL配置文件修改问题(修改mysql的配置文件)
- MySQL退出及其存储过程管理(mysql退出存储过程)
- MySQL如何添加索引(mysql怎么加索引)
- MySQL数值格式化:改变数值显示形式(mysql数字格式化)
- 管理MySQL 对象管理:实现高效数据库管理(mysql的对象)
- MySQL查询所有表名称的方法(mysql查询所有表名)
- 利用MySQL实现高效关联查询两个数据表(mysql关联两个表)
- MySQL 数据库禁用 UDF 函数的方法简析(mysql禁用udf)
- MySQL实现快捷用户登录注册(mysql实现登录注册)
- 解决MySQL服务器编码问题(mysql服务器编码)
- MySQL索引性能测试实践(mysql索引测试)
- 解决MySQL数据库连接慢问题(mysql数据库连接慢)
- 使用Qt框架插入MySQL中的数据(qt插入mysql)
- MySQL中如何删除主外键(mysql主外键删除)
- 解决MySQL表中文乱码问题(mysql表中文乱码)
- 使用Hydra攻破MySQL服务器的心跳(hydra mysql)
- 解决 MySQL 数据库误删问题的有效方法(mysql数据库误删)
- 提高效率,优化MySQL:25种方法(mysql优化的方法)
- 「MySQL 存储过程日志:深入了解追溯及分析」(mysql存储过程日志)
- MySQL:批量修改字段值的一种新方法(mysql批量修改字段值)
- MySQL在CS架构开发中的应用(c s架构开发mysql)
- C语言程序可视化MySQL数据库信息(c mysql数据库显示)
- CGI无法连接MySQL解决繁杂问题的流程(cgi无法连接mysql)
- MySQL神器快速学习万能查询技巧(mysql万能查询)
- MySQL查询限制最大查询数量是多少(mysql 一次查询上限)
- MySQL去重复记录的方法及一对多关系的处理(mysql 一对多去重复)
- 使用 MySQL 存储和解析 XML 格式的数据(mysql xml格式)
- 如何在MySQL上下载数据(mysql上的数如何下载)
- MySQL服务未显示,如何解决(mysql不显示服务)
- mysql修改密码的三方法和忘记root密码的解决方法