远程访问mysql数据库(如何远程访问MySQL数据库详解)
本篇文章给大家谈谈远程访问mysql数据库,以及如何远程访问MySQL数据库详解对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
如何远程访问mysql数据库
远程访问mysql数据库
工具/原料
HA_SQLyog.Enterprise
Red Hat Linux
方法/步骤
user表中记录了不同的用户对mysql数据库的访问权限
如果我们要远程访问mysql数据库的话,需要对user表中的记录做相应修改
mysql update user set host=’%’ where user=’root’ and host=’localhost.localdomain’;
注意:上面一句中%的意思就是容许任何机器从远程访问mysql数据库Mysql quit
[root@s~]# mysqladmin reload;重新加载,使update语句修改生效
如果还是连接不上去SQLYOG:请使用下面命令在mysql下面:
grant ALL PRIVILEGES ON*.* to root@"%" identified by"mysql" WITH GRANT OPTION;
flust privileges
针对用户的用户的名字
针对用户的用户的名字和密码
使用SQLyog客户端连接SQL server时报错的解决办法:
在mysql服务器上使用 localhost连接,并执行下列语句,修改SQLserver对其它主机的限制
mysql grant all privileges on*.* to'root'@'%' identified by'1';
mysql flush privileges;
注意:!在window上安装远程连接mysql的工具,HA_SQLyog.Enterprise.v7.15.zip
按照下图进行配置:
如果能够登陆进去,说明mysql安装成功
如果启动mysql后出现以下问题
这是因为linux的防火墙问题,可以通过以下方式解决:
首先利用以下命令将MySql卸载掉(rpm–help可查询该命令的帮助)
rpm–e MySQL-server-community-5.0.37-0.rhel4.i386
rpm–e MySQL-client-community-5.0.37-0.rhel4.i386
rpm–e MySQL-devel-community-5.0.37-0.rhel4.i386
然后在虚拟机的linux下执行startx命令切换到图形界面,进入“应用程序/系统设置/安全级别/SELINUX”,将“启用”和“强制”复选框中的勾去掉
接下来重新安装MySQL即可。
另外,如果安装5.0.4版本的MySql也能解决这个问题。
怎样远程访问mysql数据库
三种解决方法:
1、改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改"mysql"数据库里的"user"表里的"host"项,从"localhost"改称"%"
mysql-u root-pvmware
mysql>use mysql;
mysql>update user set host='%' where user='root';
mysql>select 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.6的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON*.* TO'myuser'@'192.168.1.3'IDENTIFIED BY'mypassword' WITH GRANT OPTION;
我用的第一个方法,刚开始发现不行,在网上查了一下,少执行一个语句 mysql>FLUSH RIVILEGES
使修改生效,就可以了
第三种方法:
在安装mysql的机器上运行:
1、d:\mysql\bin\>mysql-h localhost-u root
//这样应该可以进入MySQL服务器
2、mysql>GRANT ALL PRIVILEGES ON*.* TO'root'@'%'WITH GRANT OPTION
//赋予任何主机访问数据的权限
3、mysql>FLUSH PRIVILEGES
//修改生效
4、mysql>EXIT
//退出MySQL服务器
这样就可以在其它任何的主机上以root身份登录啦。
如何连接远程Mysql数据库
一、连接远程数据库:
1、显示密码
如:MySQL
连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”
C:/>mysql-h
192.168.5.116-P 3306-u root-p123456
2、隐藏密码
如:MySQL连接本地数据库,用户名为“root”,
C:/>mysql-h
localhost-u root-p
Enter password:
二、配置mysql允许远程链接
默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。本文提供了二种方法设置mysql可以通过远程主机进行连接。
一、改表法
在localhost登入mysql后,更改"mysql"数据库里的"user"表里的"host"
项,将"localhost"改称"%"
例如:
#mysql-u root
-p
Enter password:
……
mysql>
mysql>update user
set host='%' where user='root';
mysql>select host,
user from user;
二、授权法
例如:
你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。
mysql>GRANT ALL
PRIVILEGES ON*.* TO'myuser'@'%'IDENTIFIED BY'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码
mysql>GRANT ALL
PRIVILEGES ON*.* TO'myuser'@'192.168.1.3'IDENTIFIED BY
'mypassword' WITH GRANT OPTION;
mysql>FLUSH
PRIVILEGES
使修改生效,就可以了
常见问题:
1、在采用法二授权法之后,无法在本地登录mysql(如:#mysql-u root-p-h
192.168.5.116
Enter password:
ERROR 1045(28000): Access denied for user
'root'@'loadb116'(using password: YES)
上例中loadb116是主机名.
解决方法:
1、这时可以使用:mysql-u
root-p登录,进入到mysql后。
mysql> grant all privileges on*.* to'root'@'loadb116'
identified by'123456' with grant option;
Query OK, 0 rows affected
(0.00 sec)
mysql> flush
privileges;
Query OK, 0 rows affected(0.00
sec)
2、在本地使用ip地址登录
#
mysql-u root-p-h
192.168.5.116
Enter password:
Welcome to the MySQL
monitor. Commands end with; or/g.
Your MySQL connection id is 60
Server
version: 5.1.45 MySQL Community Server(GPL)
Type'help;' or'/h' for
help. Type'/c' to clear the buffer.
mysql>
如何远程访问MySQL数据库详解
默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件。
一、修改/etc/mysql/my.conf
找到bind-address= 127.0.0.1这一行
改为bind-address= 0.0.0.0即可
二、为需要远程登录的用户赋予权限
1、新建用户远程连接mysql数据库
grant all on*.* to admin@'%' identified by'123456' with grant option;
flush privileges;
允许任何ip地址(%表示允许任何ip地址)的电脑用admin帐户和密码(123456)来访问这个mysql server。
注意admin账户不一定要存在。
2、支持root用户允许远程连接mysql数据库
grant all privileges on*.* to'root'@'%' identified by'123456' with grant option;
flush privileges;
三、查看系统用户
关于远程访问mysql数据库,如何远程访问MySQL数据库详解的介绍到此结束,希望对大家有所帮助。