标签:index lightdb create tablespace tab tbs postgres
一般来说,现在为了各司其职,都把硬盘做成了san,raid,至少lvm。但是仍然有一些用户希望可以指定表空间和索引。在lightdb里面也支持该特性。如下:
lightdb@postgres=# create tablespace tab_tbs location '/data1/cn/tab_tbs'; WARNING: tablespace location should not be inside the data directory ERROR: directory "/data1/cn/tab_tbs" does not exist lightdb@postgres=# create tablespace tab_tbs location '/data1/cn/'; WARNING: tablespace location should not be inside the data directory CREATE TABLESPACE lightdb@postgres=# create table tab_for_tbs(id int) tablespace tab_tbs; CREATE TABLE lightdb@postgres=# \dS+ tab_for_tbs Table "public.tab_for_tbs" Column | Type | Collation | Nullable | Default | Storage | Stats target | Description --------+---------+-----------+----------+---------+---------+--------------+------------- id | integer | | | | plain | | Tablespace: "tab_tbs" Access method: heap
这样就在tab_tbs下创建了表。
索引也是一样的,如下:
lightdb@postgres=# create index idx_tab_for_tbs on tab_for_tbs(id) tablespace tab_tbs; CREATE INDEX
需要注意的是,在lightdb-x分布式版本中,表空间属性不支持透传到DN节点。索引不能声明tablespace xxx子句,如下:
lightdb@postgres=# \dS+ tab_for_tbs_103402 Table "public.tab_for_tbs_103402" Column | Type | Collation | Nullable | Default | Storage | Stats target | Description --------+---------+-----------+----------+---------+---------+--------------+------------- id | integer | | | | plain | | Access method: heap lightdb@postgres=# create index idx_tab_for_tbs on tab_for_tbs(id) tablespace tab_tbs; ERROR: specifying tablespaces with CREATE INDEX statements is currently unsupported
注:虽然如此,一般来说,我们是强烈建议数据文件,WAL日志,临时文件目录分开的。
标签:index,lightdb,create,tablespace,tab,tbs,postgres 来源: https://www.cnblogs.com/zhjh256/p/16585201.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。