oracel里默认是表及索引都是放同一个表空间下。在数据量少的情况下。放同一个表空间没什么问题,一旦数据量大还是建意分开放。
对于磁盘IO 操作来讲。提高IO总体性能;
索引文件丢失的话,可以直接重建;
移动索引表空间:
alter index idx_***** rebuild tablespace ***(新的索引表空间);
可以利用以下语句获取的某个表空间下所以索引的移动
select ‘alter index ‘||owner|‘.‘||index_name||‘ rebuild tablespace ***(新的索引表空间)‘
from dba_indexes
where table_owner=‘SCHEMA_Name‘
order by index_name;
有点需要注意的是,一旦把表和索引放在不同表空间后,在创建新表时,如果有主键或唯一约束,记的指定到索引的表空间,
语句如下:
create table tmp(mon varchar(6),
indo varchar2(10),
constraint pk_name primary key(mon,idno)
using index tablespace index_tabs(索引空间)
时间: 2024-10-09 15:43:13