Mysql远程连接报错:SQL Error (1130): Host '192.168.61.128' is not allowed to connect to this MySQL server

连接linux中的MySQL报错问题:

SQL Error (1130): Host '192.168.1.126' is not allowed to connect to this MySQL server

说明你所连接的用户账户没有远程连接的权限,只能在本机localhost登录

需要更改 mysql 数据库里的 user表里的 host字段,把localhost改为%

设置的远程连接步骤,请参考:

 1.登录MySQL

  mysql -uroot -proot

2.进入数据库

  use mysql;

3.查看是否有user表

 show tables;

4.更改host字段值
 update user set host='%' where host = 'localhost';

5.刷新

flush privileges;

6.查看
 select host,user from user;

Mysql远程连接报错:SQL Error (1130): Host '192.168.61.128' is not allowed to connect to this MySQL server_第1张图片

出现上面的界面,说明远程连接成功,最后quit退出了。。

 

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

打开MySQL目录下的my.ini文件,在文件的最后添加一行“skip-grant-tables”,保存并关闭文件。(Win10默认安装,my.ini在C:\ProgramData\MySQL\MySQL Server 5.7)(注意:这个文件夹默认隐藏了,要显示隐藏)

Mysql远程连接报错:SQL Error (1130): Host '192.168.61.128' is not allowed to connect to this MySQL server_第2张图片
重启MySQL57和MySQL Router服务。
通过命令行窗口进入MySQL的bin目录,输入“mysql -u root -p”(不输入密码),回车即可进入数据库。(Win10默认安装,bin目录为:C:\Program Files\MySQL\MySQL Server 5.7\bin
执行“use mysql”,使用MySQL数据库。
执行“ update user set authentication_string=PASSWORD("此处请输入您要设定的密码") where user='root';

注意密码格式:至少包含一个大写字母、一个小写字母、一个特殊符号、一个数字,密码长度至少为8个字符。
打开MySQL目录下的my.ini文件,删除最后一行的“skip-grant-tables”,保存并关闭文件。
重启MySQL57和MySQL Router服务。
在命令行中输入“mysql -u root -p”,回车,然后输入您设置的密码即可成功连接数据库。

补充:Linux下MySQL的配置文件是my.cnf,一般会放在/etc/my.cnf,/etc/mysql/my.cnf。如果找不到,可以用find命令查找

日志文件:如果是windows下,一般是安装目录下的data目录下 扩展名是.err那个文件,可以打开my.ini文件检查一下。
如果是linux下,一般是/var/log/mysqld.log,你最好用cat /etc/my.cnf看看

 

你可能感兴趣的:(mysql)