Navicat连接腾讯云服务器上的数据库

下面介绍Navicat连接腾讯云服务器上的数据库的两种方法:

方法一:【不需要修改相关远程客户端连接权限】

点击安装好的桌面navicat图标,进入后如下图:

Navicat连接腾讯云服务器上的数据库

连接方法:ssh中输入自己服务器的外网ip地址,登录服务器账号和密码

如下图:

Navicat连接腾讯云服务器上的数据库

再设置常规属性中,数据库的连接,主机填localhost,因为mysql安装在了本地服务器上,然后填入mysql的用户名及密码

如下图:

Navicat连接腾讯云服务器上的数据库

方法二:【修改相关MySQL远程客户端连接权限】

下面命令最好在root用户下执行使用:【否则可能会一些文件修改权限受阻问题,需要手动修改用户对文件的使用权限】

1、我们需要更改 3306端口,查看3306 端口是否对外开放,而一般MySQL 默认情况下是不开放对外访问功能的。

使用下面语句进行查询:

# netstat -an | grep 3306

如果查询结果如下,则需要我们更改 MySQL 配置文件。

Navicat连接腾讯云服务器上的数据库

查询结果可以看出,MySQL的3306端口只是监听本地的连接,这样就阻碍了外部IP对该数据库的访问,修改 MySQL 配置文件:

# /etc/mysql/mysql.conf.d/mysqld.cnf

在MySQL配置文件中找到  bind-address = 127.0.0.1 这一行

将bind-address = 127.0.0.1 这行注释掉或者改为你想要使用的客户端主机 ip。如下图所示:

Navicat连接腾讯云服务器上的数据库

这样,我们的 MySQL 远程访问端口就开启成功了。

2、我们进入 MySQL 命令界面,运行下列SQL 语句:

使用下面命令先在服务器终端上登录mysql的root用户

# mysql -uroot -p

然后输入root用户密码就可以登录mysql了

使用下面命令切换为使用mysql数据库

mysql> use mysql; 

使用下面命令查看用户是否具有访问权限:

mysql> select user, host from user;

如下图所示:

Navicat连接腾讯云服务器上的数据库

上面显示root用户只用访问本地的权限,我们需要通配符 % 来修改 root 用户对应的 host 字段,使其具有访问所有 ip 地址的权限:

mysql> update user set host = '%' where user = 'root';

如下图所示:

Navicat连接腾讯云服务器上的数据库

如果抛出如下异常:

Duplicate entry '%-root' for key 'PRIMARY'

说明有多个root用户纪录在user表中了,我们重新执行下面命令就可以看到字段 host 的 % 值:

mysql> select host from user where user = 'root';

我们执行:

mysql> flush privileges;

刷新一下 MySQL 的系统权限相关表。

下面还要确认的一件事就是确认客户端用户是否具有权限,我们给与他们相应的访问权限:

mysql> grant all privileges on *.* to username@"%" identified by "password";

最后退出mysql重启一下 MySQL 服务:

mysql> exit;   //退出mysql
#sudo mysql restart //重启mysql服务

3、服务端设置好了,我们在 Navicat 客户端设置一下连接:

打开 Navicat软件,点击左上方的 "连接",设置一下数据库的连接名,服务器外网ip地址,mysql用户名及密码等,

点击测试连接成功后再点击确定按钮便能在 Navicat 中远程操作服务器上的 MySQL 了。

如下图所示:

Navicat连接腾讯云服务器上的数据库

到这里,Navicat连接腾讯云服务器上的数据库的两种方法就结束了,希望可以帮助大家。。。

上一篇:Jmeter自己jar包的引用


下一篇:剑指offer--24.树的子结构