重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
决方法:
创新互联建站作为成都网站建设公司,专注网站建设、网站设计,有关企业网站设计方案、改版、费用等问题,行业涉及成都卫生间隔断等多个领域,已为上千家企业服务,得到了客户的尊重与认可。
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命令如下: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);
首先你要确定你远程的MYSQL开启了远程连接。
默认是不会开启的,一般情况也是不建议开启的,存在风险比较大。
默认都是服务器本机或者局域网连接使用。
进入服务器给mysql加上一个账号或者直接在你使用的账号上,连接地址localhost或者127.0.0.1改成%,就表示任何IP都可以连接了,这样就可以远程连接了。
建议用一些界面管理软件来修改比较直观一点,当然你熟悉命令也是可以用命令来修改的。
$conn=mysql_connect('主机','数据库名','密码'); 将’主机‘改为IP号,是可以远程访问数据库的。
前提是需要:
1、关闭所访问的主机的 防火墙。(不然其他用户无法访问主机)
2、设置主机上的 数据库的 访问权限,即 允许 其他用户访问 数据库。
MySql数据库的访问权限设置:在mysql命令行中输入命令 grant all on *.* to root@'%' identified by password; 其中password是数据库的密码。
3、该步骤最关键,得保证与主机之间的线路是通的(否则永远也连不上)。
看了,LZ提出的问题后,亲自编程序试了下,程序如下:
上述程序即可,用于测试。
如有问题,请再留言。