客户反馈说mysql启动不了,报错信息:
本地计算机 上的 My5OL808 服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止。
查了不少资料,最后分析问题是这样的,手动或者重复安装mysql时,创建了多个mysql服务,当系统重启的时候,多个服务抢占资源,每个服务可能只抢占到一部分,这样服务便造成死锁,无法启动了。
这种情况要把数据备份好,重新安装数据库,详细步骤如下
- 卸载数据库
先检查一下服务中的mysql
卸载之后,这个也应该没有了,客户那边看到服务里面有很多个mysql服务,可以手动删除了:
cmd C:\Program Files\MySQL\MySQL Server 8.0\bin
mysqld.exe --remove MySQL80
将所有的mysql服务都删除掉,防止后期再影响。
将控制面板卸载程序面板中所有带mysql的都删除了。
- 重新安装
下面这一步,需要修改一下路径:
在默认路径的MySQL后面加上一个new,只有这样才能安装成功。
C:\Program Files\MySQLNew\MySQL Server 8.0
C:\ProgramData\MySQLNew\MySQL Server 8.0
(3)恢复数据
安装之后,服务里面会有:
先将服务停止。
原来的数据目录:
C:\ProgramData\MySQL\MySQL Server 8.0\Data
新安装的数据库的目录:
C:\ProgramData\MySQLNew\MySQL Server 8.0
然后将原来的数据库目录的四个文件(ib_buffer_pool、ibdata1、ibtmp1、mysql.ibd)复制过对应目录:
最后将 sys*(数据库表空间)文件夹也拷贝过来: