暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

openGauss每日一练第9天 | 一个表空间可以有多个库

原创 pysql 2022-12-06
339

openGauss中一个表空间可以存储多个数据库

进一步学习表空间与数据库对象的关系,了解oid的含义。

1.创建表空间、多个数据库和用户

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;


--执行下面的SQL语句,创建用户user1 :

drop user IF EXISTS user1;

CREATE USER user1 IDENTIFIED BY 'kunpeng@1234';

ALTER USER user1 SYSADMIN;


2.使用sql查看数据库所在的表空间

--查看数据库所在的表空间,可以看到一个表空间可以有多个数据库

select datname,dattablespace,spcname from pg_database d, pg_tablespace t where d.dattablespace=t.oid;

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

--查看数据库、表空间的oid

select oid,datname from pg_database;

select oid,* from pg_tablespace ;

select datname,dattablespace,spcname from pg_database d, pg_tablespace t where d.dattablespace=t.oid;


#说明:16505是表空间music_tbs的oid

--从文件系统,查看music_tbs表空间oid,可以看到一个表空间可以有多个数据库

[omm@fdb62pd2 ~]$ ls -lrt /apps2/opengauss/install/data/dn/pg_tblspc/16506/

total 4

drwx------ 7 omm dbgrp 4096 Dec 6 15:19 PG_9.2_201611171_dn_6001_6002


[omm@fdb62pd2 ~]$ ls -lrt /apps2/opengauss/install/data/dn/pg_tblspc/16506/PG_9.2_201611171_dn_6001_6002/

total 68

drwx------ 2 omm dbgrp 4096 Dec 6 15:19 pgsql_tmp

drwx------ 2 omm dbgrp 16384 Dec 6 15:19 16507

drwx------ 2 omm dbgrp 16384 Dec 6 15:19 16508

drwx------ 2 omm dbgrp 16384 Dec 6 15:19 16509

drwx------ 2 omm dbgrp 16384 Dec 6 15:19 16510


[omm@fdb62pd2 ~]$ tree /apps2/opengauss/install/data/dn/pg_tblspc/16506/ -L 2
/apps2/opengauss/install/data/dn/pg_tblspc/16506/
└── PG_9.2_201611171_dn_6001_6002
├── 16507
├── 16508
├── 16509
├── 16510
└── pgsql_tmp

6 directories, 0 files


说明:openGauss中一个表空间可以存储多个数据库。

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

评论