【黄啊码】程序员怎么用Navicat原创访问mysql数据库

316 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第12天,点击查看活动详情

注意:一定要将防火墙关闭才能访问!

有两台电脑(192.168.1.1  --------  192.168.1.2,相当于局域网里的电脑)

在192.168.1.1上,安装mysql,安装navicat;

改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" 或添加一个用户为“%”

改表法,只是你的账号不允许远程登录,只能是localhost。

1、登录mysql

2、更改mysql数据库里的 “ mydb ”  表的 “ host ” 项

3、从 “ localhost ” 改成 “ % ” 或添加一个用户为 “ % ”

在局域网的两台电脑如何实现相互访问mysql数据库

在mysql服务器(192.168.1.1)上增加新用户,

Mysql>grant select,delete,update,insert on mydb.* to ‘root’@’192.168.1.1’identified by ‘root’;

mysql> flush privileges;  (运行为句才生效,或者重启MySQL)

mydb是数据库,‘root’则是指要使用的用户名和密码;

执行上面的代码后就可以让局域网内的所有机器以root:abc的身份访问该机器了

//怎样删除增加的新用户的访问权限

Mysql > Revokeselect,delete,update,insert on mydb.* from’root’@’192.168.1.1’;

也就是收回192.168.1.1 机子访问的权利。

也可以通过隧道访问:

程序猿访问线上数据库通常是这样的:

xshell--->跳板机--->应用服务器--->mysql服务器。

通过navicat访问生产mysql服务器一般如下:

1)、navicat配置ssh通道,再连接mysql服务器。(ssh通道连上跳板机,跳板机能够访问mysql服务器)

2)、如果公司运维限制比较严,以上操作就不可行。如果还是想通过navicat访问生产mysql服务器,需要走些弯路了。

首先需要明确一点,路是通的。如此:xshell--->跳板机--->应用服务器--->mysql服务器。

只要路是通的,那么走些弯路,只要能达到目的就行了。

咱们就一步一步走吧:

1)、xshell监听本地端口,通过隧道把请求转发到应用服务器。

2)、xshell通过身份认证可以登录到应用服务器。

3)、应用服务通过socat端口转发数据到mysql服务器。

1)、xshell设置

2)、应用服务器端口转发

socat -d -d TCP4-LISTEN:39306,reuseaddr,fork,su=nobody TCP4:XXXX:3306 &

3)、navicat设置