本地计算机上的MySQL80服务启动后停止某些服务在未由其他服务或程序使用时将自动停止(不需要清除数据)
以管理员输入以下命令启动MySQL(换成自己的MySQL安装路径)
cd 'C:\Program Files\MySQL\MySQL Server 8.0\bin'
.\mysqld --console
出现:无法创建……test文件和文件不存在或未找到
2025-02-08T14:16:32.219223Z 0 [System] [MY-010116] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.36) starting as process 2280
2025-02-08T14:16:32.224804Z 0 [Warning] [MY-010091] [Server] Can't create test file C:\Program Files\MySQL\MySQL Server 8.0\data\mysqld_tmp_file_case_insensitive_test.lower-test
2025-02-08T14:16:32.224989Z 0 [Warning] [MY-010091] [Server] Can't create test file C:\Program Files\MySQL\MySQL Server 8.0\data\mysqld_tmp_file_case_insensitive_test.lower-test
2025-02-08T14:16:32.225728Z 0 [ERROR] [MY-013276] [Server] Failed to set datadir to 'C:\Program Files\MySQL\MySQL Server 8.0\data\' (OS errno: 2 - No such file or directory)
2025-02-08T14:16:32.226723Z 0 [ERROR] [MY-010119] [Server] Aborting
2025-02-08T14:16:32.226933Z 0 [System] [MY-010910] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: Shutdown complete (mysqld 8.0.36) MySQL Community Server - GPL.
PS C:\Program Files\MySQL\MySQL Server 8.0\bin>
在[ERROR]那里根据报错找到指定目录创建文件夹,就可以秒杀 (无视配置文件信息)。我的datadir在ProgramData里,这里报错无法在Program Files设置datadir,Failed to set datadir to 'C:\Program Files\MySQL\MySQL Server 8.0\data\'这个路径下我没有data文件夹,新建一个就好,之后创建的数据库都在原来的地方,也就是配置里datadir的路径那里
以下是我的完整思路:
某天打开数据库,输入密码正确打开不了,输完密码回车,隔了2秒给我关了
让我瞅瞅问题是啥
一开始以为是我这段时间白嫖的navicat出错影响的,那卸了
无效 ̄へ ̄
把这段时间下载的Android模拟器也卸了
无效(╬ ̄皿 ̄)
手动启动服务报错
管理员身份打开命令行 ,发现它启动开始后无法启动
接着进入数据库安装目录的bin目录输入
.\mysqld --console
发现我的问题是: Failed to set datadir to 'C:\Program Files\MySQL\MySQL Server 8.0\data\' (OS errno: 2 - No such file or directory),它说我数据目录(datadir)没有,因为笔者数据目录不在Program Files文件夹下,那肯定没有啊
打开配置文件,Ctrl F查看datadir
不是,哥们,最后那个Data前面的“/”怎么变成“\”了Σヽ(゚Д ゚; )ノ
在命令行输入
notepad C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
然后修改配置文件并保存
无效(╬ ̄皿 ̄)
但是指定datadir文件路径
.\mysqld --console --datadir="C:\ProgramData\MySQL\MySQL Server 8.0\Data"
可以打开我的MySQL,难道不止一个ini文件?
经过测试,我只有一个ini文件,回到报错点
[Warning] [MY-010091] [Server] Can't create test file C:\Program Files\MySQL\MySQL Server 8.0\data\mysqld_tmp_file_case_insensitive_test.lower-test
这是一个警告,无法在这个目录下创建测试文件,笔者在这个目录下需要管理员权限才能创建,我创建了一个data文件
秒杀
新建一个数据库ceshi,创建的文件夹就在我配置文件的Data而不是新建的data文件夹里