开始:

当前的tablesapce信息

pgsql=# select * from pg_tablespace;
spcname | spcowner | spclocation | spcacl | spcoptions
------------+----------+-----------------------+--------+------------
pg_default | 10 | | |
pg_global | 10 | | |
tbs01 | 10 | /home/pgsql/tbs/tbs01 | |
(3 rows) pgsql=#

查看目录结构:

[pgsql@localhost tbs]$ tree
.
|-- dbtbs01
|-- dbtbs02
|-- tbs01
| `-- PG_9.1_201105231
`-- tbs02 5 directories, 0 files
[pgsql@localhost tbs]$

增设tablespace:

pgsql=# create tablespace dbtbs01 location '/home/pgsql/tbs/dbtbs01';
CREATE TABLESPACE
pgsql=#

创建数据,使用此tablespace:

使用上述tablespace建立数据库,在该数据库下建表:

[pgsql@localhost bin]$ ./psql
psql (9.1.2)
Type "help" for help. pgsql=# create database db1 owner pgsql tablespace dbtbs01;
CREATE DATABASE
pgsql=# \connect db1;
You are now connected to database "db1" as user "pgsql".
db1=# create table tab100(id integer);
CREATE TABLE
db1=# insert into tab100 values(generate_series(1,1000000));
INSERT 0 1000000
db1=# select pg_relation_filepath('tab100');
pg_relation_filepath
-------------------------------------------------
pg_tblspc/139315/PG_9.1_201105231/139316/139317
(1 row) db1=#
[pgsql@localhost tbs]$ pwd
/home/pgsql/tbs
[pgsql@localhost tbs]$ tree
.
|-- dbtbs01
| `-- PG_9.1_201105231
| `--
| |--
| |-- 12436_fsm
| |-- 12436_vm
| |--
| |-- 12438_fsm
| |-- 12438_vm
| |--
| |--
| |--
| |-- 12442_fsm
| |-- 12442_vm
| |--
| |--
| |--
| |-- 12446_fsm
| |-- 12446_vm
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 12458_fsm
| |-- 12458_vm
| |--
| |--
| |--
| |--
| |--
| |-- 12465_fsm
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 12476_fsm
| |-- 12476_vm
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 12489_fsm
| |-- 12489_vm
| |--
| |--
| |--
| |-- 12493_fsm
| |-- 12493_vm
| |--
| |--
| |--
| |-- 12497_fsm
| |-- 12497_vm
| |--
| |--
| |--
| |-- 12501_fsm
| |-- 12501_vm
| |--
| |--
| |--
| |-- 12505_fsm
| |-- 12505_vm
| |--
| |--
| |--
| |-- 12509_fsm
| |-- 12509_vm
| |--
| |--
| |--
| |--
| |-- 12514_fsm
| |-- 12514_vm
| |--
| |--
| |--
| |-- 12518_fsm
| |-- 12518_vm
| |--
| |--
| |--
| |--
| |--
| |-- 12525_fsm
| |-- 12525_vm
| |--
| |--
| |-- 12528_fsm
| |-- 12528_vm
| |--
| |-- 12530_fsm
| |-- 12530_vm
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 12543_fsm
| |-- 12543_vm
| |--
| |--
| |--
| |--
| |-- 12549_fsm
| |-- 12549_vm
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 12558_fsm
| |-- 12558_vm
| |--
| |--
| |--
| |-- 12562_fsm
| |-- 12562_vm
| |--
| |--
| |--
| |--
| |-- 12567_fsm
| |-- 12567_vm
| |--
| |--
| |--
| |--
| |--
| |-- 12608_fsm
| |-- 12608_vm
| |--
| |--
| |--
| |-- 12612_fsm
| |-- 12612_vm
| |--
| |--
| |-- 12615_fsm
| |-- 12615_vm
| |--
| |--
| |--
| |-- 12619_fsm
| |-- 12619_vm
| |--
| |--
| |--
| |-- 12623_fsm
| |-- 12623_vm
| |--
| |--
| |--
| |-- 12627_fsm
| |-- 12627_vm
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 12652_fsm
| |-- 12652_vm
| |--
| |--
| |--
| |-- 12656_fsm
| |-- 12656_vm
| |--
| |--
| |--
| |-- 12661_fsm
| |-- 12661_vm
| |--
| |--
| |--
| |-- 12666_fsm
| |-- 12666_vm
| |--
| |--
| |--
| |-- 12671_fsm
| |-- 12671_vm
| |--
| |--
| |--
| |-- 12676_fsm
| |-- 12676_vm
| |--
| |--
| |--
| |-- 12681_fsm
| |-- 12681_vm
| |--
| |--
| |--
| |--
| |--
| |--
| |-- 139317_fsm
| |-- PG_VERSION
| |-- pg_filenode.map
| `-- pg_internal.init
|-- dbtbs02
|-- tbs01
| `-- PG_9.1_201105231
`-- tbs02 7 directories, 231 files
[pgsql@localhost tbs]$

先看数据库信息:

db1=# select oid,datname from pg_database;
oid | datname
--------+-----------
1 | template1
12691 | template0
12699 | postgres
16384 | pgsql
16386 | tester
139316 | db1
(6 rows) db1=#

再仔细看看刚刚建立的表,位于何处:

db1=# select pg_relation_filepath('tab100');
pg_relation_filepath
-------------------------------------------------
pg_tblspc/139315/PG_9.1_201105231/139316/139317
(1 row) db1=#

我的数据库cluster根目录是 /home/pgsql/DemoDir

可以看到:

[pgsql@localhost DemoDir]$ pwd
/home/pgsql/DemoDir
[pgsql@localhost DemoDir]$ find ./ -name ""
./pg_tblspc/
[pgsql@localhost DemoDir]$

我的表的真实路径位于:

[pgsql@localhost tbs]$ pwd
/home/pgsql/tbs
[pgsql@localhost tbs]$ find ./ -name ""
./dbtbs01/PG_9.1_201105231//
[pgsql@localhost tbs]$

可以看到,pg_tblspc/139315/PG_9.1_201105231/139316/139317 是拼接出来的。

看实际大小:

[pgsql@localhost ]$ pwd
/home/pgsql/tbs/dbtbs01/PG_9.1_201105231/
[pgsql@localhost ]$ ls -l --block-size=MB -rw------- pgsql pgsql 37MB Jul :
[pgsql@localhost ]$

对PostgreSQL中tablespace 与 database, table的理解的更多相关文章

  1. Postgresql中临时表(temporary table)的特性和用法

    熟悉Oracle的人,相比对临时表(temporary table)并不陌生,很多场景对解决问题起到不错的作用,开源库Postgresql中,也有临时表的概念,虽然和Oracle中临时表名字相同,使用 ...

  2. HAWQ 官方文档创建filespace,tablespace,database,table

    1.创建Filespace 创建Filespace必须是数据库超级用户( You must be a database superuser to create a filespace.)首先创建一个f ...

  3. Hive中的数据库(Database)和表(Table)

    在前面的文章中,介绍了可以把Hive当成一个"数据库",它也具备传统数据库的数据单元,数据库(Database/Schema)和表(Table). 本文介绍一下Hive中的数据库( ...

  4. 在PostgreSQL中 pg_start_backup 做了什么?

    # 在PostgreSQL中 pg_start_backup 做了什么?HM 2019-07-30 ## pg_start_backup 做一个备份开始标记,还做了一些其他的操作,下面进行探寻. * ...

  5. Postgresql实战经验之alter table 开小差了

    Postgresql实战经验之alter table 开小差了 今天需要将一张有数据的表中一个字段varchar 类型转换为timestamp类型,但是pg的alter table 语句却开小差,出现 ...

  6. 通过arcgis在PostgreSQL中创建企业级地理数据库

    部署环境: Win7 64位旗舰版 软件版本: PostgreSQL-9.1.3-2-windows-x64 Postgis-pg91x64-setup-2.0.6-1 Arcgis 10.1 SP1 ...

  7. 数据库中Schema和Database有什么区别

    在MySQL中创建一个Schema好像就跟创建一个Database是一样的效果,在SQL Server和Orcal数据库中好像又不一样. 目前我只能理解,在mysql中 schema<==> ...

  8. PostgreSQL中关于关键字(保留字)在表名和字段名中的应用文件解决

    标识符和关键词 受限标识符或被引号修饰的标识符.它是由双引号(")包围的一个任意字符序列.一个受限标识符总是一个标识符而不会是一个关键字.因此"select"可以用于引用 ...

  9. PostgreSQL 中日期类型转换与变量使用及相关问题

    PostgreSQL中日期类型与字符串类型的转换方法 示例如下: postgres=# select current_date; date ------------ 2015-08-31 (1 row ...

随机推荐

  1. 【再见RMQ】NYOJ-119-士兵杀敌(三),区间内大小差值

    [题目链接:NYOJ-119] 思路:转自 点我 ,讲的挺好. #include <cstdio> #include <math.h> #define max(a,b) ((a ...

  2. Oracle alter index rebuild 与 ORA-08104 说明

    在ITPUB 论坛上看到的一个帖子,很不错.根据论坛的帖子重做整理了一下. 原文链接如下: alter index rebuild online引发的血案 http://www.itpub.net/t ...

  3. 如何解决重启数据库时报ORA-01031无法登数据库

    问题现象:以无用户方式登录数据库,重启或关闭数据时,遇到下列问题: C:\Documents and Settings\xuzhengzhu>sqlplus /nolog SQL*Plus: R ...

  4. Microsoft-pubs(图书馆管理系统)-数据库设计

    ylbtech-DatabaseDesgin:微软提供-pubs(图书馆管理系统)-数据库设计   1.A,数据库关系图 1.B,数据库设计脚本 -- ======================== ...

  5. 最短路+线段交 POJ 1556 好题

    // 最短路+线段交 POJ 1556 好题 // 题意:从(0,5)到(10,5)的最短距离,中间有n堵墙,每堵上有两扇门可以通过 // 思路:先存图.直接n^2来暴力,不好写.分成三部分,起点 终 ...

  6. HDU5807 Keep In Touch DP

    // HDU5807 Keep In Touch DP // 思路:直接暴力是O(n^6).所以要优化一下 // dp[i][j][k][0]:当前点i j k的方案数 // dp[i][j][k][ ...

  7. Some_sort_algorithms

    复习下数据结构常用的排序算法,更多内容上wiki 快速排序(不稳定 O(n log n)) 快速排序(Quicksort)是对冒泡排序的一种改进.由C. A. R. Hoare在1962年提出.它的基 ...

  8. Windows Server 2003下ASP.NET无法识别IE11的解决方法【转】

    http://www.iefans.net/windows-server-2003-asp-net-ie11-shibie/ 由于IE11对User-Agent字符串进行了比较大的改动,所以导致很多通 ...

  9. Google Appengine参考路径

    1.Hello, World! in 5 minutes 2.Creating a Guestbook -Introduction 3.Sample Applications 1.Programmin ...

  10. node-mysql中的连接池代码学习

    node-mysql是一个node.js下的mysql驱动,前段时间在处理连接池的问题上遇到了连接不释放的疑难杂症,虽已解决,但仍需总结经验避免下次重蹈覆辙.下面是node-mysql中的连接池的部分 ...