uyfrjk 发表于 2018-9-28 11:20:25

解决远程连接mysql错误1130的方法

  解决远程连接mysql错误1130代码的方法
  今天在用远程连接Mysql服务器的数据库,不管怎么弄都是连接不到,错误代码是1130,ERROR 1130: Host 192.168.2.159 is not allowed to connect to this MySQL server
  猜想是无法给远程连接的用户权限问题。结果这样子操作mysql库,即可解决。在本机登入mysql后,更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。。
  mysql -u root -p
  mysql>use mysql;
  mysql>select 'host' from user where user='root';
  mysql>update user set host = '%' where user ='root';
  mysql>flush privileges;
  mysql>select 'host' from user where user='root';
  第一句是以权限用户root登录
  第二句:选择mysql库
  第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)
  第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址
  第五句:刷新MySQL的系统权限相关表
  第六句:再重新查看user表时,有修改。。
  重起mysql服务即可完成。
  ============================
  一、通过MySQL-Front或mysql administrator连接mysql的时候发生的这个错误
  ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server
  说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。
  需更改 mysql 数据库里的 user表里的 host项
  把localhost改称%
  首先按下面的步骤登录Mysql服务器
  登录mysql需要切换到dos下的mysql的bin目录,进行如下操作:
  语法格式:mysql -h host_name -u user_name -p password (本机的话-h 和host_name可省)
  例如:
  C:\program files\mysql\mysql server 5.0\bin>mysql -u root -p
  Enter password:******
  先输入用户名和密码登陆要求(-p),回车后等出现"Enter password:",再输入密码回车,这样就可以
  成功登陆mysql,否则将会登陆失败。
  登陆成功后会显示如下信息及Mysql标识符:
  Welcome to the MySQL monitor. Commands end with ; or \g.

  Your MySQL connection>  Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
  mysql>
  标识符"mysql>",当你看到这个出现在窗口的最左边的顶格时,这就是告诉你,你可以输入命令进行操作了。
  mysql> \s 查看版本信息
  mysql> \q or mysql> quit 退出mysql数据库服务器
  mysql> \h or mysql> help 查看帮助(其他的数据库服务器相关命令)
  二、登录成功后可通过以下步骤对用户进行权限更改
  mysql>use mysql;
  mysql>update user set host = '%' where user ='root';
  mysql>flush privileges;
  mysql>select 'host','user' from user where user='root';
  mysql>quit
  退出后会回到DOS正常的提示符状态,此时可以通过远程连接Mysql了!
  ========================================
  My
  SQL 用户帐号的修改 error 1130
  2007-09-07 09:18
  MySQL上的一个数据库要备份,装了个MySQL的gui工具。打开"MySQL Administrator"工具,填好用户名和密码却登录不了,老是报这个错“ERROR 1130: Host 'lijuan-' is not allowed to connect to this MySQL server”。网上查了下,有这两个方法解决:
  解决方法:
  1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
  mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
  2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。

  GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'>  如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码

  GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'>  我的mysql.user里root用户的host果然是localhost,先用改表法给localhost改成“%”,还是不行,仍然报1130的错误,又按“从任何主机连接到mysql服务器”方法授权,还是报一样的错,最后给自己的ip授权之后,终于登录上了。。。。
  乎乎。。。
  mysql的ERROR 1045 在上面情况后如再出现客户段1045可在服务器执行如下
  UPDATE user SET Password=PASSWORD('123456') where USER='myuser';
  FLUSH PRIVILEGES;

页: [1]
查看完整版本: 解决远程连接mysql错误1130的方法