工具
MySQL8.0.22版本(安装版)
问题发现
起初,使用MYSQL Workbench时发现本地实例无法连接。信息窗口中显示"No connection established"的描述。
查看服务器状态,发现服务已停止。
在命令行窗口中cd到安装目录下尝试启动服务,发现服务名无效。
在任务管理器中寻找MYSQL服务。发现状态停止。
右键该服务,在服务窗口中尝试启动服务。(原本是网络服务,这里在服务属性中改成了本地登录。然而问题还是没有解决)
显示了“本地计算机上的MYSQL80服务启动后停止”的消息。折腾了半天百思不得其解。
问题解决
网上说基本是配置出错,于是到C:\ProgramData\MySQL\MySQL Server 8.0目录下查看my.ini文件。
找到datadir这一行后,去相应目录下查看文件。.err后缀的文件记录了过往错误信息。
最近一次的错误如下:
2021-01-20T08:54:55.567343Z 0 [System] [MY-010116] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe (mysqld 8.0.22) starting as process 12692
2021-01-20T08:54:55.585297Z 1 [ERROR] [MY-011011] [Server] Failed to find valid data directory.
2021-01-20T08:54:55.587173Z 0 [ERROR] [MY-010020] [Server] Data Dictionary initialization failed.
2021-01-20T08:54:55.588455Z 0 [ERROR] [MY-010119] [Server] Aborting
2021-01-20T08:54:55.644797Z 0 [System] [MY-010910] [Server] C:\Program Files\MySQL\MySQL Server 8.0\bin\mysqld.exe: Shutdown complete (mysqld 8.0.22) MySQL Community Server - GPL.
可以发现,设置的data路径无效。那什么才是有效的路径?
回到my.ini所属目录下,发现这里其实就有个DATA文件夹:
在my.ini中把"datadir="后面的路径改为这个Data文件夹的路径,问题终于解决了。MYSQL80服务正常启动。