最近测试数据库远程连接,发现我已开启了远程连接服务,但连接的时候还是出提示:ERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server
这是不允许我的ip192.168.1.3的连接,在网上找了2种方法!
解决方法:
1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数
据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmware;
mysql>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'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
呵呵,本人觉得授权法比较好用.
我的操作
按着方法1,输入mysql,提示-sh:mysql:command not found
靠,第一步就卡死了,没办法,还是搜呀搜,找到方法,
因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,
系统在/usr/bin下面查此命令,所以找不到了
解决办法是:
ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可
这样就可以解决直接输入mysql就能进行mysql的相关设置了,回到方法一,一路代码复制呀粘呀,最后还是实现了远程登陆!
囧事
经过几天的测试(夸),终于完成远程连接了,后来登录phpmyadmin,看到一个选择,询间纠结了,原来这些权限在phpmyadmin都能实现的,我还傻傻跑到SSH去跟命令打交道!
这样一改就唏哗的能远程连接了,就这么简单,我却搞了几天!囧呀
暂无评论