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

2321 0
Honkers 2025-3-8 03:53:32 来自手机 | 显示全部楼层 |阅读模式

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

一、配置pg_hba.conf

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

  1. su - omm
  2. cd /gaussdb/data/db1
  3. vi pg_hba.conf
复制代码

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

  1. host all all 127.0.0.1/32 md5
  2. host all all 0.0.0.0/0 md5
复制代码

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

二、修改加密方式

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

  1. vi postgresql.conf
复制代码

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

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

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

输入:/password_encryption_type,如下,

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

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

  1. gs_om -t restart
复制代码

三、修改用户密码


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

  1. gsql -d postgres -p 26000 -r
复制代码

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

  1. alter user test identified by 'openGauss@1234'
复制代码

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

命令如下:

  1. CREATE USER test1 IDENTIFIED BY 'openGauss@1234';
复制代码

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

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

  1. systemctl stop firewalld
  2. systemctl status firewalld
复制代码

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

5.1navicat连接openGauss

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位,英文大小写,特殊字符)就会一直报上面的错。

  1. alter user test password 'openGauss@1234';
复制代码

5.2IDEA连接openGauss

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

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

3、点击Test Connection 连接,如下出现绿色的箭头表示连接成功,点击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位,英文大小写,特殊字符)就会一直报上面的错。

  1. alter user test password 'openGauss@1234';
复制代码

5.3DataGrip连接OpenGauss数据库

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

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

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位,英文大小写,特殊字符)就会一直报上面的错。

  1. alter user test password 'openGauss@1234';
复制代码

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

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

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2026 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行