【经验分享】openGauss 客户端(Data Studio / DBeaver)连接方式

news/2024/7/3 18:31:28

前言

本篇介绍了openGauss常用的客户端连接工具Data Studio和DBeaver

01

客户端工具

openGauss部署之后,在服务器上提供了在命令行下运行的数据库连接工具gsql。此工具除了具备操作数据库的基本功能,还提供了若干高级特性,便于用户使用。对于日常使用openGauss来说,我们常用以下两种客户端连接工具Data Studio和DBeaver。

 1.1 Data Studio介绍

Data Studio作为一款配套openGauss数据库使用的客户端软件(当前只支持openGauss),辅助数据库开发人员便捷地构建应用程序, 以图形化界面形式提供数据库关键特性。降低数据库的使用门槛,提高用户的使用粘性。
主要提供如下功能:
1)管理/创建数据库对象(函数、存储过程、表、视图、序列、触发器等)
2)执行SQL语句或者SQL脚本
3)创建、执行、调试函数或存储过程
4)表数据增、删、改、查
5)导入/导出表数据
6)显示/导出DDL
7)SQL助手、格式化、执行历史记录

1.2 DBeaver介绍

DBeaver 是一个跨平台的数据库管理工具,支持 Windows、Linux 和 macOS。

它有两个版本,企业版和社区版,对于个人开发者来说,社区版的功能已经足够强大。DBeaver 是由 Java 编写的,默认使用 JDK 11 进行编译。社区版基于 Apache-2.0 License 在 GitHub 上开源,目前已获得 25.3k+ 的星标。DBeaver 支持几乎所有主流的数据库,包括关系型数据库和非关系数据库。

可以通过 DBeaver 官方下载安装包,也可以通过 GitHub 下载 release 版本。
官方下载地址:https://dbeaver.io/download/

02

数据库配置

2.1 开启数据库监听

postgresql.conf和pg_hba.conf这两个文件很重要。
postgresql.conf为参数文件,pg_hba.conf是黑白名单,在修改之前最好做一下备份。

[root@jeames ~]# find / -name postgresql.conf /opt/software/openGauss/data/single_node/postgresql.conf /var/lib/pgsql/15/data/postgresql.conf [root@jeames ~]# find / -name pg_hba.conf /opt/software/openGauss/data/single_node/pg_hba.conf /var/lib/pgsql/15/data/pg_hba.conf
[root@jeames ~]# cd /opt/software/openGauss/data/single_node [root@jeames single_node]# cp postgresql.conf /opt [root@jeames single_node]# cp pg_hba.conf /opt bdbb1f710809bfce11f71766e70e9026.jpeg

修改postgresql.conf

切换到omm用户,修改postgresql.conf配置项ssl 为off,配置项ssl前面的#号去掉 [root@jeames ~]# su - omm [omm@jeames ~]$ cd /opt/software/openGauss/data/single_node [omm@jeames single_node]$ vi postgresql.conf e55119740ad14f0a2b12b9d22d09e788.jpeg
修改postgresql.conf配置项listen_addresses 将 listen_addresses = ‘localhost’ 修改为 listen_addresses = ‘localhost,192.168.0.95’ 其中192.168.0.95 为openGauss所在服务器实际的IP。 注意, 配置项listen_addresses 前面的#要去掉,逗号为英文逗号。 aab28ba8823751704b383fb82aa21402.jpeg

企业版openGauss也提供了命令可以直接修改: gs_guc reload -N opengauss -I all -c “listen_addresses=‘localhost,192.168.0.95’ 其中opengauss 替换为实际的数据库名称,192.168.0.95替换为实际的数据库IP

修改pg_hba.conf


增加IP远程访问连接许可 host all all 0.0.0.0/0sha256 此外,企业版openGauss也提供了命令可以直接修改 gs_guc set -N all -I all -h “host all all 0.0.0.0/0 sha256” \
[root@jeames ~]# find / -name pg_hba.conf /opt/software/openGauss/data/single_node/pg_hba.conf /opt/pg_hba.conf /var/lib/pgsql/15/data/pg_hba.conf
[root@jeames ~]# vi /opt/software/openGauss/data/single_node/pg_hba.conf c182e4352ab40bea8cd0effc4ebbfcf5.jpeg

重启数据库

方法1: [root@jeames ~]# su - omm --关闭 [omm@jeames ~]$ gs_om -t stop --启动 [omm@jeames ~]$ gs_om -t start 启动成功会显启动成功。
方法2: 极简版用下命令重启,根据实际情况替换。 gs_ctl restart -D /opt/software/openGauss/data/single_node/

2.2 业务用户创建

在openGauss创建业务用户并赋予权限 [omm@jeames ~]$ gsql -d postgres -p 5434 openGauss=# CREATE USER mesdb PASSWORD ‘Gauss@123’; openGauss=# GRANT ALL PRIVILEGES TO mesdb; openGauss=# \du 4fcee46769cf7b748f621969c8a5242a.jpeg

 2.3 java环境

