PHP5远程连接MYSQL5的问题

来源:百度知道 编辑:UC知道 时间:2024/05/16 18:17:11
说明:
用在机器A上,用PHP5远程连接 机器B的MYSQL5 的时候,发现不能连接的情况.两台机器上都是PHP5和MYSQL5,报错:Warning: mysql_connect() [function.mysql-connect]: Can't connect to MySQL server on....
1.远程连接权限已经开好了.
2.3306端口已经开放
3.防火墙关了也不行.
4.修改过SELINUX的设置,SELINUX=disabled
以上操作都已经试过了,都是连接不上.
补充:机器A的系统是FC7 32bit,机器B的系统为SUSE10 64bit
奇怪的是,直接写PHP远程连接机器B会报错,但是在机器A上用 mysql -u user -H IP -p passwd 连接B机器却没有任何问题!
用PHP4远程连接机器B也没有问题!
现在确定的是机器A肯定是某个配置阻拦了MYSQL的连接.
希望各位能指点一二!
拜托,能不能回答点有深度点?
虽然说算不上是PHP专家,但是至少也是个高手吧,怎么幼稚的回答难道不怕别人笑话吗?
还推荐买书!
PHP连接字符串没有任何问题

三楼,你所说的清楚是不同版本的MYSQL连接才需要的.我这里两台机器都是MYSQL5.

$link = mysql_connect("mysql_host", "mysql_user", "mysql_password") 这一句我不知道你是怎么写的,也不知道你是从哪里学的,我推荐你一个网站,去哪里好好学学。另外,你应该买一本好点的入门书籍。www.phpchina.cn

在B上的MYSQL命令行:
建立一个帐户backup,并且只能允许从192.168.100.2(A的IP)这个地址上来登陆,密码是1234
输入:set password for 'backup'@'192.168.100.2'=old_password('1234');

然后重启B,在A上用backup帐号,1234密码来登录试试。

在A上用PHP4能连接B,而用PHP5无法连接B?

应该是PHP5的配置问题,PHP4中,MySQL是集成在PHP4中的,而在PHP5中,MySQL是作为一个模块加载的。
cp php.ini-dist /usr/local/php5/etc/php.ini
vi /usr/local/php5/etc/php.ini
把extension=mysql.so 前面的#去掉

你在机器A上有装mysql5的驱动吗。肯定是php里的连接字符串写错了。
在机器A上用PHP4可以连接?PHP5就不能连接吗,我想这个应该不是PHP的版本问题,而是PHP的连接设置出了问题。$dbhost=" "; 你用的是机器名还是ip呢。