使用索引表空间?
Posted
技术标签:
【中文标题】使用索引表空间?【英文标题】:using index tablespace? 【发布时间】:2017-03-01 14:41:07 【问题描述】:我遇到了两个代码 sn-ps :
一个...
ALTER TABLE 表名 DROP CONSTRAINT 约束名称; 删除索引 index_name; alter TABLE table_name ADD CONSTRAINT constraint_name PRIMARY KEY (column, column)USING INDEX TABLESPACE tablespace_name;
两个...
在表名(列名)上创建索引索引名TABLESPACE 表空间名;
现在我可以理解非粗体的陈述,但粗体的陈述很难理解。为什么我们要使用表空间,尤其是在这种情况下?这两个语句的含义是什么?谁能用例子给我一个详细的答案? 谢谢!
【问题讨论】:
索引segments 必须存储在表空间中;确定要指定哪一个并不奇怪吗? 它是 Oracle 构建数据库方式的基本部分。看看docs.oracle.com/cd/B19306_01/server.102/b14220/… 【参考方案1】:表空间是一个逻辑存储单元。实际的操作系统存储在数据文件中定义,并且数据文件链接到表空间。这意味着我们可以在不同的服务器、甚至不同的操作系统上部署数据库对象,而不需要知道底层的目录结构。
对于索引表空间,索引是物理对象,需要存储在某个地方。如今,区分索引表空间和表表空间已经不那么普遍了,因为现代服务器是经过突袭、条带化等操作的,所以没有人需要担心磁盘磁头。
事实上,Oracle 的内置表空间管理非常好,我们可以在很大程度上完全忘记表空间规划。仍然有一个单独的表空间的情况,例如只读数据、可传输表空间、分区等。
【讨论】:
以上是关于使用索引表空间?的主要内容,如果未能解决你的问题,请参考以下文章