Rumah >pembangunan bahagian belakang >tutorial php >php远程连接服务器报错。

php远程连接服务器报错。

WBOY
WBOYasal
2016-06-20 12:57:081122semak imbas

        $host = '远程服务器ip';	$root = '用户名';	$pwd = '密码';		$con = @mysql_connect($host,$root,$pwd);	mysql_query("set names 'utf8'");	@mysql_select_db("XS_CQC", $con) or die(mysql_error());

我连接本地的数据库是正常,但是连接远程的话报这个错误。

Access denied for user 'ODBC'@'localhost' (using password: NO)

这个是什么意思?


回复讨论(解决方案)

现在是 代码在一个服务器,  数据库在另外一个服务器。
是不是我的代码有问题?

远程连接 MySQL,需要对方授权

链接远程数据库的帐号要有远程链接的权限
在数据库中执行
> GRANT ALL PRIVILEGES ON 数据库名称.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
> FLUSH PRIVILEGES;

这样就可以了

    $host = 'localhost';    $root = 'ODBC';    $pwd = '';        $con = @mysql_connect($host,$root,$pwd);     mysql_query("set names 'utf8'");    @mysql_select_db("XS_CQC", $con) or die(mysql_error());


敢问你的源代码是这么写的么.. 不是连远程服务器么.  你的ip和用户密码貌似都没改.

没有链接权限,
在对方的mysql 数据库中需要什么访问权限。
在phpmyadmin中设置user,host

    $host = 'localhost';    $root = 'ODBC';    $pwd = '';        $con = @mysql_connect($host,$root,$pwd);     mysql_query("set names 'utf8'");    @mysql_select_db("XS_CQC", $con) or die(mysql_error());


敢问你的源代码是这么写的么.. 不是连远程服务器么.  你的ip和用户密码貌似都没改.



源码就是上面写的远程服务器的IP,只是不方便透漏服务器的IP跟 用户名。 就打上中文了
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:mysql语法问题Artikel seterusnya:windows安装vagrant 以及 laravel homestead