深入解析:第9天 | openGauss中一个表空间可以存储多个数据库

接着昨天继续学习openGauss,今天是第9天了。今天学习内容是o一个数据库可以存储在多个表空间中。
老规矩,先登陆墨天轮为我准备的实训实验室

root@modb:~# su - omm
omm@modb:~$ gsql -r

作业要求

1.创建表空间newtbs1
omm=# CREATE TABLESPACE newtbs1 RELATIVE LOCATION 'tablespace/tablespace_1';
CREATE TABLESPACE

2.创建3个数据库newdb1、newdb2、newdb3,默认表空间为newtbs1

omm=# CREATE DATABASE newdb1 WITH TABLESPACE = newtbs1;
CREATE DATABASE
omm=# CREATE DATABASE newdb2 WITH TABLESPACE = newtbs1;
CREATE DATABASE
omm=# CREATE DATABASE newdb3 WITH TABLESPACE = newtbs1;
CREATE DATABASE

3.使用sql查看表空间newtbs1上有几个数据库

omm=# select datname,dattablespace,spcname from pg_database d, pg_tablespace t where d.dattablespace=t.oid and spcname='newtbs1';
omm=#  datname | dattablespace | spcname
---------+---------------+---------
newdb1  |         16389 | newtbs1
newdb2  |         16389 | newtbs1
newdb3  |         16389 | newtbs1

4.在文件系统中查看表空间newtbs1中的多个数据库
查看表空间newtbs1的 oid

omm=# select oid,* from pg_tablespace ;
oid  |  spcname   | spcowner | spcacl | spcoptions | spcmaxsize | relative
-------+------------+----------+--------+------------+------------+----------
1663 | pg_default |       10 |        |            |            | f
1664 | pg_global  |       10 |        |            |            | f
16389 | newtbs1    |       10 |        |            |            | t

依据oid在文件系统中查看多个数据库

omm@modb:/var/lib/opengauss/data/pg_tblspc/16389/PG_9.2_201611171_gaussdb$ ls
16390  16391  16392  pgsql_tmp

总结
一个表空间可以存储多个数据库.

posted @ 2025-08-05 13:35  yjbjingcha  阅读(10)  评论(0)    收藏  举报