MYSQL数据库突然消失

之前在下载mysql时发现没有my.ini。考虑到后面的项目可能需要,看着教程自己创建了一次,当时就发生了所有数据库消失的问题,近几天这种事件又发生了。我在服务里看到我有mysql和mysql57两个服务,启动一个的时候另一个就无法启动,发现有的数据库在mysql57里。mysql57是网络登录 mysql是本地系统。

1 my.ini没有配置文件的原因 

之前一直以为配置文件是在MYSQL下载的文件地址里,今天在排错时发现是在ProgramData存放数据的MYSQL文件里

2 新建my.ini后数据库消失的问题:

可能是因为MySQL的配置文件(my.ini或my.cnf)中的datadir参数指向了错误的目录。当手动创建my.ini时,如果没有正确设置datadir,MySQL可能会使用默认的数据目录,而这个目录可能没有之前的数据库文件,导致数据库“消失”了。 

3 mysql和mysql57问题

启动一个服务时,另一个无法启动,这可能是因为两个服务都试图监听相同的端口(默认3306),导致端口冲突。此外,每个服务可能使用不同的数据目录和配置文件,因此启动不同的服务会加载不同的数据库实例。

解决方案:

1. 确认服务配置信息

查看服务属性

  • 打开「服务」管理器,右键点击 MySQL57 和 MySQL 服务,选择「属性」。

  • 记录两者的「可执行文件路径」,找到 --defaults-file(配置文件路径)和 --datadir(数据目录路径)。

2. 停止并禁用冗余服务

保留一个服务

  • 以管理员身份运行CMD,停止并删除另一个服务:

sc stop MySQL  # 停止服务
sc delete MySQL  # 删除服务(谨慎操作!)

3. 统一配置文件与数据目录

检查 my.ini 配置

  • 打开保留服务的配置文件。

  • 确认以下关键参数:

[mysqld]
datadir=D:/MySQL/Data  # 确保指向实际数据目录
port=3306              # 避免端口冲突

4. 解决端口冲突

修改端口号

  • 如果需同时运行两个服务,编辑其中一个的 my.ini,修改端口:

[mysqld]
port=3307

最后重启。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值