Java 版本要求1.8 及以上 [root@jeames ~]# rpm -qa | grep openjdk –服务器上有自带的jdk卸载 [root@jeames ~]# yum -y remove openjdk

1)解压安装包 [root@jeames ~]# cd /soft [root@jeames ~]# tar -zxf jdk-8u261-linux-x64.tar.gz -C /usr/lib/java [root@jeames soft]# ll /usr/lib/java/jdk1.8.0_261 total 25668 drwxr-xr-x 2 10143 10143     4096 Jun 18  2020 bin -r--r--r-- 1 10143 10143     3244 Jun 18  2020 COPYRIGHT drwxr-xr-x 3 10143 10143     4096 Jun 18  2020 include -rw-r--r-- 1 10143 10143  5219010 Jun 18  2020 javafx-src.zip -rw-r--r-- 1 10143 10143      195 Jun 18  2020 jmc.txt drwxr-xr-x 6 10143 10143     4096 Jun 18  2020 jre drwxr-xr-x 4 10143 10143     4096 Jun 18  2020 legal drwxr-xr-x 4 10143 10143     4096 Jun 18  2020 lib -r--r--r-- 1 10143 10143       44 Jun 18  2020 LICENSE drwxr-xr-x 4 10143 10143     4096 Jun 18  2020 man -r--r--r-- 1 10143 10143      159 Jun 18  2020 README.html -rw-r--r-- 1 10143 10143      424 Jun 18  2020 release -rw-r--r-- 1 10143 10143 21005583 Jun 18  2020 src.zip -rw-r--r-- 1 10143 10143      190 Jun 18  2020 THIRDPARTYLICENSEREADME-JAVAFX.txt -r--r--r-- 1 10143 10143      190 Jun 18  2020 THIRDPARTYLICENSEREADME.txt
2)vi打开 vi /etc/profile,在末尾位置放置下面的代码 export JAVA_HOME=/usr/lib/java/jdk1.8.0_261 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin export PATH=$PATH:${JAVA_PATH}
3)运行source /etc/profile
4)查看java -version [root@hfrptdb1 soft]# java -version java version "1.8.0_261" Java(TM) SE Runtime Environment (build 1.8.0_261-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode) 60373f0afd980f22b45ee6743bde057c.jpeg

03

Data Studio配置

Data Studio系统要求: CPU x86 64位 可用内存 1GB,可用磁盘1G以上 操作系统 Windows 7,Windows 10,Windows 2012/2016 支持的openGauss版本:1.0.1及之后版本 JAVA 版本要求1.8 及以上,可以使用Oracle或者Huawei JDK 。

步骤 1
下载链接:https://opengauss.org/zh/download/

012c10d826b31d91793f2899658bdf71.jpeg

步骤 2解压DataStudio_win_64.zip到本地

步骤 3找到Data Studio的解压目录,双击Data Studio.exe。
如果安装了jdk环境,此时会自动打开创建新连接的窗口,按照要求填写配置项即可
注意:名称自己定,主机和端口号为openGauss的服务器IP和安装时配置的端口,连接用户不能用omm)及对应密码。

6f62a1ed8757f659f04140fdc5b9e81a.jpeg 6b75413a6af316ca795ab85344bcff4a.jpeg

04

DBeaver配置

下载DBeaver : https://dbeaver.io/download

2ac71a55e98dbe2cc027aba81070b1b6.jpeg

windows的dbeaver-ce-21.3.2-x86_64-setup.exe,通过模拟版的安装方式,双击一路安装完成 。

步骤 1:
安装目录下启动dbeaver.exe,选择菜单 > 数据库> 驱动管理器,在弹出框中选择新建。

d2bd47403d2b51d6e2cfb434356b9f58.jpeg步骤 2:
在创建新驱动中选择库页签,然后添加文件选择本地的opengauss-jdbc-3.0.0.jar·,然后点击下面的找到类,选择下拉框里出来的驱动类

1c2db24690398ff60464319a00ca6070.jpeg

步骤 3:
切换到设置页签,URL模板输入:jdbc:opengauss://{host}:{port}/{database} 

784e1d8a081ae5223cbb7f486b43f5a1.jpeg


点击确定后,驱动管理器就会出现新的openGauss的类型,点击关闭即可。

步骤 4:
选择 菜单 > 数据库 > 新建数据库连接,在弹出框选择 全部,搜索框输入openGauss


步骤 5:
在弹出框中填写openGauss主机IP、端口,要连接的数据库及用户名和密码,点击测试链接


05

DBeaver连接

1. 选择菜单->数据库->新建连接, 在弹出的框中搜索上一步中新建的JDBC驱动名,选择后点击下一步,如下图示:

67d1ff22bf6429d8f3254493707b695a.jpeg

2. 在弹出框中填写openGauss 主机地址、端口、将要连接的数据库以及认证用户名和密码,点击测试链接验证是否可正确连接,如图示:

