最全IDEA、Navicat、DataGrip连接openGauss数据库(含报错解决方法)

无论是用哪个连接之前都需要先做如下前四步配置:

一、配置pg_hba.conf

1、首先使用su - omm登录到omm用户,然后进入到存放数据的文件夹(我的OpenGauss数据库在/gaussdb/data/db1这个路径下),编辑pg_hba.conf文件。

su - omm
cd /gaussdb/data/db1
vi pg_hba.conf

2、在pg_hba.conf文件里添加如下两行,加密方式为md5,若是已经存在看一下后面的家吗方式是否是md5。

host    all             all             127.0.0.1/32            md5
host all all 0.0.0.0/0   md5

大概放到这个位置就行,wq保存。

二、修改加密方式

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

vi postgresql.conf

2、找到listen_address,将它的的值改为*,如下:

2c7b6d3d50804ac3985a123966f8ff5f.png

3、同目录下删掉password_encryption_type前面的#,且赋值0(即加密方式设为md5)

找不到的可用快捷查找,Esc键退出insert模式,进入vi的命令行模式,

输入:/password_encryption_type,如下,

0a5b9c51c4854b84a7afc43753691d66.png

修改为零0,删掉password_encryption_type前面的#。

ee4e1680cd394b0b9432b48535b7d46c.png

4、使用gs_om -t restart命令重启数据库,使配置生效。

gs_om -t restart

三、修改用户密码


1、输入gsql -d postgres -p 26000 -r命令开启数据库。

gsql -d postgres -p 26000 -r

2、修改用户名为test的用户密码(也可以对数据库的其他用户修改密码),这里注意新旧密码不能相同,否则不能修改成功,也不能改为之前用过的密码,我改的新密码是openGauss@1234,密码要满足至少8位,含大小写英文,特殊字符。

alter user test identified by 'openGauss@1234'

3、若出现如下情况,表示用户不存在,需先创建用户,我这里存在test固用test1做示范报错情况。

8928a80057af4067bfd418548cbc45c7.png

命令如下:

CREATE USER test1 IDENTIFIED BY 'openGauss@1234';

提示MD5加密,即成功生效:

6032fd74b5c8457db8e77b3c2d94a2bc.png

4.关闭防火墙,查看是否关闭

systemctl stop firewalld 

systemctl status firewalld

5.测试连接(根据需求选择navicat、idea、datagrip)

5.1navicat连接openGauss

674f9745041f4b3fa831f79c8207fda1.png

1、上面的连接名自己随便取一个,依次输入虚拟机的ip,端口一般为26000,初始数据库也可为postgres这个不用改,也可为其他的数据库,用户名为前面修改了密码的test,密码为openGauss@1234,然后点测试连接。

2、若出现如下报错:could not connect to server: Connection timed out (0x0000274C/10060)     Is the server running on host "10.168.89.166" and accepting     TCP/IP connections on port 26000?

解决办法:

        检查前面3步的配置是否正确,检查防火墙是否关闭,ls -l查看所有的文件尤其是pg_hba.conf和postgresql.conf,这两个文件是否属于omm而不是root,若是属于root下,先删除该文件,再在该目录下重新创建该文件。

3、出现如下报错:fe sendauth: invalid authentication reguest from server: AUTH REQ SASL CONT withoUt AUTH REQ SASI。

解决办法:

        修改数据库的密码,重新连接,因为上面的配置文件包含加密方式,如果之前的密码不满足(至少8位,英文大小写,特殊字符)就会一直报上面的错。

alter user test password 'openGauss@1234';

5.2IDEA连接openGauss

1、打开idea依次点击右边栏的Database > 加号“+” > Data source > PostgreSQL,如图箭头所指。

db26fc086dd6434eb02a0a516cee5c45.png

2、依次输入虚拟机的Host即虚拟机ip,端口Port一般为26000,用户名为前面修改了密码的test,密码为上面修改了之后的openGauss@1234,若在Test Connection上面还显示了一个黄色的Download,点击之后再点击Test Connection测试连接。

85585422e9544fc99078fa54b778e567.png

3、点击Test Connection 连接,如下出现绿色的箭头表示连接成功,点击OK:

9f089d60b6d84cf3a7d9e45fabb0e7df.png

 4、若出现如下报错:could not connect to server: Connection timed out (0x0000274C/10060)     Is the server running on host "10.168.89.166" and accepting     TCP/IP connections on port 26000?

解决办法:

        检查前面3步的配置是否正确,检查防火墙是否关闭,ls -l查看所有的文件尤其是pg_hba.conf和postgresql.conf,这两个文件是否属于omm而不是root,若是属于root下,先删除该文件,再在该目录下重新创建该文件。

5、出现如下报错:fe sendauth: invalid authentication reguest from server: AUTH REQ SASL CONT withoUt AUTH REQ SASI。

解决办法:

        修改数据库的密码,重新连接,因为上面的配置文件包含加密方式,如果之前的密码不满足(至少8位,英文大小写,特殊字符)就会一直报上面的错。

alter user test password 'openGauss@1234';

5.3DataGrip连接OpenGauss数据库

1、连接方式与上面5.2IDEA的连接方式类似,

c819919429f046afa9b3dabbca092d22.png

2、依次输入虚拟机的Host即虚拟机ip,端口Port一般为26000,用户名为前面修改了密码的test,密码为上面修改了之后的openGauss@1234,若在Test Connection上面还显示了一个黄色的Download,点击之后再点击Test Connection测试连接。

b078c1166b5d4628b25be16c73a3a3d3.png

3、显示为绿色的Succeeded即为连接成功,点击ok就可以了。

 4、若出现如下报错:could not connect to server: Connection timed out (0x0000274C/10060)     Is the server running on host "10.168.89.166" and accepting     TCP/IP connections on port 26000?

解决办法:

        检查前面3步的配置是否正确,检查防火墙是否关闭,ls -l查看所有的文件尤其是pg_hba.conf和postgresql.conf,这两个文件是否属于omm而不是root,若是属于root下,先删除该文件,再在该目录下重新创建该文件。

5、出现如下报错:fe sendauth: invalid authentication reguest from server: AUTH REQ SASL CONT withoUt AUTH REQ SASI。

解决办法:

        修改数据库的密码,重新连接,因为上面的配置文件包含加密方式,如果之前的密码不满足(至少8位,英文大小写,特殊字符)就会一直报上面的错。

alter user test password 'openGauss@1234';

还有其他问题和需求欢迎留言,我看到了会第一时间回复。

openEuler和openGauss安装教程可以参考博客我的其他博客:http://t.csdnimg.cn/1GwkI

猜你喜欢

转载自blog.csdn.net/m0_73646990/article/details/139360136