MySQL 报 1045 错误解决方法


MySQL在使用root密码登陆报  1045  

ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)

======2020年7月30日更新======

1、修改密码:

登录到面板上修改mysql数据库root用户的密码:


mysql修改密码.jpg (21.91 KB, 下载次数: 37)

下载附件

2020-7-30 17:22 上传

如果修改后还不行,请根据下面的操作一步一步来。


=====2020年7月16日更新======


1、必须提前准备下面操作方可执行免密钥登录(否则会出现数据丢失)
原因:为了安全  为了安全  为了安全(重要事情说三遍)



操作方式:
1、打开面板安装系统防火墙:



系统防火墙.jpg (64.22 KB, 下载次数: 40)

下载附件

2020-7-16 11:38 上传


2、设置放行仅仅允许本机ip访问3306


仅仅允许本机访问.jpg (40.98 KB, 下载次数: 36)

下载附件

2020-7-16 11:41 上传

错误可能原因:

1、有空用户的现象,MySQL官方的BUG,优先匹配到空用户

2、权限错误

一、空用户问题解决方法

先修改下mysql的配置文件,设置免密钥登陆:

修改为免密码登录.png (87.25 KB, 下载次数: 100)

下载附件

2019-11-18 15:58 上传

skip-grant-tables

然后重新启动mysql,

  1. /etc/init.d/mysqld restart

复制代码

在mysql命令行中执行下面命令:


命令行中执行.png (31.47 KB, 下载次数: 75)

下载附件

2019-11-18 15:58 上传

  1. USE  mysql;
  2. Delete FROM user Where User=”  and Host=’localhost’;
  3. FLUSH  PRIVILEGES;

复制代码

执行完后将刚才添加的

skip-grant-tables 注释 然后重新启动mysql

现在再用账号密码登陆就可以登陆进去了。

二、MySQL  root权限导致的无法登录

1、同样是修改成免密码登录的方式:

2、重启数据库:

  1. /etc/init.d/mysqld restart

复制代码

3.1、MySQL 5.6版本以及以下的更改root权限:

  1. UPDATE  mysql.user set password=password(‘root 用户密码’)  WHERE user=’root’ AND host=’localhost’;
  2. FLUSH  PRIVILEGES;

复制代码 3.2、MySQL5.7版本以及以上的更改root密码和权限:
小知识点:在MySQL5.7.9版本后废弃了password字段和password()函数,所以先将authentication_string设置为空然后在修改密码和权限,密码必须包含大写字母、数字、特殊符号这样才安全。


1、将authentication_string 字段设置为空

  1. update user set authentication_string=” where user=’root’;

复制代码
2、然后退出MySQL命令行,删除/etc/my.cnf 中的 skip-grant-tables ,重启MySQL服务(/etc/init.d/mysqld restart)

  1. ALTER user ‘root’@’localhost’ IDENTIFIED BY ‘大写字母、数字、特殊符号’;
  2. FLUSH PRIVILEGES;

复制代码

4、注销跳过密码登录的配置,
删除系统防火墙中指定ip访问的配置(不要忘记这个步骤)

然后重启mysql数据库,使用root登录就正常了


说明:

root用户使用localhost权限在linux默认中走的是Unix域套接字,在登录时候直接套接字进行通信,无需使用其他通信,
127.0.0.1这个是使用的tcp/ip协议进行登录数据库的,所以在使用过程中,如果不在登录命令中加上 -h,默认是unix套接字。
这也是   有些情况下使用远程登录工具可以正常登录,但是使用面板上的备份、计划任务中备份数据库  使用mysql -uroot -proot密码登录时候报1045 的原因


转自   https://www.bt.cn/bbs/forum.php?mod=viewthread&tid=40225&extra=page%3D4%26filter%3Dtypeid%26typeid%3D10