9112e30180b4774b9163d57322c7978b.jpeg

3. 测试结果OK后点击确认,并点击完成,则连接成功

18e58cc29dd5317f92a1e9642b8edbf5.jpeg

4. 左边的导航栏即可见数据库已经连接成功

7b108b6cb08f62ba2d8b375c840e77ca.jpeg

06

DBeaver使用

SQL编写:选中要使 用的数据库,并按下F3(或使用菜单->SQL编辑器->SQL编辑器)即可打开SQL编写器,可以在编辑器中编写SQL和执行。
4b6066902c988234a13b2c2fd2087c38.jpeg

其他功能使用和其他客户端工具相似,请自行探索。


07

常见问题

1. Javax.xml.bind.DatatypeConverter转换出错,如下图

1208b16f5e6eee604cd3c53233079b65.jpeg

**解决方法 *: 本地安装的java版本无javax.xml.bind.jar这个包, 可以在添加JDBC驱动jar包时额外增加此包:https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api/2.2.2

也可以使用maven下载:

<!--https://mvnrepository.com/artifact/javax.xml.bind/jaxb-api --> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.2.2</version> </dependency>.

2. 提示No suitable driver found for jdbc:postgresql://xxx

a5961a388580887c1ec4ed374b8dee4b.jpeg

解决方法:在添加JDBC驱动时不要勾选 ‘Use legacy JDBC instantiation’:

e859e515c164c1d65686e25dd40b521f.jpeg

http://lihuaxi.xjx100.cn/news/1854153.html

相关文章

Docker篇之利用docker搭建ftp服务器可实现多用户上传

一、前言 场景&#xff1a;公司需要搭建FTP服务器&#xff0c;供内网之前可以互相传递数据&#xff0c;安全稳定&#xff0c;需要满足开通多个账号&#xff0c;每个用户上传的文件有自己对应的文件目录。 这里建议&#xff1a;用户目录Disk尽量大一点&#xff0c;避免因为空间不…

Flash学习

FLASH介绍 FLASH是常用的&#xff0c;用于存储数据的半导体器件&#xff0c;它具有容量大&#xff0c;可重复擦写&#xff0c;按“扇区/块”擦除、掉电后数据可继续保存的特性。 常见的FLASH有NOR FLASH和NAND FLASH。 NOR和NAND是两种数字门电路&#xff0c;可以简单地认为F…

【FMC140】 基于VITA57.4标准的双通道5.2GSPS(或单通道10.4GSPS)射频采样FMC+子卡模块

板卡概述 FMC140是一款具有缓冲模拟输入的低功耗、12位、双通道&#xff08;5.2GSPS/通道&#xff09;、单通道10.4GSPS、射频采样ADC模块&#xff0c;该板卡为FMC标准&#xff0c;符合VITA57.1规范&#xff0c;该模块可以作为一个理想的IO单元耦合至FPGA前端&#xff0c;8通道…

Java部署服务 Java -jar命令讲解

1. 当前ssh窗口被锁定&#xff0c;可按CTRL C打断程序运行&#xff0c;或直接关闭窗口&#xff0c;程序退出 #正常启动jar包 java -jar XXX.jar#当前ssh窗口被锁定&#xff0c;可按CTRL C打断程序运行&#xff0c;或直接关闭窗口&#xff0c;程序退出。 2. 当前ssh窗口不被锁…

聚观早报 |亚马逊AWS发布新AI芯片;拼多多Q3营收增长94%

【聚观365】11月30日消息 亚马逊AWS发布新AI芯片 拼多多Q3营收增长94% Redmi K70全新国风配色揭晓 英伟达扩大自动驾驶中国团队 华为nova 12参数细节曝光 亚马逊AWS发布新AI芯片 在美国时间周二举办的Reinvent大会上&#xff0c;亚马逊旗下的云计算部门AWS发布了新的人工…

11-30 SpringBoot2

热部署 开发过程中,修改代码,不需要重启,自动更新 项目上线,一定要关闭 SpringBoot热部署的实现&#xff1f;&#xff1f; ideal默认阻止class类更新 2&#xff0e;需要手动构建项目&#xff0c;可以使用快捷键激活此功能ctrl F9 / build project 自动构建项目 允许程序运行…

leetcode 18. 四数之和(优质解法)

代码&#xff1a; class Solution {public List<List<Integer>> fourSum(int[] nums, int target) {List<List<Integer>> listsnew ArrayList<>();int lengthnums.length;Arrays.sort(nums);for(int i0;i<length-4;){for(int ji1;j<lengt…

1657.确定两个字符串是否接近

​​题目来源&#xff1a; leetcode题目&#xff0c;网址&#xff1a;1657. 确定两个字符串是否接近 - 力扣&#xff08;LeetCode&#xff09; 解题思路&#xff1a; 当一个字符串中出现的字符全部在另一个字符串中出现并且 两字符串各字符出现次数排序后的 有序序列相同 时&a…