重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
$conn=mysql_connect('主机','数据库名','密码'); 将’主机‘改为IP号,是可以远程访问数据库的。
创新互联专注于企业营销型网站建设、网站重做改版、古城网站定制设计、自适应品牌网站建设、HTML5、购物商城网站建设、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为古城等各大城市提供网站开发制作服务。
前提是需要:
1、关闭所访问的主机的 防火墙。(不然其他用户无法访问主机)
2、设置主机上的 数据库的 访问权限,即 允许 其他用户访问 数据库。
MySql数据库的访问权限设置:在mysql命令行中输入命令 grant all on *.* to root@'%' identified by password; 其中password是数据库的密码。
3、该步骤最关键,得保证与主机之间的线路是通的(否则永远也连不上)。
看了,LZ提出的问题后,亲自编程序试了下,程序如下:
上述程序即可,用于测试。
如有问题,请再留言。
如果mysql服务器是你的而你的网站不在服务器里你可以把拥有这数据库权限的用户设置远程权限,
在mysql命令如下:grant all no *.* to 用户名@"远程的IP地址" identified by "数据库密码" with grant option;
对于PHP连接远程MySql数据库,通常要使用如下的语句:
var
$serverName
=
'db4free.net:3306';//数据库服务器
var
$dbName
=
'dbname';//数据库名
var
$dbUsername
=
'username';//用户名
var
$dbPassword
=
'123';//登陆密码
mysql_connect($serverName,$dbUsername
,$dbPassword);
mysql_select_db($dbName);
首先定义好你的链接参数。例如下面这个。
$host="bdm0000000.my3w.com"; //这个是连接地址,我这个是阿里云的数据库服务器
$user="666666aaaaa"; //管理员账号
$password="tttttttt11111"; //密码
$db="bdm000000_db"; //目标数据库。
然后进行链接
function execute_dql($sql){
$host="bdm0000000.my3w.com"; //这个是连接地址,我这个是阿里云的数据库服务器
$user="666666aaaaa"; //管理员账号
$password="tttttttt11111"; //密码
$db="bdm000000_db"; //目标数据库。
$mysqli=new MySqli($host,$user,$password,$db);
$res=$mysqli-query($sql);
return $res;
$res-free();
$mysqli-close();
}
首先你要确定你远程的MYSQL开启了远程连接。
默认是不会开启的,一般情况也是不建议开启的,存在风险比较大。
默认都是服务器本机或者局域网连接使用。
进入服务器给mysql加上一个账号或者直接在你使用的账号上,连接地址localhost或者127.0.0.1改成%,就表示任何IP都可以连接了,这样就可以远程连接了。
建议用一些界面管理软件来修改比较直观一点,当然你熟悉命令也是可以用命令来修改的。
决方法:
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;