最近给别人做了个商品展示网站,想先发布到网上去看看效果!
所有申请了国外的mysql+php免费空间!
首先因为是个小程序所有没有制作install安装过程,俺想直接登陆空间控制面板把sql文件导入后,再改本地conn文件,
按理说应该可以啊!!
但是为什么用mysql -h 服务器地址 -u 用户名 -p 密码连接不上呢?
出现不能连接mysql服务器, 10060错误!
首先声明网站可以用!我上传了一个php程序(不带数据库) 运行良好!
你还是哪儿没改好 再仔细看看代码 空间上比本地要求要多很多
你在哪里敲了Mysql命令的?用户名和密码确定是对的?
像三楼说的那样,PHP写一个连接mysql数据库的程序。
如果用户名和密码都对的话估计是选择主机方面的错误,你写了localhost,但其实不是本地的。
如果你有信心PHP 没写错的话.那么就应该是你没有数据库远程登录权限
测试方法可以如下
写一个连接 PHP文件 登录时host 用 localhost
写一个连接 PHP文件 登录时host 用 你的服务器地址
上传服务器试试
如果1可以 2不行,那你就放弃远程登录数据库吧
如果两个都不行,那你就可以通知一下服务器管理员
以上前提是 你的 PHP文件没错
一般主机管理员不会开通数据库的远程访问吧,一般都会提供phpmyadmin的
对啊!!我用他空间提供的管理面板地址,在用给定的用户名和密码登陆,访问phpmyadmim没问题,我还在里面建立表了!!
但是这样可以同程序访问吗?
既然 phpmyadmim 可用,那么就在 phpmyadmim 里导入 sql
至于 他空间提供的管理面板 应该没有那么高的权限,至多做一下你的空间里的文件系统管理
你说的完全对,只不过我在PHPmyadmin导入数据成功后,但是在php程序中怎么也连接不上数据库!!
看看php中的连接mysql代码是不是没有指明localhost,
在服务器上的脚本访问数据库的时候,因为数据库和脚本在同一个服务器上,所以数据库的服务器地址对脚本来说是localhost,所以在脚本里应该以localhost访问数据库,而你在你自己的电脑上访问数据库的时候,数据库服务器地址就是对应的域名或者IP了.
mysql对访问权限的控制是基于三个参数的:用户主机,用户名,密码(意思是某个用户名在某台电脑上以对应的密码登陆)
你传到服务器的脚本相对数据库来说用户主机是localhost(你的PHP程序和phpMyAdmin都是服务器上的脚本),而你在自己的电脑上访问的时候用户主机为你的外网IP,两个主机不一样,所以权限是不一样的,如果没有针对你的IP开放权限的话,你自然是连不上的.
我也遇到过,基本就是conn文件写的不对,本地调试和虚拟主机里是不一样的,数据库名,主机名,还有用户名和密码再仔细对下。
来源:英超直播