![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
表空间和索引
ora2pg
这个作者很懒,什么都没留下…
展开
-
优雅的删除索引(visible)
有的时候为了节省空间会删除一些不需要的索引,可能涉及的业务场景比较多,直接删除索引会引发不必要的结果。下面这个方法是比较优雅的删除索引:--创建索引SQL> create index idx_hellob_empno on hellob(empno);Index created.--查看索引SQL> select INDEX_NAME,INDEX_TYPE,TABLE_NAME,T原创 2017-11-07 11:16:26 · 1589 阅读 · 0 评论 -
[ORA-08104] this index object XXX is being online built or rebuilt
背景:在进行联机重建索引的过程中出现错误,如用户终止,网络中断等,那么当我们再次重建索引时,有可能产生ORA-08104错误。alter index index_name rebuild online;ORA-08104: this index object 114615 is being online built or rebuilt删除(包括force选项)时均无法删除。原原创 2017-11-05 22:38:02 · 1649 阅读 · 0 评论 -
重建索引的标准
转自:http://blog.csdn.net/a1264716408/article/details/51970040一、重建索引的前提1、表上频繁发生update,delete操作;2、表上发生了alter table ..move操作(move操作导致了rowid变化)。二、重建索引的标准1、索引重建是否有必要,一般看索引是否倾斜的严重,是否浪费了空间, 那应该如何才转载 2017-11-07 17:17:25 · 542 阅读 · 0 评论 -
关于move分区表后default_tablespace的疑问
背景:公司要进行表的move,move完分区表以后查看user_part_tables里面的default_tablespace还是原来的表空间,重新做了实验还是如此,哪位大神能够解释一下实验:查看用户scott的默认表空间为scott1SQL> select username,default_tablespace,temporary_tablespace from dba_use原创 2017-11-08 15:09:10 · 528 阅读 · 0 评论 -
[ORA-01450] maximum key length (3215) exceeded
背景:在进行索引在线表空间迁移的时候报出的错误,具体命令alter index index_name rebuild online tablespace tablespace_name;问题分析:9i之后每个index key最大可以为block size的80%。所以理论上来说,是可以创建最大长度为block size=8096*80%约为6400左右长度的index。但原创 2017-11-05 22:04:51 · 1388 阅读 · 1 评论 -
如何创建非标准块的表空间(标准块8k)
默认情况下创建的表空间使用的数据块大小是8K,数据库默认的数据块大小由db_block_size参数决定。如果我们想要创建的表空间超过8K,首先需要调整数据库的参数db_nk_cache_size。实验:SQL> show parameter db_block_sizeNAME TYPE VALUE--原创 2017-11-14 16:16:04 · 1248 阅读 · 0 评论 -
对于表空间中SYS_LOB表的理解
创建一个表的时候,oracle会在对应的表空间分给我们一个segment来存放数据,并且会因为数据量的增大再做扩展。但是当我们所建立的表中含有lob类型数据时,oracle会为每个lob字段生成一个独立的segment来存放数据,同时也建立独立的index segment,oracle对它们是单独管理的。普通的表只会新增一个或两个段对象,类型为TABLE和LOBINDEX,数据就存放在表段中,原创 2017-11-16 20:31:05 · 7870 阅读 · 0 评论