1.分别创建名为tpcc1和tpcc2的数据库
首先,登录到openGauss 数据库,命令如下:
su - omm 切换到OMM用户
gsql -r
或
gsql ----测试了下,尽量不使用gsql命令 登录openGauss,因为此命令下TAB键无法不全,gsql -r 命令登录openGauss 数据库后,可以使用TAB 键进行补全,非常方便。
查看openGauss 数据库 中的实例,SQL 如下:
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
(5 rows)
-----------+-------+----------+-------------+-------------+-------------------
music2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
创建名为tpcc1和tpcc2的数据库,语句如下:
omm=# create database tpcc1;
CREATE DATABASE
omm=# create database tpcc2;
CREATE DATABASE
再次查看openGauss 数据库 中的实例(可以看到多了tpcc1和tpcc2两个数据库),SQL 如下:
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-------+----------+-------------+-------------+-------------------
music2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
tpcc2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
tpcc1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
(7 rows)
操作截图如下:


2.将tpcc1数据库重命名为tpcc10
将刚创建的tpcc1数据库重命名为tpcc10,(使用命令为:alter database .. rename to .. 命令):
语句如下:
omm=# alter database tpcc1 rename to tpcc10;
ALTER DATABASE
查看openGauss 数据库 中的实例(可以看到tpcc1 没了,变成了tpcc10数据库),SQL 如下:
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-------+----------+-------------+-------------+-------------------
music2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
tpcc10 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
tpcc2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
(7 rows)
操作截图如下:

3.分别使用\l和\l+两个元命令查看数据库信息
使用\l元命令查看数据库信息,语句如下:
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-------+----------+-------------+-------------+-------------------
music2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
omm=# tpcc10 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
tpcc2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
(7 rows)
使用\l+元命令查看数据库信息,语句如下:
omm=# \l+
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges | Size | Tabl
espace | Description
-----------+-------+----------+-------------+-------------+-------------------+-------+-----
-------+--------------------------------------------
music2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 10 MB | pg_d
efault |
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 10 MB | pg_d
efault |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 10 MB | pg_d
efault | default administrative connection database
| | | | | omm=CTc/omm | |
|
| | | | | omm=CTc/omm | |
|
tpcc10 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 10 MB | pg_d
efault |
tpcc2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | | 10 MB | pg_d
efault |
--More-- template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +| 10 MB | pg_d
efault | default template for new databases
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +| 10 MB | pg_d
efault | unmodifiable empty database
(7 rows)
通过以上对比可以发现,\l+ 元命令可以查看数据库更详细的信息,相比于\l 命令可以看到大小、表空间和描述。
操作截图:


4.在数据库tpcc2中创建customer表,字段自定义
进入数据库使用\c 命令:
omm=# \c tpcc2;
Non-SSL connection (SSL connection is recommended when requiring high-security)
You are now connected to database "tpcc2" as user "omm".
使用\c 命令切换到某个数据库后,可以看到提示,目前已经连接到数据库名字叫什么。
数据库tpcc2中创建customer表,字段自定义:
tpcc2=# CREATE TABLE customer
(id INTEGER,
name Char(20),
address Char(30)
) ;
CREATE TABLE
创建完毕后,查询这个表是否存在:
tpcc2=# select * from customer;
id | name | address
----+------+---------
(0 rows)
操作截图:


5.删除新创建的数据库
首先退出 tpcc2 数据库,再进行新建数据库的删除
tpcc2-# \c omm
Non-SSL connection (SSL connection is recommended when requiring high-security)
You are now connected to database "omm" as user "omm".
查看目前现有数据库:
omm-# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-------+----------+-------------+-------------+-------------------
music2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
tpcc10 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
tpcc2 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
(7 rows)
删除新建数据库music2、tpcc2、tpcc10:
omm=# drop DATABASE music2;
DROP DATABASE
omm=# DROP DATABASE tpcc10;
DROP DATABASE
omm=# DROP DATABASE tpcc2;
DROP DATABASE
omm=#
查看删除新建数据库后,现有数据库:
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------+-------+----------+-------------+-------------+-------------------
omm | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
postgres | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/omm +
| | | | | omm=CTc/omm
(4 rows)
操作截图:


6.退出gsql程序
omm-# \q
7、其他
今天练习主要是alter database语法,两部分心得:
一、gsql -r 登录数据库 可以使用TAB键补全, 而gsql 登录数据库,无法使用TAB键进行补全。
二、熟悉了 CREATE DATABASE 、ALTER DATABASE 、 DROP DATABASE 语法
第三天,继续!!!




