oracle索引建立

2021-08-27 07:36:08 字數 1919 閱讀 8585

alter system修改的是引數檔案,所有使用者都會生效

alter session只是對當前session生效

alter database 一般修改的是控制檔案資訊

主要修改;

下面這兩個調整值一樣 但是一定要小於pga的值 (查詢pga 大小sql:show parameter pga)

plsql:新建命令視窗 執行: show parameter pga(查詢pga大小)

根據pga大小修改sort_area_size和sort_area_retained_size 這兩個一定要小於pga大小 一般pga的50%

sort_area_size和sort_area_retained_size一般一樣

alter session set workarea_size_policy=manual;

alter session set db_file_multiblock_read_count=128;

alter session set sort_area_size=573741824;

alter session set sort_area_retained_size=573741824;

workarea_size_policy: 該初始化引數用於指定調整sql工作區所使用的策略,預設值為auto。當設定該引數為auto時,oracle會根據引數pga_aggregate_target的設定自動調節排序區;當設定該引數為manual時,oracle會按照引數sort_area_size的設定調節排序區。該初始化引數是動態引數,可以使用alter session或alter system命令進行修改。

db_file_multiblock_read_count:初始化引數db_file_multiblock_read_count 影響oracle在執行全表掃瞄時一次讀取的block的數量. db_file_multiblock_read_count的設定要受os最大io能力影響,也就是說,如果 你系統的硬體io能力有限,即使設定再大的db_file_multiblock_read_count也是沒有用 的。理論上,最大db_file_multiblock_read_count和系統io能力應該有如下關係:

max(db_file_multiblock_read_count) = maxosiosize/db_block_size

當然這個max(db_file_multiblock_read_count)還要受oracle的限制,目前oracle所支援的最大db_file_multiblock_read_count 值為128.

sort_area_size:該初始化引數用於指定排序區尺寸,預設值為64k。該初始化引數是為了與早期版本相容而保留的,oracle不建議使用該引數,而建議使用初始化引數pga_aggregate_target自動調節sql工作區尺寸。該初始化引數是動態引數,可以使用alter session或alter system … deferred命令進行修改

set sort_area_retained_size:該初始化引數用於指定在排序執行完成之後uga保留的總計記憶體,預設值為sort_area_size的引數值。該初始化引數是為了與早期版本相容而保留的,oracle不建議使用該引數,而建議使用初始化引數pga_aggregate_target自動調節sql工作區尺寸。該初始化引數是動態引數,可以使用alter session 或 alter system … deferred命令進行修改

如果不修改可能執行建索引語句會幾個小時

執行建索引sql 在建索引sql語句後面加上nologging (意思是不生成日誌,假如這個索引檔案30g生成日誌檔案也會20多個g)

全域性索引sql: create index idx_xx on table(c1 desc, c2, c3, c4,c5,c6);

分割槽索引sql:create index idx_xx on table(c1 desc, c2, c3, c4,c5,c6)local;

oracle 建立索引

要在oracle資料庫中使用索引,首先需要建立oracle索引。下面就為您介紹建立oracle索引的方法,希望對您能有所幫助。適當的使用索引可以提高資料檢索速度,可以給經常需要進行查詢的字段建立索引。oracle的索引分為5種 唯一索引,組合索引,反向鍵索引,位圖索引,基於函式的索引 建立oracl...

oracle建立索引

create recreate indexes 建立索引 一張表上建立多個索引,一般是該錶的資料量大,建立索引能夠提高資料庫的select效能。一般是在要select的字段建立索引。oracle建立索引語法 create index indexname on tablename colum crea...

oracle建立索引

建立乙個使用者 set sqlprompt user create user jsx identified by 123 建立使用者jsx grant all privileges to jsx 給使用者授權 conn jsx 123 建立books表 create table books book...