【PostgreSQL-9.6.3】表空間

在PostgreSQL中,表空間其實是爲表指定一個存儲目錄,這樣方便咱們把不一樣的表放在不一樣的存儲介質或者文件系統中。在建立數據庫、表、索引時均可以指定表空間。sql

1. 建立表空間數據庫

--表空間目錄必須是系統中已存在的目錄
test=# create tablespace tb_01 location '/opt/postgresql/data/pg_data';
CREATE TABLESPACE

2. 建立數據庫,指定表空間post

test=# create database test01 tablespace tb_01;
CREATE DATABASE

3. 修改數據庫的表空間spa

test=# alter database test01 set tablespace tb_02;
ALTER DATABASE
--修改數據庫的默認表空間後,數據庫中表的表空間不會改變。

4. 建表時,指定表空間postgresql

test=# create table t1 (id int,note text) tablespace tb_01;
CREATE TABLE

5. 建立索引時,指定表空間code

test=# create index idx_t1_id on t1(id) tablespace tb_02;
CREATE INDEX

6. 增長約束時,指定表空間blog

test=# alter table t1 add constraint unique_t1_id unique (id) using index tablespace tb_02;
ALTER TABLE 
test=# alter table t1 add constraint pk_t1_id primary key (id) using index tablespace tb_02;
ALTER TABLE

7. 把表移動到新的表空間索引

test=# alter table t1 set tablespace tb_02;
ALTER TABLE
--表移動過程當中會被鎖定,全部的操做都被阻塞,包括Select,因此要選擇合適的時間移動表。

 

The End!io

2017-08-20table

相關文章
相關標籤/搜索