连接mysql时出现error 1130是为什么

连接mysql时出现error 1130是为什么,第1张

1、先把data备份一下,只要数据没有破坏,大不了重新安装一个mysql恢复一下数据即可。

2、说一下你用的命令吧,ERROR 1130: Host xxx.xxx.xxx.xxx is not allowed to connect to this

MySQL server 是无法给远程连接的用户权限问题

3、mysql命令窗口一输入密码就自动关闭可能是mysql服务没有启动或者服务有问题了。

4、检查一下mysql端口3306是否开启,windows用netstat -an(linux用netstat -ntlp)

5、如果密码被修改了,就重置一下密码,方法是在my.ini或者my.cnf增加一行skip-grant-tables

重启mysql后,无密码登陆

6、查询你的mysql都有哪些用户,root用户一般会有好几个

mysql -uroot -p -Dmysql -e “select user,host,password from user”

root | localhost |

root | 127.0.0.1|

root | %|

| localhost |

注意一下host是允许此用户访问的主机,%是允许所有主机访问的用户。有一个空白用户,如果这个空用户被删除了,你直接用mysql命令就不能登陆了,必须用-u参数指定用户。

7、修改密码命令

mysql -uroot -p -Dmysql -e “update user set password=password(‘123456’) where user=’root’”

解决方法:

1,改表法。可能是帐号不允许从远程登陆,只能在localhost。

只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -pvmwaremysql>use mysqlmysql>update user set host = '%' where user = 'root'mysql>select host, user from user

2,授权法。

例如,希望myuser使用mypassword从任何主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY 'mypassword' WITH GRANT OPTION

允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码:

GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY 'mypassword' WITH GRANT OPTION

找到文件my.ini(mysql路径下),找到[mysqld],添加skip-grant-tables

[mysqld]

......

skip-grant-tables

重启mysql,以root用户登录(不需要输入密码)

在sql标签下,运行以下sql语句

flush privileges

grant all privileges on *.* to root@'localhost' identified by "你的密码"

到my.ini文件下注释掉之前添加的skip-grant-tables (一定要记得这步)

重启mysql,就可以了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6160488.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-16
下一篇 2023-03-16

发表评论

登录后才能评论

评论列表(0条)

保存