远程使用数据库

一:问题起源:我在做一个项目,代码使用svn存放在服务器端了。在写代码的时候,需要用到数据库,而我不想登录到服务器写代码,所以我更改了配置文件,使连接的是服务器的数据库。

但是很不幸,当我登录的时候显示:

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'192.168.1.105'


问题解决:
第一步:问题提示是该数据库拒绝被192.168.1.105的root用户访问,所以我先利用:
grant all privileges on *.* to 'root'@'192.168.1.105';
然后利用
flush  privileges;
刷新授权表单,并利用:
show grants;
来显示授权用户。(我当时的情况是虽然没有显示我的授权信息,但是成功连接上了数据库)

第二步:把mac地址和ip地址绑定,这样防止下次分配ip地址的时候因为变换导致得重新执行第一步。
因为我是osx系统,进入用户偏好设置->网络->wifi->高级->tcp/ip
更改DHCP分配为手动分配。
然后就是填写相关信息了。

二:问题起源:昨天设置完上面的东西后,能够访问数据库。但是今天使用调试自己写的控制器的时候,结果得到的返回信息是connect refuse。
然后用一个专门测试远程连接数据库的页面试了一下,结果是:


后来在网上找了很多资料,其中有一份很全的:http://www.2cto.com/database/201204/127400.html(虽然没能解决我的问题)
后来问黄老师,黄老师说可能是防火墙问题。然后设置了一下防火墙:
ssh zengzhuomin@192.168.1.3       (登陆服务器)

vim /etc/sysconfig/iptables                    (更改防火墙配置文件)


增加了一行:-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙)


添加好之后防火墙规则如下所示:
###################################### 
# Firewall configuration written by system-config-firewall 
# Manual customization of this file is not recommended. 
*filter 
:INPUT ACCEPT [0:0] 
:FORWARD ACCEPT [0:0] 
:OUTPUT ACCEPT [0:0] 
-A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT 
-A INPUT -p icmp -j ACCEPT 
-A INPUT -i lo -j ACCEPT 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT 
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT 
-A INPUT -j REJECT –reject-with icmp-host-prohibited 
-A FORWARD -j REJECT –reject-with icmp-host-prohibited 
COMMIT 

#####################################


/etc/init.d/iptables restart            #最后重启防火墙使配置生效


然后就好使了~~赞赞的~


如果还有什么不明白,可以问一下万能的度娘。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值