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

建议使用完整命令连接数据库
gsql -d omm -p 5432 -r

2、在gsql中查看数据库的版本、pg基础版本和版权信息
查看数据库版本使用下述命令
select version();
输出数据库版本,编译时间,操作系统等信息

使用下述命令查看pg基础版本信息
show server_version();
输出pg基础版本信息,可以看到实操环境的openGauss是基于pg9.2.4

查看版权信息的命令。这种命令首次了解,孤陋寡闻咯。
\copyright
输出信息显示openGauss 是华为GaussDB内核数据库管理系统,版权归属华为公司。

3、常见元命令的使用
元命令 \l 是显示openGauss数据库集簇中,目前有哪些数据库。

元命令\conninfo 在gsql中显示当前会话的连接信息。

元命令\c[onnect] [dbname] 在gsql中,切换连接的数据库。

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


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

元命令\dn 是显示当前数据库有哪些数据库模式

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

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

元命令\dt 是显示数据库中的所有表

元命令\d TableName 是查看某张表的信息

元命令\di IndexName 是查看某个索引的信息。我们先在customer_t表中创建个索引
CREATE INDEX idx_customer_id on customer_t(c_customer_id);


元命令\pset 可以指定表显示的方法。


元命令\x 是打开扩展表格式模式

4、gsql中的事务,测试gsql中的默认事务自动提交功能
查看gsql中的事务是否默认为自动提交。从输出结果中可以看到,当前实例的事务是默认自动提交的。

创建个表测试gsql中事务的自动提交功能
CREATE TABLE customer_new as select * from customer_t;

新表已创建成功,退出重新登陆

使用元命令dt 查看数据库的表。

从输出可以看到,新建的customer_new已经存在。
5、gsql中的事务,测试gsql中的事务手动提交功能
首先关闭openGauss默认的事务自动提交功能。
\set AUTOCOMMIT off

插入一条数据
INSERT INTO customer_t(c_customer_sk,c_customer_id,c_first_name ,c_last_name) VALUES (6885,1,'Joes','Hunter');

查询下插入数据情况
select * from customer_t;

然后,执行回滚

然后,我们再查询一下。

可以看到,插入的数据(6885,1,‘Joes’,‘Hunter’)已经回滚。
6、gsql相关的帮助
连接数据库时,可以使用–help获得帮助
gsql --help

登陆openGauss,使用元命令\h获取和SQL语法有关的帮助信息

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





