电脑配置:系统64位win10,MySQL8.0.16

第一坑,没有用管理员身份

第一次登录,打开cmd,执行net start mysql
报错:发生系统错误5
错误原因:没有用管理员身份运行cmd

第二坑,MySQL 服务无法启动

用管理员身份运行cmd,执行net start mysql
报错:

错误原因:

  1. MySQL安装时没有配置系统环境变量
  2. MySQL安装目录下没有my.ini配置文件
  3. 没有初始化MySQL(没有执行mysqld --initialize),执行后会在安装目录下生成data文件夹

1. MySQL安装时没有配置系统环境变量
可以参考文章:为什么需要配置环境变量

解决方法:

  1. 小娜搜索path(或者我的电脑->属性->高级系统属性->高级->环境变量->path),新建系统变量,
    变量名:MYSQL_HOME,变量值:C:\Program Files\MySQL\MySQL Server 8.0(安装文件夹路径)

DBeaver、Navicat、MySQL高频报错及解决方法,此文持续更新-LMLPHP

DBeaver、Navicat、MySQL高频报错及解决方法,此文持续更新-LMLPHP
2. path里新建环境变量:%MYSQL_HOME%\bin
3. 以管理员身份运行cmd,命令切换到MySQL安装路径下的bin文件夹:cd C:\Program Files\MySQL\MySQL Server 8.0\bin

2. MySQL安装目录下没有my.ini配置文件

解决方法:

  1. 在桌面新建my.ini文件,然后复制到MySQL安装文件夹下(c盘下面修改文件可能会有权限问题,可以换个角度从桌面复制文件到该文件夹下)
  2. my.ini文件内容

3. 没有初始化MySQL(没有执行mysqld --initialize),执行后会在安装目录下生成data文件夹

解决方法:
注:使用mysqld --initialize命令前,不要自己创建data目录,有data目录就先删除,
再使用mysqld --initialize,否则无法正常生成全部data目录文件。

第三坑,报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost'

服务启动之后,执行mysql -u root -p
报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost'

类似经典案例
Navicat 连接MySQL数据库出现错误:ERROR 1045 (28000): Access denied for user 'root'@'localhost'
错误原因:没有安装 MySQL
解决方法:mysql 8.0.20 winx64安装配置方法图文教程

4种错误原因:

1.MySQL的服务器停止了

解决方法:
重启MySQL服务器:net start mysql

2.用户的端口号或者IP导致拒绝访问

解决方法:

  • 若用户的端口号与IP(3306/3307)不一致,打开my.ini文件进行编辑。全部编辑替换为: port=X,3306~3309可选
  • my.ini文件可自己创建

3.MySQL的配置文件错误(my.ini等文件)

解决方法:
my.ini文件配置错误,可以参考以下文章,该文件已对my.ini文件进行了解释和注释。my.ini文件配置说明书

4.root用户的密码错误

解决方法:密码错误的话,这里有两种解决方法

  1. MySQL安装路径下data文件,用记事本打开.err后缀的文件,里面有密码。A temporary password is generated for root@localhost: 随机密码

DBeaver、Navicat、MySQL高频报错及解决方法,此文持续更新-LMLPHP

DBeaver、Navicat、MySQL高频报错及解决方法,此文持续更新-LMLPHP

  1. –init-file参数在服务启动时加载并运行修改密码的命令文件,该命令一旦执行,服务启动后密码即已经清除或者重置,启动服务后即可以空密码或指定密码登入。
  • 先关掉服务器:net stop mysql
  • 创建一个文本文件mysql.txt,内容:ALTER USER "root"@"localhost" IDENTIFIED BY "你的新密码";
  • 以管理员身份运行cmd,执行mysqld --init-file=C:\Program Files\MySQL\MySQL Server 8.0\mysql.txt --console
  • 重启服务器:net start mysql
  • 执行:mysql -u root -p
  • 输入新密码就可以了

第四坑,MySQL8.0后修改密码跟以前不一样

输入随机密码后,可以修改密码
注意,MySQL8.0后修改密码跟以前不一样,亲测下面代码可用

ALTER USER "root"@"localhost" IDENTIFIED BY "你的新密码";

参考:
[1]:https://www.yixuebiancheng.com/article/61525.html
[2]:https://www.jb51.net/article/186310.htm
[3]:https://blog.csdn.net/lienfeng6/article/details/78140404

04-11 16:55