您现在的位置是:首页 >技术杂谈 >openGauss 3.0 数据库在线实训课程2:学习客户端工具gsql的使用网站首页技术杂谈

openGauss 3.0 数据库在线实训课程2:学习客户端工具gsql的使用

Yeats_Liao 2025-03-19 00:01:03
简介openGauss 3.0 数据库在线实训课程2:学习客户端工具gsql的使用

在这里插入图片描述

openGauss数据库状态查看

前提

我正在参加21天养成好习惯| 第二届openGauss每日一练活动

课程详见:openGauss 3.0.0数据库在线实训课程

学习目标

学习openGauss数据库客户端工具gsql的使用。

课程作业

gsql是openGauss提供在命令行下运行的数据库连接工具,可以通过此工具连接服务器并对其进行操作和维护,除了具备操作数据库的基本功能,gsql还提供了若干高级特性,便于用户使用。

1.gsql命令连到数据库omm

–使用omm用户连接到本机omm数据库的5432端口,命令中的-r选项提供了对gsql命令的历史版本支持。

su - omm
gsql -r
或
gsql -d omm  -p 5432  -r

在这里插入图片描述
image.png

2.查看数据库的版本、版权信息

select version();

image.png

show server_version;

image.png

 copyright

image.png


omm=# select version();
                                                                        version                                               
                         
------------------------------------------------------------------------------------------------------------------------------
-------------------------
 (openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:00 commit 0 last mr   on aarch64-unknown-linux-gnu, compiled by
 g++ (GCC) 7.3.0, 64-bit
(1 row)

omm=# show server_version;
 server_version 
----------------
 9.2.4
(1 row)

omm=# copyright
GaussDB Kernel Database Management System
Copyright (c) Huawei Technologies Co., Ltd. 2018. All rights reserved.

3.常见元命令使用

–l命令,元命令l的作用是显示openGauss数据库集簇中,目前有哪些数据库。

l

image.png
–conninfo命令,元命令conninfo的作用是在gsql中,显示会话的连接信息。

conninfo

在这里插入图片描述

–c[onnect] [DBNAME]命令,元命令 c[onnect] [DBNAME]的作用是在gsql中,切换连接的数据库postgres。(这里并未设置,故显示无连接)

c postgres

image.png

–du命令和dg命令,元命令dg命令与元命令du命令的作用类似,都是显示openGauss数据库集簇中,目前有哪些用户和角色。

du

在这里插入图片描述

dg

image.png

–db命令,元命令db的作用是显示openGauss数据库集簇中,目前有哪些表空间。

db

image.png

–dn命令,元命令dn的作用是显示当前数据库有哪些数据库模式。

dn

image.png

–创建表

这里记得切换回omm用户

CREATE TABLE customer_t
(  c_customer_sk             integer,   
 c_customer_id             char(5),    
 c_first_name              char(6),    
 c_last_name               char(8) 
) ;

image.png

–插入数据

INSERT INTO customer_t (c_customer_sk, c_customer_id, c_first_name,c_last_name) VALUES (3769, 5, 'Grace','White');

image.png

–dt命令,命令dt的作用是显示数据库中所有的表。

dt

image.png

–d TableName命令,元命令d TableName的作用是查看某个表的信息。

d customer_t

image.png

–di IndexName命令,查看索引信息,元命令di IndexName的作用是查看某个索引的信息。

create index idx_customer_id on customer_t(c_customer_id);
di     

image.png

–可以用pset命令以不同的方法显示表:

border 2增加上下边框

pset border 2
SELECT * FROM customer_t;

image.png

–打开扩展表格式模式。

x

image.png

4.使用两种方法,连到postgres数据库中

su - omm
gsql -r
//切换连接的数据库到postgres
c postgres

image.png
image.png


gsql -d omm  -p 5432  -r

image.png

5.测试gsql中的默认事务自动提交功能

–查看gsql中事务是否默认为自动提交

show AUTOCOMMIT;

image.png

–测试gsql中事务默认为自动提交功能

create  table customer_new as select * from customer_t;
q

image.png

–重新登录后看到之前创建的表customer_new:

gsql -d omm  -p 5432  -r
dt

image.png

6.测试gsql中的事务手动提交功能

-–测试gsql手动提交 #Opengauss默认执行完一条语句后,立即提交。可以关闭自动提交功能

–注意:此处设置ATUOCOMMIT必须用大写!–

set AUTOCOMMIT off

–插入一些数据

INSERT INTO customer_t (c_customer_sk, c_customer_id, c_first_name,c_last_name) VALUES    
(6885, 1, 'Joes', 'Hunter'),    
(4321, 2, 'Lily','Carter'),    
(9527, 3, 'James', 'Cook'),
(9500, 4, 'Lucy', 'Baker');

–查看表中数据

select * from customer_t;

–执行回滚

ROLLBACK;

–检查是否回滚成功

SELECT * FROM customer_t;

image.png

7.了解gsql相关帮助

–连接数据库时,可以使用如下命令获取帮助信息。

gsql --help

image.png

–h获取和SQL语法有关的帮助信息

h

image.png

–? 获取和元命令有关的帮助信息

image.png

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。