郁闷问题,非常的郁闷。

WBOY
풀어 주다: 2016-06-23 14:03:55
원래의
828명이 탐색했습니다.

有台服务器 linux+apache+mysql+php 另安装了phpmyadmin
使用phpmyadmin可以正常访问服务器
可是用我自己写的php
连接数据库说目标机器积极拒绝。无法连接……。

    $username = "Test";       $psword = "123456";      $hostname = "10.12.18.27";      $dbName = "TestDb";     $server_link = mysql_connect("$hostname","$username","$psword")              or die("Can't connect to server" . mysql_error()); 
로그인 후 복사

这句话就出问题…………。娘亲啊,没天理
用root 或Test账号,在phpmyadmin都可以正常登陆.
唯一的差别就是phpmyadmin在服务器上面
我的php代码在我电脑上面(Apache+php+win7)
再说Test账号,什么远程登陆,任意位置登陆功能全打开了的……


回复讨论(解决方案)

没有开放mysql远程连接的权限

没有开放mysql远程连接的权限
你是说用户权利吗?
%
localhost 
127.0.0.1
主机名

这四个全开了的。

之前都是正常的。
就服务器重启了下
就这样了

你可以用sqlyog或者命令行去连接看看。看能不能连接成功。

你可以用sqlyog或者命令行去连接看看。看能不能连接成功。
错误代码 2003

mysql 数据库里的 user 表的 host 项,从 localhost 改称 % 
或者新加条记录,host 项为 你本地的ip地址,并授权
重启mysql服务

规矩的做法:
使用 GRANT 命令
你想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; 

mysql 数据库里的 user 表的 host 项,从 localhost 改称 % 
或者新加条记录,host 项为 你本地的ip地址,并授权
重启mysql服务

规矩的做法:
使用 GRANT 命令
你想myuser使用mypassword从任何主机连接到mysql服务器的话。 
GRANT ALL PRIVILEGES ON *.* TO 'myu……

想不明白为什么。
我把test账号删了,再新建一个test,权限开的是一模一样的

%
localhost 
127.0.0.1
主机名

引用 5 楼 xuzuning 的回复:mysql 数据库里的 user 表的 host 项,从 localhost 改称 % 
或者新加条记录,host 项为 你本地的ip地址,并授权
重启mysql服务

规矩的做法:
使用 GRANT 命令
你想myuser使用mypassword从任何主机连接到mysql服务器的话。 
GRANT ALL PRIVI……
再重启MYSQL就正常了。

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