admin管理员组文章数量:1566353
电脑由于断电或其他原因死机,重新启动后,电脑里面的mysql服务无法正常启动,报数据不一致或者表空间列法找到等错误。此种情况下,通过如下步骤可正常恢复,亲测可用,环境为macOS, mysql5.7, InnoDB。
1. 修改mysql配置文件myf,增加innodb_force_recovery = 5.
2. 试着启动mysql服务,若不能启动可将innodb_force_recovery的值设置为6,再试一下。mysql若能正常启动,则可采用此方案,否则需要采用其他办法。此种办法启动后的mysql属于只读模式,不能写入数据。
3. 使用mysqldump命令备份数据库,此命令可将实例中的所有数据库均备份:mysqldump -uroot -pxxx --all-databases > all.sql
4. 停止数据库,删除data目录(删除前最好备份,以防万一),使用mysqld --initialize命令重新初始化数据库。此命令运行成功后,控制台上会打出预设的root用户密码,需要记下此密码,后面登陆后需要先修改密码,才可以进行其他操作。
5. 删除myf中的innodb_force_recovery参数,重新启动数据库,然后在命令行使用mysql -uroot -p,输入上步中得到密码登录数据。
6. 使用下述命令修改密码:
SET PASSWORD = PASSWORD('你的新密码');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;
7. 恢复之前通过mysqldump备份的数据,执行mysql -uroot -p < all.sql
然后再登录数据库就可看到发生故障时的数据了,数据库恢复正常。
版权声明:本文标题:突然关机重启后mysql打不开_电脑突然死机后mysql无法启动 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1727526610a1119196.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论