学习目标
学习openGauss体系结构,了解实例(集簇或服务)和数据库的关系。
课程学习
在一个openGauss DBMS上,一个数据库集簇(Database Cluster)中,可以创建、管理多个数据库。
连接数据库
#第一次进入等待15秒
#数据库启动中…
su - omm
gsql -r
复制
omm@modb:~$ 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.
omm=#
复制
- 创建表空间,并在该表空间上创建多个数据库
–进入数据库 omm ,创建表空间、测试数据库
CREATE TABLESPACE music_tbs RELATIVE LOCATION ‘tablespace/test_ts1’;
CREATE DATABASE musicdb WITH TABLESPACE = music_tbs;
CREATE DATABASE musicdb1 WITH TABLESPACE = music_tbs;
CREATE DATABASE musicdb2 WITH TABLESPACE = music_tbs;
CREATE DATABASE musicdb3 WITH TABLESPACE = music_tbs;
复制
omm=# CREATE TABLESPACE music_tbs RELATIVE LOCATION ‘tablespace/test_ts1’;
CREATE TABLESPACE
omm=# CREATE DATABASE musicdb WITH TABLESPACE = music_tbs;
CREATE DATABASE
omm=# CREATE DATABASE musicdb1 WITH TABLESPACE = music_tbs;
CREATE DATABASE
omm=# CREATE DATABASE musicdb2 WITH TABLESPACE = music_tbs;
CREATE DATABASE
omm=# CREATE DATABASE musicdb3 WITH TABLESPACE = music_tbs;
CREATE DATABASE
复制
2. 执行 \db 命令,查看 openGauss 数据库上有哪些表空间
\db
复制
omm=# \db
omm=# List of tablespaces
Name | Owner | Location
------------±------±--------------------
music_tbs | omm | tablespace/test_ts1
pg_default | omm |
pg_global | omm |
(3 rows)
复制
3. 执行 \l 命令,查看 openGauss 实例中有哪些数据库
–\l命令,元命令\l的作用是显示openGauss数据库集簇中,目前有哪些数据库。
\l
复制
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------±------±---------±--------±------±------------------
musicdb | omm | UTF8 | C | C |
musicdb1 | omm | UTF8 | C | C |
musicdb2 | omm | UTF8 | C | C |
omm | omm | UTF8 | C | C |
postgres | omm | UTF8 | C | C |
template0 | omm | UTF8 | C | C | =c/omm +
omm=# | | | | | omm=CTc/omm
template1 | omm | UTF8 | C | C | =c/omm +
| | | | | omm=CTc/omm
(7 rows)
复制
4. 查看 openGauss 数据库上实例的进程、线程
–查看实例中的进程
! ps -ef|grep gaussdb
–查看实例中的线程
! ps -Tp 1
复制
omm=# ! ps -ef|grep gaussdb
omm 1 0 0 20:50 ? 00:00:02 gaussdb
omm 416 378 0 20:57 pts/0 00:00:00 sh -c ps -ef|grep gaussdb
omm 418 416 0 20:57 pts/0 00:00:00 grep gaussdb
omm=# ! ps -Tp 1
PID SPID TTY TIME CMD
1 1 ? 00:00:00 gaussdb
1 293 ? 00:00:00 jemalloc_bg_thd
1 299 ? 00:00:00 gaussdb
1 300 ? 00:00:00 syslogger
1 301 ? 00:00:00 jemalloc_bg_thd
1 302 ? 00:00:00 alarm
1 303 ? 00:00:00 reaper
1 304 ? 00:00:00 jemalloc_bg_thd
1 305 ? 00:00:00 jemalloc_bg_thd
1 349 ? 00:00:00 checkpointer
1 350 ? 00:00:00 Spbgwriter
1 351 ? 00:00:00 pagewriter
1 352 ? 00:00:00 pagewriter
1 353 ? 00:00:00 pagewriter
1 354 ? 00:00:00 pagewriter
1 355 ? 00:00:00 pagewriter
1 357 ? 00:00:00 WALwriteraux
1 356 ? 00:00:00 WALwriter
1 358 ? 00:00:00 AVClauncher
1 359 ? 00:00:00 Jobscheduler
1 360 ? 00:00:00 asyncundolaunch
1 361 ? 00:00:00 globalstats
1 362 ? 00:00:00 applylauncher
1 363 ? 00:00:00 statscollector
1 364 ? 00:00:00 percentworker
1 365 ? 00:00:00 ashworker
1 366 ? 00:00:00 TrackStmtWorker
1 367 ? 00:00:00 auditor
1 368 ? 00:00:00 2pccleaner
1 369 ? 00:00:00 faultmonitor
1 370 ? 00:00:00 WLMworker
1 371 ? 00:00:00 WLMmonitor
1 372 ? 00:00:00 WLMarbiter
1 379 ? 00:00:00 worker
1 373 ? 00:00:00 undorecycler
omm=#
复制
课程作业
- 创建表空间 music_tbs1 和多个数据库 music_db 、 music_db1 、 music_db2
CREATE TABLESPACE music_tbs1 RELATIVE LOCATION ‘tablespace/test_ts2’;
CREATE DATABASE music_db WITH TABLESPACE = music_tbs1;
CREATE DATABASE music_db1 WITH TABLESPACE = music_tbs1;
CREATE DATABASE music_db2 WITH TABLESPACE = music_tbs1;
复制
omm=# CREATE TABLESPACE music_tbs1 RELATIVE LOCATION ‘tablespace/test_ts2’;
CREATE TABLESPACE
omm=# CREATE DATABASE music_db WITH TABLESPACE = music_tbs1;
CREATE DATABASE
omm=# CREATE DATABASE music_db1 WITH TABLESPACE = music_tbs1;
CREATE DATABASE
omm=# CREATE DATABASE music_db2 WITH TABLESPACE = music_tbs1;
CREATE DATABASE
复制 - 查看数据库上的表空间
omm=# \db
List of tablespaces
Name | Owner | Location
------------±------±--------------------
music_tbs | omm | tablespace/test_ts1
music_tbs1 | omm | tablespace/test_ts2
pg_default | omm |
pg_global | omm |
(4 rows)
omm=#
复制
3. 查看 openGauss 实例上有哪些数据库
omm=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
-----------±------±---------±--------±------±------------------
music_db | omm | UTF8 | C | C |
music_db1 | omm | UTF8 | C | C |
music_db2 | omm | UTF8 | C | C |
musicdb | omm | UTF8 | C | C |
musicdb1 | omm | UTF8 | C | C |
musicdb2 | omm | UTF8 | C | C |
omm | omm | UTF8 | C | C |
postgres | omm | UTF8 | C | C |
template0 | omm | UTF8 | C | C | =c/omm +
| | | | | omm=CTc/omm
template1 | omm | UTF8 | C | C | =c/omm +
| | | | | omm=CTc/omm
(10 rows)
omm=#
复制
4. 使用操作系统命令,查看openGauss实例的进程、线程
omm=# ! ps -ef|grep gaussdb
omm 1 0 0 20:50 ? 00:00:04 gaussdb
omm 476 378 0 21:03 pts/0 00:00:00 sh -c ps -ef|grep gaussdb
omm 478 476 0 21:03 pts/0 00:00:00 grep gaussdb
omm=#
omm=# ! ps -Tp 1
PID SPID TTY TIME CMD
1 1 ? 00:00:00 gaussdb
1 293 ? 00:00:00 jemalloc_bg_thd
1 299 ? 00:00:00 gaussdb
1 301 ? 00:00:00 jemalloc_bg_thd
1 300 ? 00:00:00 syslogger
1 302 ? 00:00:00 alarm
1 303 ? 00:00:00 reaper
1 304 ? 00:00:00 jemalloc_bg_thd
1 305 ? 00:00:00 jemalloc_bg_thd
1 349 ? 00:00:00 checkpointer
1 351 ? 00:00:00 pagewriter
1 350 ? 00:00:00 Spbgwriter
1 352 ? 00:00:00 pagewriter
1 353 ? 00:00:00 pagewriter
1 355 ? 00:00:00 pagewriter
1 354 ? 00:00:00 pagewriter
1 356 ? 00:00:00 WALwriter
1 357 ? 00:00:00 WALwriteraux
1 358 ? 00:00:00 AVClauncher
1 360 ? 00:00:00 asyncundolaunch
1 359 ? 00:00:00 Jobscheduler
1 361 ? 00:00:00 globalstats
1 362 ? 00:00:00 applylauncher
1 363 ? 00:00:00 statscollector
1 364 ? 00:00:00 percentworker
1 365 ? 00:00:01 ashworker
1 366 ? 00:00:00 TrackStmtWorker
1 367 ? 00:00:00 auditor
1 368 ? 00:00:00 2pccleaner
1 369 ? 00:00:00 faultmonitor
1 370 ? 00:00:00 WLMworker
1 371 ? 00:00:00 WLMmonitor
1 372 ? 00:00:00 WLMarbiter
1 373 ? 00:00:00 undorecycler
1 379 ? 00:00:00 worker
omm=#