<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-314  評論-209  文章-0  trackbacks-0

    有關(guān)表分區(qū)的一些維護(hù)性操作:
    一、添加分區(qū)
    以下代碼給SALES表添加了一個P3分區(qū)
    ALTER TABLE SALES ADD PARTITION P3 VALUES LESS THAN(TO_DATE('2003-06-01','YYYY-MM-DD'));
    注意:以上添加的分區(qū)界限應(yīng)該高于最后一個分區(qū)界限。

    以下代碼給SALES表的P3分區(qū)添加了一個P3SUB1子分區(qū)
    ALTER TABLE SALES MODIFY PARTITION P3 ADD SUBPARTITION P3SUB1 VALUES('COMPLETE');

    二、刪除分區(qū)
    以下代碼刪除了P3表分區(qū):
    ALTER TABLE SALES DROP PARTITION P3;

    在以下代碼刪除了P4SUB1子分區(qū):
    ALTER TABLE SALES DROP SUBPARTITION P4SUB1;
    注意:如果刪除的分區(qū)是表中唯一的分區(qū),那么此分區(qū)將不能被刪除,要想刪除此分區(qū),必須刪除表。

    三、截斷分區(qū)
    截斷某個分區(qū)是指刪除某個分區(qū)中的數(shù)據(jù),并不會刪除分區(qū),也不會刪除其它分區(qū)中的數(shù)據(jù)。當(dāng)表中即使只有一個分區(qū)時,也可以截斷該分區(qū)。通過以下代碼截斷分區(qū):
    ALTER TABLE SALES TRUNCATE PARTITION P2;
    通過以下代碼截斷子分區(qū):
    ALTER TABLE SALES TRUNCATE SUBPARTITION P2SUB2;

    四、合并分區(qū)
    合并分區(qū)是將相鄰的分區(qū)合并成一個分區(qū),結(jié)果分區(qū)將采用較高分區(qū)的界限,值得注意的是,不能將分區(qū)合并到界限較低的分區(qū)。以下代碼實(shí)現(xiàn)了P1 P2分區(qū)的合并:
    ALTER TABLE SALES MERGE PARTITIONS P1,P2 INTO PARTITION P2;

    五、拆分分區(qū)
    拆分分區(qū)將一個分區(qū)拆分兩個新分區(qū),拆分后原來分區(qū)不再存在。注意不能對HASH類型的分區(qū)進(jìn)行拆分。
    ALTER TABLE SALES SBLIT PARTITION P2 AT(TO_DATE('2003-02-01','YYYY-MM-DD'))
    INTO (PARTITION P21,PARTITION P22);

    六、接合分區(qū)(coalesca)
    結(jié)合分區(qū)是將散列分區(qū)中的數(shù)據(jù)接合到其它分區(qū)中,當(dāng)散列分區(qū)中的數(shù)據(jù)比較大時,可以增加散列分區(qū),然后進(jìn)行接合,值得注意的是,接合分區(qū)只能用于散列分區(qū)中。通過以下代碼進(jìn)行接合分區(qū):
    ALTER TABLE SALES COALESCA PARTITION;

    七、重命名表分區(qū)
    以下代碼將P21更改為P2
    ALTER TABLE SALES RENAME PARTITION P21 TO P2;

    九、跨分區(qū)查詢
    select sum( *) from (
    (select count(*) cn from t_table_SS PARTITION (P200709_1)
    union all
    select count(*) cn from t_table_SS PARTITION (P200709_2));

    十、查詢表上有多少分區(qū)
    SELECT * FROM useR_TAB_PARTITIONS WHERE TABLE_NAME='tableName'

    十一、查詢索引信息
    select object_name,object_type,tablespace_name,sum(value)
    from v$segment_statistics
    where statistic_name IN ('physical reads','physical write','logical reads')and object_type='INDEX'
    group by object_name,object_type,tablespace_name
    order by 4 desc


    --顯示數(shù)據(jù)庫所有分區(qū)表的信息:
    select * from DBA_PART_TABLES

    --顯示當(dāng)前用戶可訪問的所有分區(qū)表信息:
    select * from ALL_PART_TABLES

    --顯示當(dāng)前用戶所有分區(qū)表的信息:
    select * from USER_PART_TABLES

    --顯示表分區(qū)信息 顯示數(shù)據(jù)庫所有分區(qū)表的詳細(xì)分區(qū)信息:
    select * from DBA_TAB_PARTITIONS

    --顯示當(dāng)前用戶可訪問的所有分區(qū)表的詳細(xì)分區(qū)信息:
    select * from ALL_TAB_PARTITIONS

    --顯示當(dāng)前用戶所有分區(qū)表的詳細(xì)分區(qū)信息:
    select * from USER_TAB_PARTITIONS

    --顯示子分區(qū)信息 顯示數(shù)據(jù)庫所有組合分區(qū)表的子分區(qū)信息:
    select * from DBA_TAB_SUBPARTITIONS

    --顯示當(dāng)前用戶可訪問的所有組合分區(qū)表的子分區(qū)信息:
    select * from ALL_TAB_SUBPARTITIONS

    --顯示當(dāng)前用戶所有組合分區(qū)表的子分區(qū)信息:
    select * from USER_TAB_SUBPARTITIONS

    --顯示分區(qū)列 顯示數(shù)據(jù)庫所有分區(qū)表的分區(qū)列信息:
    select * from DBA_PART_KEY_COLUMNS

    --顯示當(dāng)前用戶可訪問的所有分區(qū)表的分區(qū)列信息:
    select * from ALL_PART_KEY_COLUMNS

    --顯示當(dāng)前用戶所有分區(qū)表的分區(qū)列信息:
    select * from USER_PART_KEY_COLUMNS

    --顯示子分區(qū)列 顯示數(shù)據(jù)庫所有分區(qū)表的子分區(qū)列信息:
    select * from DBA_SUBPART_KEY_COLUMNS

    --顯示當(dāng)前用戶可訪問的所有分區(qū)表的子分區(qū)列信息:
    select * from ALL_SUBPART_KEY_COLUMNS

    --顯示當(dāng)前用戶所有分區(qū)表的子分區(qū)列信息:
    select * from USER_SUBPART_KEY_COLUMNS

    --怎樣查詢出oracle數(shù)據(jù)庫中所有的的分區(qū)表
    select * from user_tables a where a.partitioned='YES'

    --刪除一個表的數(shù)據(jù)是
    truncate table table_name;

    --刪除分區(qū)表一個分區(qū)的數(shù)據(jù)是
    alter table table_name truncate partition p5;

    注:分區(qū)根據(jù)具體情況選擇。

    表分區(qū)有以下優(yōu)點(diǎn):
    1、數(shù)據(jù)查詢:數(shù)據(jù)被存儲到多個文件上,減少了I/O負(fù)載,查詢速度提高。
    2、數(shù)據(jù)修剪:保存歷史數(shù)據(jù)非常的理想。
    3、備份:將大表的數(shù)據(jù)分成多個文件,方便備份和恢復(fù)。
    4、并行性:可以同時向表中進(jìn)行DML操作,并行性性能提高。
    ================================================

    索引:
    1、一般索引:
    create index index_name on table(col_name);
    2、Oracle 分區(qū)索引詳解
    語法:Table Index
    CREATE [UNIQUE|BITMAP] INDEX [schema.]index_name
    ON [schema.]table_name [tbl_alias]
    (col [ASC | DESC]) index_clause index_attribs

    index_clauses:
    分以下兩種情況

    1. Local Index
    就是索引信息的存放位置依賴于父表的Partition信息,換句話說創(chuàng)建這樣的索引必須保證父表是Partition
    1.1 索引信息存放在父表的分區(qū)所在的表空間。但是僅可以創(chuàng)建在父表為HashTable或者composite分區(qū)表的。
    LOCAL STORE IN (tablespace)
    1.2 僅可以創(chuàng)建在父表為HashTable或者composite分區(qū)表的。并且指定的分區(qū)數(shù)目要與父表的分區(qū)數(shù)目要一致
    LOCAL STORE IN (tablespace) (PARTITION [partition [LOGGING|NOLOGGING] [TABLESPACE {tablespace|DEFAULT}] [PCTFREE int] [PCTUSED int] [INITRANS int] [MAXTRANS int] [STORAGE storage_clause] [STORE IN {tablespace_name|DEFAULT] [SUBPARTITION [subpartition [TABLESPACE tablespace]]]])

    1.3 索引信息存放在父表的分區(qū)所在的表空間,這種語法最簡單,也是最常用的分區(qū)索引創(chuàng)建方式。
    Local
    1.4 并且指定的Partition 數(shù)目要與父表的Partition要一致
    LOCAL (PARTITION [partition
    [LOGGING|NOLOGGING]
    [TABLESPACE {tablespace|DEFAULT}]
    [PCTFREE int]
    [PCTUSED int]
    [INITRANS int]
    [MAXTRANS int]
    [STORAGE storage_clause]
    [STORE IN {tablespace_name|DEFAULT]
    [SUBPARTITION [subpartition [TABLESPACE tablespace]]]])

    Global Index
    索引信息的存放位置與父表的Partition信息完全不相干。甚至父表是不是分區(qū)表都無所謂的。語法如下:
    GLOBAL PARTITION BY RANGE (col_list)
    ( PARTITION partition VALUES LESS THAN (value_list)
    [LOGGING|NOLOGGING]
    [TABLESPACE {tablespace|DEFAULT}]
    [PCTFREE int]
    [PCTUSED int]
    [INITRANS int]
    [MAXTRANS int]
    [STORAGE storage_clause] )
    但是在這種情況下,如果父表是分區(qū)表,要刪除父表的一個分區(qū)都必須要更新Global Index ,否則索引信息不正確
    ALTER TABLE TableName DROP PARTITION PartitionName Update Global Indexes

    --查詢索引
    select object_name,object_type,tablespace_name,sum(value)
    from v$segment_statistics
    where statistic_name IN ('physical reads','physical write','logical reads')and object_type='INDEX'
    group by object_name,object_type,tablespace_name
    order by 4 desc


    本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/thinker28754/archive/2009/03/06/3962309.aspx

    posted on 2009-06-18 11:08 xzc 閱讀(2222) 評論(1)  編輯  收藏 所屬分類: Oracle

    評論:
    # re: oracle的表空間、分區(qū)表、以及索引的總結(jié) 2010-04-02 16:14 | xzc

    --刪除分區(qū)
    ALTER TABLE WID_SETT_TICKET_DAY_1100 DROP PARTITION P20100401;
    --增加分區(qū)
    ALTER TABLE WID_SETT_TICKET_DAY_1100 ADD PARTITION P20100401 VALUES (20100401) TABLESPACE ODSDATA_04 NOLOGGING;
    --查找分區(qū)
    select *
    from USER_TAB_PARTITIONS
    where table_name = 'WID_SETT_TICKET_DAY_1100'
    and partition_name = 'P20100401';  回復(fù)  更多評論
      
    主站蜘蛛池模板: 色在线亚洲视频www| 国产精品免费小视频| 无码人妻久久一区二区三区免费丨 | 亚洲三级在线观看| 最好看的中文字幕2019免费| 久久香蕉国产线看观看亚洲片| 亚洲免费日韩无码系列| 亚洲精品和日本精品| 一级片在线免费看| 精品国产日韩亚洲一区| japanese色国产在线看免费| 亚洲国产成人久久综合碰| 大片免费观看92在线视频线视频| 四虎永久免费影院在线| 黄页网站在线免费观看| 亚洲精品国产综合久久一线| 好湿好大好紧好爽免费视频| 亚洲精品国偷自产在线| 免费A级毛片无码A∨| 亚洲国产成人久久| 妞干网免费视频在线观看| 美国毛片亚洲社区在线观看| 亚洲国产精品13p| 国产免费网站看v片在线| 亚洲成AV人片在线观看无码| 久久综合国产乱子伦精品免费| 99久久精品国产亚洲| 无码免费午夜福利片在线 | 亚洲成人免费在线观看| 亚洲砖码砖专无区2023| 亚洲成年人啊啊aa在线观看| 国产在线精品观看免费观看| 久久亚洲高清观看| 亚洲欧洲春色校园另类小说| 亚洲一区无码精品色| 国产裸模视频免费区无码| 足恋玩丝袜脚视频免费网站| 国产精品免费看久久久香蕉| 久久性生大片免费观看性| 亚洲色无码专区一区| 亚洲精品国产精品国自产网站|