【转载】Windows下mysql8修改my.ini设置datadir后无法启动问题

mysql默认数据库文件在安装目录下。创建数据库的时候,并不能指定数据文件存放位置。这就很扯。它只能通过修改mysql.ini来更改数据文件存放目录,而且是一刀切的,没有办法做到数据文件和日志文件分开存放。假如服务器有多个盘,就不能利用磁盘不同IO的优势。但是,既然是服务器,通常会做阵列的吧,做了阵列,就无所谓哪个盘了。

我这次要说的,是修改mysql.ini后,mysql无法启动的问题。我遇到的是2个原因:一个是mysql.ini修改后字符编码被改变,导致mysql无法识别;另一个是存放mysql数据文件的新路径没有足够权限。

1、字符编码问题

一般来说,mysql.ini位于mysql安装目录下。但其实并不准确,像我的操作系统是win10,mysql默认安装在c:\program files,但mysql.ini位于C:\ProgramData\MySQL\MySQL Server 8.0。这是一个隐藏的文件夹。

如果要改变数据文件的存储路径,就要修改mysql.ini。mysql.init默认字符编码是ANSI,保存后,就有可能会改变其字符编码为UTF-8,导致mysql无法识别,从而无法启动mysql。

如果要改变数据文件的存储路径,就要修改mysql.ini。mysql.init默认字符编码是ANSI,保存后,就有可能会改变其字符编码为UTF-8,导致mysql无法识别,从而无法启动mysql。

正确做法是:
1)首先备份一个mysql.ini。切记!!!

2)用记事本打开mysql.ini,修改mysql.ini里的datadir。

3)mysql.ini默认字符编码是ANSI。所以修改后,用记事本另存为,记得选字符编码为ANSI。

【转载】Windows下mysql8修改my.ini设置datadir后无法启动问题

2、新路径权限问题

如上所述,我将datadir修改成新的路径e:\mysql\Data,同时将C:\ProgramData\MySQL\MySQL Server 8.0\Data拷贝到新路径。但要注意,这个文件夹必须要有足够的权限,mysql才能使用。其中,关键的权限是SYSTEM或NETWORK SERVICE要有全部权限。

【转载】Windows下mysql8修改my.ini设置datadir后无法启动问题

也有可能是network service。这个可能是跟安装时的环境有关。最好是看一下原先数据存放点C:\ProgramData\MySQL\MySQL Server 8.0\Data的安全属性。

【转载】Windows下mysql8修改my.ini设置datadir后无法启动问题

版权说明:本文为转载文章,版权归原作者所有,如若转载,请注明原文出处和链接。
原文出处:CSDN左直拳
原文链接:https://blog.csdn.net/leftfist/article/details/134127291

(0)
打赏 微信扫一扫 微信扫一扫
麒麟的头像麒麟
上一篇 2022-08-31 18:19
下一篇 2019-10-30 09:59

相关推荐