MySql远程访问无法连接的问题!

来源:互联网 发布:淘宝省油宝怎么样 编辑:程序博客网 时间:2024/05/22 21:30

公司里服务端的搭建由我来完成,我在我笔记本上把框架搭建起来以后,想在台式机的电脑上运行,蛋疼的是台式机数据库装不上去,我使用的是mysql数据库,之前在学校遇到这样的问题的时候,简单的把注册表删掉,最糟糕的就是重装系统,这次我算是彻底倒霉了,无论怎么都装不上,一气之下,我打算将我的笔记本中的mysql作为远程数据库,然后用台式机访问,公司里用的是局域网,这一点很容易实现!
很快,代码部署上去,数据库地址改好,让代码跑起来,汤姆猫还没动起来,就拉出一坨屎
如下

java.sql.SQLException: null, message from server: "Host 'xxx' is not allowed to connect to this MySQL server"  

还有一大推的错误,就这句都是这句引起的,字面上就是说数据库不允许本机访问???
这是什么情况,由于之前没有做过这样的,所以就卡在这里,网上搜了一下, 找到问题的根源。
原来mysql创建的数据库默认的只有本地才可以访问,因为user表里的“host”字段默认为“localhost”,解决的方案为下

方案一:改表:use mysql ;select user,host,password from user;update user set host = '%' where user='root';方案二:授权法:例如,你想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;

楼主,亲测方案一可以,那么方案二也可以

0 0