亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Oracle中如何把表和索引放在不同的表空間里

 更新時間:2013年07月13日 10:27:26   作者:  
Oracle中并沒有區(qū)分表空間里放的是表還是索引,所有當數(shù)據(jù)量比較小時,完全可以把表和索引放在同一個表空間里,但隨著數(shù)據(jù)量的增大,最好還是把表和索引分開存儲在不同的表空間里

因為:
1)提高性能:
盡量把表和索引的表空間存儲在不同在磁盤上,把兩類不同IO性質(zhì)的數(shù)據(jù)分開放,這樣可以提高磁盤的IO總體性能;

2)便于管理:試想一下,如果索引的數(shù)據(jù)文件損壞,只要創(chuàng)建索引即可,不會引起數(shù)據(jù)丟失的問題。

下面語句用于移動索引的表空間:

復(fù)制代碼 代碼如下:

alter index INDEX_OWNER.INDEX_NAME rebuild tablespace NEW_TBS;

也可以利用以下語句獲得某個schema下移動索引表空間的所有語句:
復(fù)制代碼 代碼如下:

select 'alter index '||owner||'.'||index_name||' rebuild tablespace NEW_TBS;'
from dba_indexes
where table_owner='SCHEMA_NAME'
order by index_name;

有一點需要注意的是,一旦把表和索引放在不同表空間后,在創(chuàng)建新表時,如果表有主鍵或唯一約束,記得要指定到索引的表空間,可以參考下面的例子:
復(fù)制代碼 代碼如下:

create table tmp(
MON VARCHAR2(6) ,
IDNO VARCHAR2(10) ,
constraint pk_name primary key ( MON, IDNO )
using index tablespace index_tbs,
CONSTRAINT uk_name UNIQUE (MON)
using index tablespace index_tbs
) ;

相關(guān)文章

最新評論