十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
$conn=mysql_connect('主机','数据库名','密码'); 将’主机‘改为IP号,是可以远程访问数据库的。
成都创新互联从2013年开始,先为宜章等服务建站,宜章等地企业,进行企业商务咨询服务。为宜章企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
前提是需要:
1、关闭所访问的主机的 防火墙。(不然其他用户无法访问主机)
2、设置主机上的 数据库的 访问权限,即 允许 其他用户访问 数据库。
MySql数据库的访问权限设置:在mysql命令行中输入命令 grant all on *.* to root@'%' identified by password; 其中password是数据库的密码。
3、该步骤最关键,得保证与主机之间的线路是通的(否则永远也连不上)。
看了,LZ提出的问题后,亲自编程序试了下,程序如下:
上述程序即可,用于测试。
如有问题,请再留言。
在php中如果要连接远程数据库连接方法很简单,只要把本地连接localhost或127.0.0.1改成指定远程服务器一IP地址或者直接域名即可。
语法
mysql_connect(servername,username,password);
例子
在下面的例子中,我们在一个变量中 ($con) 存放了在脚本中供稍后使用的连接。如果连接失败,将执行 "die" 部分:
代码如下:
?php
$con = mysql_connect("localhost","peter","abc123");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
// some code
?
上面是连接本地数据库,下面把localhost改成远程IP即可了
实例 代码如下:
$conn=mysql_connect('','root','123456888');
if(!$conn) echo "失败!";
else echo "成功!";
// 从表中提取信息的sql语句
$sql="SELECT * FROM user where userName='$user_name'";
// 执行sql查询
$result=mysql_db_query('info', $sql, $conn);
// 获取查询结果
$row=mysql_fetch_row($result);
mysql_close();
决方法:
1。
改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改
"mysql"
数据库里的
"user"
表里的
"host"
项,从"localhost"改称"%"
mysql
-u
root
-pvmwaremysqluse
mysql;mysqlupdate
user
set
host
=
'%'
where
user
=
'root';mysqlselect
host,
user
from
user;
2.
授权法。例如,你想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
'root'@'192.168.1.3'
IDENTIFIED
BY
'mypassword'
WITH
GRANT
OPTION;
首先你要确定你远程的MYSQL开启了远程连接。
默认是不会开启的,一般情况也是不建议开启的,存在风险比较大。
默认都是服务器本机或者局域网连接使用。
进入服务器给mysql加上一个账号或者直接在你使用的账号上,连接地址localhost或者127.0.0.1改成%,就表示任何IP都可以连接了,这样就可以远程连接了。
建议用一些界面管理软件来修改比较直观一点,当然你熟悉命令也是可以用命令来修改的。