ERROR 1045 (28000): Access denied for user 'root'@'127.0.0.1' (using password: YES)

时间:2022-09-26 19:16:02

我的原因是在配置文件my.ini [mysqld]项,在其后加入了一句:skip-name-resolve

导致授权出现这个错误,把skip-name-resolve这项屏蔽了就好了。

 

场景2:对所有库所有表(*.*)授权时出现:ERROR 1045 (28000): Access denied for user 'root'@'127.0.0.1' (using password: YES)

ERROR 1045 (28000): Access denied for user 'root'@'127.0.0.1' (using password: YES)

解决方法:

  方法一:

    把 对所有库所有表(*.*)授权,改为对指定数据库授权(quant.*)。

  方法二:

    1. Navicat 连接数据库,打开 mysql 库下面的 user 表:

    ERROR 1045 (28000): Access denied for user 'root'@'127.0.0.1' (using password: YES)

    2. 右键单击选中 user 表中 localhost 记录,复制为 Insert 语句:

    ERROR 1045 (28000): Access denied for user 'root'@'127.0.0.1' (using password: YES)

    3. 新建查询,复制 2 中的 Insert 语句, 将 localhost 改为你要授权的ip,然后执行语句。ERROR 1045 (28000): Access denied for user 'root'@'127.0.0.1' (using password: YES)

  user表的权限列包括Select_priv、Insert_priv等以priv结尾的字段。

  这些字段的值只有Y和N。Y表示该权限可以用到所有数据库上;N表示该权限不能用到所有数据库上。

  mysql>flush privileges;

  具体参见:https://www.cnblogs.com/kissdodog/p/4173337.html