暂无图片
暂无图片
暂无图片
暂无图片
1
暂无图片

openGauss每日一练第2天|客户端工具gsql的使用

原创 Heming 2022-11-26
1310

openGauss每日一练第2天

学习openGauss客户端工具gsql的使用

gsql是openGauss的一个客户端工具,可以使用该工具连接数据库,对数据库进行维护和SQL执行。

使用gsql连接数据库

在使用su omm切换到omm用户下后,执行gsql -r 连接数据库:

omm@modb:/root$ gsql -r gsql ((openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:00 commit 0 last mr ) Non-SSL connection (SSL connection is recommended when requiring high-security) Type "help" for help.
复制

也可以通过-d参数和-p参数指定连接的数据库名和数据库端口号如gsql -d omm -p 5432 -r

根据上述提示,我们成功连上了数据库

查询数据库版本,pg基础版本和版权信息

查看数据库的版本号,在使用gsql连接数据库后,可以执行select version();
omm=# select version(); (openGauss 3.0.0 build 02c14696) compiled at 2022-04-01 18:12:00 com mit 0 last mr on aarch64-unknown-linux-gnu, compiled by g++ (GCC) 7 .3.0, 64-bit (1 row)
复制
查看pg基础版本,通过show server_version;:
omm=# show server_version; server_version ---------------- 9.2.4 (1 row)
复制
查看版权信息,通过gsql的元命令\copyright:
omm=# \copyright GaussDB Kernel Database Management System Copyright (c) Huawei Technologies Co., Ltd. 2018. All rights reserved.
复制

常用gsql元命令

  • 展示当前有什么数据库:\l

  • 展示当前会话的连接信息:\coninfo

  • 切换连接的数据库:\c [DBNAME]

    如切换到名为postgres的数据库

    omm=# \c postgres Non-SSL connection (SSL connection is recommended when requiring high-security) You are now connected to database "postgres" as user "omm".
    复制
  • 展示当前数据库存在的用户和角色:\du\dg

  • 展示当前数据库存在的schema和schema的主人:\dn

  • 展示当前数据库存在的表空间和表空间的主人:\db

  • 展示当前数据库存在的所有表:\dt

  • 查看某个表的信息(字段信息):\d [tableName]

  • 查看索引信息:\di [indexName]

  • 改变查询SQL的数据展示形式:\x

    omm=# select * from customer_t; +---------------+---------------+--------------+-------------+ | c_customer_sk | c_customer_id | c_first_name | c_last_name | +---------------+---------------+--------------+-------------+ | 3769 | 5 | Grace | White | | 3769 | 5 | Grace | White | +---------------+---------------+--------------+-------------+ (2 rows) omm=# \x Expanded display is on. omm=# select * from customer_t; [ RECORD 1 ]-+--------- | c_customer_sk | 3769 | | c_customer_id | 5 | | c_first_name | Grace | | c_last_name | White | [ RECORD 2 ]-+--------- omm=# | c_customer_sk | 3769 | | c_customer_id | 5 | | c_first_name | Grace | | c_last_name | White | -------------+---------
    复制

gsql事务

查看事务是否为自动提交
omm=# show AUTOCOMMIT; [ RECORD 1 ]-- | autocommit | on | ----------+---
复制
使用手动提交,测试事务回滚

使用\set AUTOCOMMIT off关闭事务的自动提交后,删除customer_t表后再通过ROLLBACK回滚恢复数据。

omm=# \dt List of relations Schema | Name | Type | Owner | Storage --------+------------+-------+-------+----------------------------- ----- public | customer_t | table | omm | {orientation=row,compression =no} (1 row) omm=# drop table customer_t; DROP TABLE omm=# \dt No relations found. omm=# ROLLBACK; ROLLBACK omm=# \dt List of relations Schema | Name | Type | Owner | Storage --------+------------+-------+-------+----------------------------- ----- public | customer_t | table | omm | {orientation=row,compression =no} (1 row)
复制

查看gsql帮助文档

  • 查看gsql工具的帮助:gsql --help
  • 查看SQL语法相关的帮助(通过gsql连接数据库后):\h
  • 查看元命令相关的帮助(通过gsql连接数据库后):\?
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

墨天轮福利君
暂无图片
2年前
评论
暂无图片 0
作业审核合格,一起参与21天openGauss学习打卡活动! 活动详情:https://www.modb.pro/db/551619
2年前
暂无图片 点赞
评论