问题描述

本机系统已经安装了mysql,为了部署mysql主从,复制已安装mysql文件夹,修改端口 + 基础目录 + 数据目录,然后安装服务,启动服务时报错

MySQL启动1067错误 mysql启动服务1067错误_解决方法

操作描述

  1. 复制之前 MySQL 目录
  2. 修改my.ini
    1) 修改端口
    2) 修改基础目录地址
    3) 修改数据文件地址
  3. 安装服务
cd C:\Program Files\MySQL\mysql-sl
mysqld install xiaozhengmysql --defaults-file="C:\Program Files\MySQL\mysql-sl\my.ini"

xiaozhengmysql是服务名称

MySQL启动1067错误 mysql启动服务1067错误_MySQL_02



【注意】1、若安装denied,则有可能是权限问题,需要用管理员权限打开cmd,看下图


4. 启动服务和停止服务

在安装服务时,会自启动,发现启动失败,但是看不到任何错误信息,因此只能,手动停止mysql服务,然后启动mysql服务

net stop xiaozhengmysql
net start xiaozhengmysql

MySQL启动1067错误 mysql启动服务1067错误_MySQL_03

解决方案(网上常用两种)

  1. 第一种解决方法:修改my.ini,将innodb修改为:MYISAM
default-storage-engine=MYISAM

MySQL启动1067错误 mysql启动服务1067错误_mysql_04


试过不行

  1. 第二种解决方法:检查数据data目录,发现缺少user.frm、user.MYD、user.MYI三个文件
  2. 第三种解决方法,也就是个人的解决方法
    每次在修改端口的时候发现,

    原因是:mysql我安装在C:\Program Files,同样复制到当前文件夹,一直报权限不够
    检查了一下,也没有去分配文件夹权限。
    只能尝试将文件夹复制到D盘,修改my.ini内容将没有提示权限不足的错误了,重新安装,发现可以了
  3. 第四种解决方法,再次安装mysql软件,选择不一样的端口 + 目录即可(未测试过)

总结

一般来说,创建文件夹最好不要带空格与特殊字符,特别是空格,有可能会导致某种报错,这种错误是非常难以排查的。
在寻找解决方法中,也尝试去掉空格与特殊字符,发现还是不行
2. 考虑权限,如果你执行某些配置总是弹出授权等等,可能是权限影响了,要一步步排除这些干扰才能解决问题

删除服务命令

sc delete 服务名称
例如:
sc delete xiaozhengmysql