C/C++教程

使用navicat的SSH隧道连接数据库

本文主要是介绍使用navicat的SSH隧道连接数据库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

这几天在连接远程数据库的时候,发现用navicat的普通方法居然连接不上,然后就想用ssh连接试试,开始是报错的,错误是这样的:

lost connection to Mysql server at “waiting for initial communication 
packet’,system error:0 “internet error/check (NOT system error)”

这个错误其实是地址填错了

lost connection to Mysql server at "waiting for initial  communication packet',system error:0 "internet error/check (NOT system error)"
后来才各种查找是才知道这两个标签页面的的地址是不一样的,

SSH页面的主机名是远程的ip,用户名是登陆服务器的用户名和密码 
ssh标签页面内容
这个页面是不用连接测试的

常规标签页的主机名要写localhost或127.0.0.1 
用户是远程数据库的可登陆用户名和密码 
常规标签页面的内容写localhost
然后就可以连接测试了,其本就没有问题了

还要注意的是,我这里演示用的root用户,但是实际连接不要用root用户,因为服务器上,mysql数据库的默认的一个root用户,默认也是只可以本地连接的,所有要先在数据库中创建一个用户,并且host设为%,即允许所有用户连接,然后在标签页要用新创建的这个用户连接才能连接成功。

这篇关于使用navicat的SSH隧道连接数据库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!