PostgreSQL 服务器管理 表空间管理

1 创建表空间

# 创建表空间所使用的目录
mkdir  -p /var/lib/pgsql/13/data/base/data 
#使用超级用户创建app 表空间.
create tablespace app location '/var/lib/pgsql/13/data/base/data';
# 给普通用户赋权.
grant CREATE on TABLESPACE  app to  app ;
# 设置某个数据库为默认表空间
alter database app set default_tablespace ='app';

2 更改表空间名称

alter tablespace app rename to app1;

注意: 如果有数据库默认创建的表空间为 app ,则登录时会报错, 且把默认表空间更改为pg_default 表空间.

3 查看表空间的内容

select * from pg_tables where tablespace ='app';

4 迁移表空间

注意: 需要在此数据库未在链接的情况下才能使用的命令.
注意2: 此表空间上不能存在数据.需要把表移动到pg_default 表空间后,再进行移动.
迁移所有的数据到新的表空间上.

alter database app set tablespace app;

5 删除表空间

删除表空间需要把 表空间的内容清空,或者转移.