当前位置: 首页 > news >正文

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

最后重启。

http://www.xdnf.cn/news/281089.html

相关文章:

  • 【漫话机器学习系列】238.训练误差与测试误差(Training Error And Test Error)
  • [特殊字符] 人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总) [特殊字符]
  • 引入spdlog后程序链接很慢
  • 使用 OpenCV 和 Dlib实现轮廓绘制
  • 「Mac畅玩AIGC与多模态18」开发篇14 - 多字段输出与结构控制工作流示例
  • 【MySQL】用户管理
  • Javascript学习笔记1——数据类型
  • 【哈希表的简单介绍】
  • Python|Pyppeteer实现自动登录小红书(32)
  • PyQt5基本介绍
  • 第八章.javaI/O和反射机制
  • 【深度解析】DCN-V2:Google新一代特征交叉网络,如何实现推荐系统精准度飞跃?
  • [硬件电路-7]:模拟电路常见元器件 - 功率检测与PD光电二极管
  • SpringBoot简介详解:从入门到精通
  • 学习方法讨论——正论科举精神的内核
  • 51单片机入门教程——每个音符对应的重装载值
  • 解决在 Linux 中 WPS 字体缺失问题
  • 算法学习时段效能分布
  • GateWay使用
  • Linux系统之----进程控制
  • 【C++】哈希表
  • 调试Cortex-M85 MCU启动汇编和链接命令文件 - 解题一则
  • JAVA---多态
  • 文章记单词 | 第61篇(六级)
  • SpringBoot的启动流程
  • Encoder和Decoder的区别
  • MySQL Binlog二进制格式与解析详解
  • MySQL — 数据查询
  • 如何提高情商?(优化版)
  • 【RocketMQ Broker 相关源码】- broker 启动源码(1)