前言

最近这段时间再整理openGauss数据库相关内容,在这里总结记录并分享一些基础的操作以及遇到的一些问题和解决方法。本文将介绍如何使用Navicat进行远程连接openEuler系统下的openGauss数据库。

一、环境准备

参照下面链接进行操作
openEuler快速入门-openEuler系统安装&openGauss数据库安装

二、openGauss服务设置步骤

2.1 切换至用户openGauss

2.2添加放行IP

进入到存放数据的文件夹,编辑pg_hba.conf文件

su - opengauss
cd data/
vim pg_hba.conf

在打码部分放上自己的IP,如果不考虑安全性,也可以用0.0.0.0对所有IP地址进行开放,并将后面的trust替换成md5加密方式。

host all all 192.168.206.1/32 md5
host all all 0.0.0.0/0   md5

2.3 修改加密方式

修改同文件夹下的postgresql.conf文件

vim postgresql.conf

删除此行的注释(109行左右),并将原本的password_encryption_type = 2更换为password_encryption_type = 0(使用md5加密。

在配置文件postgresql.conf中,(68行左右)进行修改,将之前 listen_addresses = ‘localhost’改为 listen_addresses = ‘*’

3.4 重启openGauss服务

gs_ctl stop 
gs_ctl restart

如果这里出现错误,无法启动服务,则需要仔细比对前面的配置文件是否填写正确。

3.5 创建远程连接角色

netstat -antp查看监听服务
利用netstat -antp查看,发现 Local Address 这一栏sshd服务默认监听所有ip 的0.0.0.0而gaussdb服务监听的5432端口,只是本机的ip 127.0.0.1

输入gsql -d postgres -p 7654 -r命令开启数据库

gsql -d postgres -p 7654 -r

使用“\l”用于查看已经存在的数据库。

处于安全考虑,登录数据库并创建“my_root”用户,密码为“my_root@123”,进行授权,并退出数据库。

gsql -d postgres -p 7654 -r 
create user my_root identified by 'my_root@123';
alter user my_root sysadmin;
\q

备注

端口访问异常,解决方案如下
OS进行相应设置,开放26000端口上述允许远程连接的设置仅是postgre的设置,真正要让外部可连接,OS层也要设置,即开启相应端口,故开启26000端口的tcp连接即可

# 若 firewalld 未安装,则先进行安装: sudo apt install firewalld
# 允许 tcp 26000 端口
sudo firewall-cmd --permanent --add-port=26000/tcp
# reload 防火墙,应用规则
sudo systemctl reload firewalld

注意:上面的命令要在root用户下打

如果出现如下错误

则可采用下面方法解决

systemctl status firewalld          ;.查看firewalld状态
systemctl start firewalld            ;开启防火墙
systemctl status firewalld        ;确认firewalld状态

然后按上面命令重新开放26000端口,出现success即为成功。

三、Navicat连接
左上角文件->新建连接->PostgreSQL。

和其他数据库连接并无太大区别,按需填写IP地址,端口号,账号秘密即可

连接效果如下:

总结

以上就是今天要讲的内容,本文仅仅简单介绍了Navicat远程链接的使用。