【赵渝强老师】PostgreSQL的表空间

在这里插入图片描述

在PostgreSQL中,数据库在逻辑上分成多个存储单元,该单元称作表空间。表空间用作把逻辑上相关的数据结构放在一起。数据库逻辑上是由一个或多个表空间组成。在数据库初始化的时候,会自动创建pg_default和pg_global两个表空间。其中:

  • pg_global:该表空间用于存放系统表。
  • pg_default:创建表时的默认表空间,该表空间的物理文件存储在数据目录中的base目录中,如:/home/postgres/training/pgsql/data/base。
视频讲解如下

【赵渝强老师】PostgreSQL的表空间

下面通过具体的操作来演示如何查看PostgreSQL中已有的表空间和如何创建自己的表空间。
(1)登录PostgreSQL。

bin/psql

(2)查看PostgreSQL中已有的表空间。

postgres=# \db

# 输出的信息如下:
       List of tablespaces
    Name    |  Owner   | Location 
------------+----------+----------
 pg_default | postgres | 
 pg_global  | postgres | 
(2 rows)

(3)创建自己的表空间。

postgres=# create tablespace mydemotbs location
postgres-# '/home/postgres/training/pgsql/data/mydemotbs';

(4)在mydemotbs 表空间上创建表。

postgres=# create table testtable1(tid int primary key,tname text)
postgres-# tablespace mydemotbs;

(5)再次查看PostgreSQL中已有的表空间。

postgres=# \db

# 输出的信息如下:
                         List of tablespaces
    Name    |  Owner   |                   Location                   
------------+----------+--------------------------------------------
 mydemotbs  | postgres | /home/postgres/training/pgsql/data/mydemotbs
 pg_default | postgres | 
 pg_global  | postgres | 
(3 rows)

(6)将该表空间设置为默认的表空间。

postgres=# set default_tablespace = mydemotbs;

(7)查询表空间信息

postgres=# select * from pg_tablespace;

# 输出的信息如下:
  oid  |  spcname   | spcowner | spcacl | spcoptions 
-------+------------+----------+--------+------------
  1663 | pg_default |       10 |        | 
  1664 | pg_global  |       10 |        | 
 16394 | mydemotbs  |       10 |        | 
(3 rows)

(8)使用\db+命令查看表空间的详细信息,输出的信息如下:

postgres=# \db+

# 输出的信息如下:
                         List of tablespaces
    Name    |  Owner   |...| Options |    Size    | Description 
------------+----------+---+---------+------------+-------------
 mydemotbs  | postgres |...|         | 8237 bytes | 
 pg_default | postgres |...|         | 29 MB      | 
 pg_global  | postgres |...|         | 531 kB     | 
(3 rows)

# 注意:命令中的加号表示显示详细信息。

《PostgreSQL数据库实战派》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

赵渝强老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值