zoukankan      html  css  js  c++  java
  • 解决1130 Host 'localhost' is not allowed to connect to this MySQL server

     

    刚才更改了mysql的root用户密码后就报了【1130 Host 'localhost' is not allowed to connect to this MySQL server】错。

    原因:

    1.报这个错是没给改后的root用户授权,所以没有权限登录。

    2.但我觉得也可能是因为我更改后的密码直接是明文而不像mysql用语句或安装时创建是密文方式的,所以登录的时候无法获取到连接

    解决:

    【方案一】跳过授权来登录,然后删除root用户,然后再

    1.先把本地mysql服务关闭掉,然后通过在mysql安装目录下打开cmd运行以下跳过授权命令

    mysql>mysqld --skip-grant-tables

    执行过程需要一些时间,直到出现以上信息则表示mysql启动成功。注:不要关掉这个窗口,关闭的话mysql服务则会被关闭掉

    2.再执行命令进行登录

    mysql>mysql -uroot -p密码

    3.删除user表中的root用户,并创建与授权。

    mysql>use mysql;

    mysql>delete from user where user='root';

    mysql> CREATE USER 'root'@'localhost' IDENTIFIED BY 'root';

    4.在这个过程中可能会出现以下错误

    ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot exe

    1290错误需要执行将当前user和privilige表中的用户信息/权限设置从mysql库(MySQL数据库的内置库)中提取到内存里的命令

    mysql>flush privileges;

    ERROR 1396 (HY000): Operation CREATE USER failed for 'root'@'localhost'

    1396错误的原因是由于之前账号信息清理不干净。需要drop本地root信息

    mysql>drop user 'root'@'localhost';

    5.授权

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;

    mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'root';
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;

    mysql>flush privileges;

  • 相关阅读:
    python中的字典
    python中的元组操作
    python中的列表
    python中的内建函数
    python中格式化字符串
    34 哈夫曼编码
    33 构造哈夫曼树
    32 哈夫曼树
    31 树和森林的遍历
    30 森林和二叉树的转化(二叉树与多棵树之间的关系)
  • 原文地址:https://www.cnblogs.com/zhangheliang/p/10642830.html
Copyright © 2011-2022 走看看