在Mysql中,如何实现在规定的IP范围内的客户机连接到远程?
答:
(1)首先需要设置MySQL数据库中user表中host为%,%代表任意的IP地址。Update mysql.user set Host=’%’ where Host=’localhost’
(2)进行数据库表的授权: GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
(3)刷新权限 FLUSH PRIVILEGES;接下来就可以进行远程登录访问了,注意:如果是阿里云上的服务器,使用Navicat进行连接时,还需要填写SSH面板内容。
解决MySQL不允许从远程访问的方法有哪些?
解决MySQL不允许从远程访问的方法,主要有二种,分别如下:
1、改表法。 帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" mysql -u root -pvmwaremysql>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' WI TH 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客户端访问远程服务器很快,可是在java项目里访问数据就很慢,为啥啊?
可能是网络问题因为 你的这个远程访问应该是在局域网内。而你的java项目现在和数据库服务器不在同一个局域网内,中间就产生了局域网传输数据的效率和互联网传输数据的效率的差异。
mysql的远程链接是什么?
mysql远程连接的命令其实和本地连接的命令相同,都是"mysql -h *** -u *** -p"命令,唯一区别就是你有没有允许mysql在远程IP连接登录,下面我大概介绍一下如何实现mysql远程连接,主要是两种方法,以我的ali云MariaDB数据库为例(mysql一个分支),本地环境为win7+mysql5.5,主要步骤如下:
方法一:改表法
1.打开数据库,输入命令如图所示,以root用户为例,主要是修改root用户允许他在远程IP地址访问数据库:
我的数据库已修改,使用"select host,user from user"命令进行可以进行查看,如图所示:
2.接着就可以在本地进行测试,打开cmd窗口,命令是"mysql -h *** -u root -p",如下图所示,已经成功远程连接数据库:
方法二:授权法
1.这里我假设向abc这个用户,只在paper数据库上授予select查询的权限,允许他在任何地点IP以密码654321登录,那么命令就是"grant select on paper.* on 'abc'@'%' identified by '654321'",如下图:
2.接着,我们就可以在本地进行测试了,打开一个cmd窗口,输入"mysql -h *** -u abc -p",然后输入密码,就可以远程连接数据库了,我这里已经成功连接,并且只显示出了paper这个数据库,如图:
接下来就可以进行数据库的查询了,注意,这里只有查询权限而已。
至此,两种远程连接mysql的方法都已介绍完毕。从整个过程来看,其实不难,就是授权允许远程IP登录,其他命令和操作本地的mysql命令相同,只要你有一定的mysql命令基础,多熟悉熟悉过程,多练习练习,很快就能掌握的,网上也有这方面的教程和例子,你可以参考学习一下,对你应该有很大的帮助,希望以上分享的内容能对你有所帮助吧。

