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

阅读 20

2024-12-02


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

在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)

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


精彩评论(0)

0 0 举报