
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’”
找到文件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,就可以了
1. 改表法可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑登入MySQL后,更改"MySQL"数据库"user"表里的"host"项,将"localhost"改成"%"
mysql -u root -pvmwaremysql>usemysqlmysql>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' WITHGRANT OPTION
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码。
GRANT ALL PRIVILEGES ON *.* TO IDENTIFIED BY'mypassword' WITH GRANT OPTION
如果改表法行不通的话,需要添加一个语句:mysql>FLUSH RIVILEGES 使修改生效.就可以了。
3. 修改权限法
在安装MySQL的机器上运行:
d:/mysql/bin/>mysql -h localhost -u root //进入MySQL服务器
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION //赋予任何主机访问数据的权限
mysql>FLUSH PRIVILEGES //修改生效
mysql>EXIT //退出MySQL服务器
这样就可以在其它任何的主机上以root身份登录
通过以上方法就能解决Navicat for MySQL 1130错误,如果还有其他问题,点击“Navicat教程”可获取更多服务。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)