数据库
技术随笔
Windows 下 MySQL 服务无法启动 / 1067 错误排查与解决
Windows 下 MySQL 服务无法启动(含 1067 进程意外终止)是较常见的问题。下面按“原因 → 解决”的思路整理排查步骤。
一、为什么启动不了
- 配置文件
my.ini缺失,或[mysqld]下 basedir / datadir 指向的目录不存在。 - MySQL 目录没有给系统(System)用户读写权限。
- 3306 端口被占用,需在 my.ini 改端口。
- 数据库文件损坏(非法关机等)。
二、命令行启停服务
net start mysql # 启动(多个实例用对应服务名,如 mysql_cy) net stop mysql # 停止
查看安装位置与数据目录:服务属性里的“可执行文件路径”中 --defaults-file=... 即 my.ini 位置;无该参数时一般在系统目录或 MySQL 安装目录下。
三、1067 错误的常见解决
- 先尝试
mysqladmin -u root -p shutdown关闭,再net start mysql。 - 检查 my.ini 的
[mysqld]下 basedir / datadir 是否指向真实存在的目录(重装或 Remove Instance 后常被重置)。 - 确认 MySQL 目录权限(System 用户可读写)。
- 删除
%windir%/my.ini后重新运行配置向导,或将安装目录下最新的 my.ini 拷贝覆盖。 - Linux 环境可把 mysql.server 放到 /etc/rc.d/init.d/ 并
chkconfig mysql.server on。
四、非法关机导致无法启动
用一份确认正常的 ibdata1、ib_logfile0、mysql.pid 及数据表文件覆盖损坏文件,再启动。
五、最后的办法:重装
1. 卸载 MySQL,清理安装目录和 Windows 目录下的 my.ini 2. 任务管理器结束 mysqld.exe 进程 3. cmd 执行:sc delete mysql # 清理注册服务 4. 重新安装并配置