一、连接远程数据库:
1、显示密码
如:MySQL
连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”
C:/>mysql-h
192.168.5.116-P3306-uroot-p123456
2、隐藏密码
如:MySQL连接本地数据库,用户名为“root”,
C:/>mysql-h
localhost-uroot-p
Enterpassword:
二、配置mysql允许远程链接
默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。本文提供了二种方法设置mysql可以通过远程主机进行连接。
一、改表法
在localhost登入mysql后,更改"mysql"数据库里的"user"表里的"host"
项,将"localhost"改称"%"
例如:
#mysql-uroot
-p
Enterpassword:
……
mysql>
mysql>updateuser
sethost='%'whereuser='root';
mysql>selecthost,
userfromuser;
二、授权法
例如:
你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。
mysql>GRANTALL
PRIVILEGESON*.*TO'myuser'@'%'IDENTIFIEDBY'mypassword'WITHGRANTOPTION;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
mysql>GRANTALL
PRIVILEGESON*.*TO'myuser'@'192.168.1.3'IDENTIFIEDBY
'mypassword'WITHGRANTOPTION;
mysql>FLUSH
PRIVILEGES
使修改生效,就可以了
常见问题:
1、在采用法二授权法之后,无法在本地登录mysql(如:#mysql-uroot-p-h
192.168.5.116
Enterpassword:
ERROR1045(28000):Accessdeniedforuser
'root'@'loadb116'(usingpassword:YES)
上例中loadb116是主机名.
解决方法:
1、这时可以使用:mysql-u
root-p登录,进入到mysql后。
mysql>grantallprivilegeson*.*to'root'@'loadb116'
identifiedby'123456'withgrantoption;
QueryOK,0rowsaffected
(0.00sec)
mysql>flush
privileges;
QueryOK,0rowsaffected(0.00
sec)
2、在本地使用ip地址登录
#
mysql-uroot-p-h
192.168.5.116
Enterpassword:
WelcometotheMySQL
monitor.Commandsendwith;or/g.
YourMySQLconnectionidis60
Server
version:5.1.45MySQLCommunityServer(GPL)
Type'help;'or'/h'for
help.Type'/c'toclearthebuffer.
mysql>