怎么使用PostgreSQL表空间

网友投稿 358 2024-01-04

怎么使用PostgreSQL表空间

这篇文章主要讲解了“怎么使用PostgreSQL表空间”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用PostgreSQL表空间”吧!

怎么使用PostgreSQL表空间

1、表空间:

可以通过表空间指定不同性能的存储上:

[root@jason1 ~]# mkdir -p /ssd/tbs_jason01

[root@jason1 ~]# chown -R postgres:postgres /ssd/tbs_jason01

[root@jason1 ~]# cd /ssd/tbs_jason01

postgres=# create tablespace tbs_jason01 LOCATION /ssd/tbs_jason01;

CREATE TABLESPACE

#每个表空间对应一个目录

[root@jason1 tbs_jason01]# ll

total 0

drwx------. 2 postgres postgres 6 Sep 24 21:22 PG_10_201707211

[root@jason1 tbs_jason01]#

2、表空间目录下,每个库对应一个目录

postgres=# create database jason01 tablespace tbs_jason01;

CREATE DATABASE

postgres=# select oid,datname from pg_database;

  oid  |  datname 

-------+-----------

13212 | postgres

16384 | test

     1 | template1

13211 | template0

16385 | jason

16389 | jason01

(6 rows)

[root@jason1 PG_10_201707211]# ll

total 12

drwx------. 2 postgres postgres 8192 Sep 24 21:25 16389

3、在数据库中,每个表对应一个个文件,以每个文件1G的形式存储,单表最大支持量 32T。

postgres=# \c jason01

You are now connected to database "jason01" as user "postgres".

jason01=#

jason01=# create table jason01(

jason01(#     id int,

jason01(#     note text

jason01(# ) tablespace tbs_jason01;

CREATE TABLE

jason01=#

[root@jason1 16389]# pwd

/ssd/tbs_jason01/PG_10_201707211/16389

[root@jason1 16389]# ll -lrt

-rw-------. 1 postgres postgres  24576 Sep 24 21:25 13072_fsm

-rw-------. 1 postgres postgres   8192 Sep 24 21:25 13062_vm

-rw-------. 1 postgres postgres  24576 Sep 24 21:25 13062_fsm

-rw-------. 1 postgres postgres 136164 Sep 24 21:34 pg_internal.init

-rw-------. 1 postgres postgres      0 Sep 24 21:34 16408

-rw-------. 1 postgres postgres   8192 Sep 24 21:34 16413

-rw-------. 1 postgres postgres      0 Sep 24 21:34 16411

##查看表存储路径:

jason=# \c jason01

You are now connected to database "jason01" as user "postgres".

jason01=# select pg_relation_filepath(jason01);

            pg_relation_filepath            

---------------------------------------------

pg_tblspc/16388/PG_10_201707211/16389/16408

(1 row)

jason01=#

jason01=# insert into jason01 values(1,dagagdgaaga);

INSERT 0 1

[root@jason1 16389]# ll 164*

-rw-------. 1 postgres postgres 8192 Sep 26 14:59 16408

-rw-------. 1 postgres postgres    0 Sep 24 21:34 16411

-rw-------. 1 postgres postgres 8192 Sep 24 21:34 16413

感谢各位的阅读,以上就是“怎么使用PostgreSQL表空间”的内容了,经过本文的学习后,相信大家对怎么使用PostgreSQL表空间这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:PostgreSQL的set_base_rel_pathlists函数及其子函数分析
下一篇:PostgreSQL的set_base_rel_sizes函数分析
相关文章

 发表评论

暂时没有评论,来抢沙发吧~