MySql5.7之ERROR 1045 (28000)问题处理

MySql5.7之ERROR 1045 (28000)问题处理

文章目录

  • MySql5.7之ERROR 1045 (28000)问题处理
  • 1. ERROR 1045 (28000)问题
  • 2.问题原因
  • 3. 解决方法(重置密码)
    • 1. 修改my.ini配置
    • 2. 修改密码
    • 3. 刷新权限
    • 4. 再次修改my.ini配置

1. ERROR 1045 (28000)问题

  1. 时隔多日连接MySQL时出现了"ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)"的错误
  2. 输入的正确密码也无法连接

2.问题原因

引发问题的原因可能如下:

  1. 用户名或密码不正确:请确保输入的用户名和密码是正确的,注意区分大小写。
  2. 没有为用户授予足够的权限:用户可能没有足够的权限来访问数据库或执行特定的操作。
  3. 主机访问限制:MySQL 可能限制了从特定主机进行访问,需要确认连接的主机是否受到限制。
  4. MySQL 服务未启动:如果 MySQL 服务未启动,将无法连接到数据库。请确保 MySQL 服务已经启动。
  5. 一般这个错误是由密码错误引起,解决的办法自然就是重置密码

3. 解决方法(重置密码)

1. 修改my.ini配置

在my.ini中的[mysqld]配置中加入skip-grant-tables"配置如下:

[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=E:\MyZipServer\mysql-5.7.33-winx64
# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错,8.0以下版本需要配置数据目录
datadir=E:\MyZipServer\mysql-5.7.33-winx64\data
# 允许最大连接数
max_connections=20
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 跳过密码验证,解决"ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)"的问题
skip-grant-tables

2. 修改密码

执行下面语句中的任意一条修改即可,如下:

 alert user 'root'@'localhost' identified  by '你的新密码';
 # 或
 set password for 'root'@'localhost' = password('你的新密码')
  1. 如果执行上面命令后出现ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 的错误需要先刷新下权限,如下
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

3. 刷新权限

刷新权限后再执行修改密码的命令完成root密码的修改

# 完整的处理过程如下
mysql> set password for 'root'@'localhost' = password('xxx');
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> set password for 'root'@'localhost' = password('xxx');
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql>

4. 再次修改my.ini配置

  1. 密码修改完成后先停止服务;
  2. 然后将my.ini中配置的"skip-grant-tables"删除掉;
  3. 再重启服务问题解决

你可能感兴趣的:(MySQL8,MySQL5.7,mysql,mysql5.7,数据库,mysql8)