允许远程访问数据库

来源:互联网 发布:网络文明志愿宣言 编辑:程序博客网 时间:2024/05/16 14:51

在实际工作中项目在本地跑着,但是几个人开发想要建立一个共有的数据库,此时就需要数据库设置为外网可以访问,设置方法如下:

mysql -u root -p进入数据库中,然后执行命令:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

执行过后要刷新数据库权限,命令:

FLUSH PRIVILEGES;

此时就可以直接远程访问数据库了

分析:

$ telnet  47.93.24.225 3306telnet: connect to address 47.93.24.225: Operation timed outtelnet不通,说明是  防火墙,拦截掉了3306端口的公网访问。
netstat -nutlp查看3306端口是否已经启动
iptables -L -niptables -L -n发现3306端口是drop掉了所以是服务器防火墙拦截了连接其实一开始就应该想到ssh连的是22端口mysql连的是3306端口所以是服务器拒绝了我

那么就有两种办法解决这个问题

第一种就是最上面的解决办法第二种工具就是先用ssh连到服务器上,然后 直接本地localhost连接数据库。

工具地址

http://xclient.info/s/navicat-premium.html?_=28224c24c5d048ba73bf06b15e2a6668第三种是设置防火墙把3306打开 不过不推荐,不安全
原创粉丝点击