MySQL 重新安装时服务启动失败的解决实例

 在重新安装系统后再重新安装MySQL同时希望以前的数据能保留下来,一般是直接覆盖安装到原来的文件夹,此时经常会出现服务启动失败的情况。

在经过多次有反复卸载/安装仍失败后我在网上查找解决办法,没有找到真正的解决办法但找到一些提示,经过我的实际操作把这个问题解决了,这里说一下解决办法。

1. 安装成功后继续配置向导直到最后出现服务启动失败界面(配置向导参见Apache+PHP+MySQL配置),点“取消(Cancel)”退出安装。

2. 打开mysql安装目录下的data子目录,找到“<计算机名>.err”文件,用记事本打开,找到最后一段错误原因,比如:
InnoDB: Error: log file .\ib_logfile0 is of different size 0 37748736 bytes
InnoDB: than specified in the .cnf file 0 36700160 bytes!
090325 12:31:20 [ERROR] Default storage engine (InnoDB) is not available
090325 12:31:20 [ERROR] Aborting

090325 12:31:20 [Note] F:\mysql5.0\bin\mysqld-nt: Shutdown complete
错误原因是日志文件实际大小与配置文件中设置的大小不一致。这里日志文件的实际大小是37748736 bytes(=36M),而配置文件中设置的大小是36700160 bytes(=35M)。
bytes换算成M的公式是:实际大小/1048576,即1M=1048576bytes,如37748736bytes/1048576=36M。

3. 打开mysql安装目录下my.ini文件(老版本可能安装在%windir%目录下),打开可以找到“innodb_log_file_size=35M”一行,修改成“innodb_log_file_size=36M”,然后保存。

4. 启动MySQL服务(方法1:服务控制台启动;方法2:“net start mysql”命令行启动;方法3:重启系统自启动),一般可以解决此类问题。

这种情况下,即使第1步设置root密码与原来的密码不一致也不会影响服务的启动,在登录MySql Command Line Client时会自动验证root的密码,只有用原来正确的root密码才能登录。

Tags: ,

Leave a Reply