oracle自動維護,oracle維護
檢查ORACLE自動維護任務是否關閉
SQL> select t.client_name, t.status from dba_autotask_client t;
CLIENT_NAME STATUS
---------------------------------------------------------------- --------
auto optimizer stats collection DISABLED
auto space advisor DISABLED
sql tuning advisor DISABLED
SQL>
oracle 維護問題
嗯,關於第一個問題:
-----------
SQL> create table test (
2 id number(2),
3 name char(20)
4 );
Table created
SQL> alter table test add primary key (id); --添加id為主鍵
Table altered
SQL> select constraint_name, constraint_type , index_name
2 from user_constraints
3 where table_name = 'TEST'; --查閱表的約束性資訊
CONSTRAINT_NAME CONSTRAINT_TYPE INDEX_NAME
------------------------------ --------------- ------------------------------
SYS_C0084246 P SYS_C0084246
SQL> select index_name, index_type, uniqueness
2 from user_indexes
3 where table_name = 'TEST'; --查詢表的索引資訊
INDEX_NAME INDEX_TYPE UNIQUENESS
------------------------------ --------------------------- ----------
SYS_C0084246 NORMAL UNIQUE
---------------------
也就是說Oracle在建立主鍵時自動會添加索引。
第二個問題:
表 user_indexes 才是查詢目前使用者所有索引對象的表;
第三個問題:
建立索引:create index ID_NAME on TEST (NAME);
刪除索引:drop index ID_NAME;
如果存在索引相關的約束性條件,則應該先刪除約束;
第四、第五個問題:
這個比較寬泛,包括硬體的IO效能,Oracle的SGA、PGA配置,索引效能等等,最好直接baidu一下Oracle 效能最佳化。
oracle資料庫中的表與資料檔案是不是同一個概念?
資料庫結構和空間管理
一個ORACLE資料庫是資料的集合,被處理成一個單位。一個ORACLE資料庫有一個物理結構和一個邏輯結構。
物理資料庫結構(physical database structure)是由構成資料庫的作業系統檔案所決定。每一個ORACLE資料庫是由三種類型的檔案組成:資料檔案、記錄檔和控制檔案。資料庫的檔案為資料庫資訊提供真正的實體儲存體。
邏輯資料庫結構是使用者所涉及的資料庫結構。一個ORACLE資料庫的邏輯結構由下列因素決定:
l 一個或多個資料表空間
l 資料庫模式對象(即表、視圖、索引、聚集、序列、預存程序)
邏輯儲存結構如資料表空間(dataspace)、段(segment)和範圍將支配一個資料庫的物理空間如何使用。模式對象(schema object)用它們之間的聯絡組成了一個資料庫的關係設計。
1) 物理結構
(1) 資料檔案
每一個ORACLE資料庫有一個或多個物理的資料檔案(data file)。一個資料庫的資料檔案包含全部資料庫資料。邏輯資料庫結構(如表、索引)的資料物理地儲存在資料庫的資料檔案中。資料檔案有下列特徵:
l 一個資料檔案僅與一個資料庫聯絡。
l 一旦建立,資料檔案不能改變大小
l 一個資料表空間(資料庫儲存的邏輯單位)由一個或多個資料檔案組成。
資料檔案中的資料在需要時可以讀取並儲存在ORACLE記憶體儲區中。例如:使用者要存取資料庫一表的某些資料,如果請求資訊不在資料庫的記憶體儲存區內,則從相應的資料檔案中讀取並儲存在記憶體。當修改和插入新資料時,不必立刻寫入資料檔案。為了減少磁碟輸出的總數,提高效能,資料存放區在記憶體,然後由 ORACLE後台進程DBWR決定如何將其寫入到相應的資料檔案。
(2) 記錄檔
每一個資料庫有兩個或多個記錄檔(redo log file)的組,每一個記錄檔組用於收集資料庫日誌。日誌的主要功能是記錄對資料所作的修改,所以對資料庫作的全部修改是記錄在日誌中。在出現故障時,如果不能將修改資料永久地寫入資料檔案,則可利用日誌得到該修改,所以從不會丟失已有操作成果。
記錄檔主要是保護資料庫以防止故障。為了防止記錄檔本身的故障,ORACLE允許鏡象日誌(mirrored redo log),以致可在不同磁碟上維護兩個或多個日誌副本。
記錄檔中的資訊僅在系統故障或介質故障恢複資料庫時使用,這些故障阻止將資料庫資料寫入到資料庫的資料檔案。然而任何丟失的資料在下一次資料庫開啟時,ORACLE自動地應用記錄檔中的資訊來恢複資料庫資料檔案。
(3) 控制檔案
每一ORACLE資料庫有一個控制檔案(control file),它記錄資料庫的物理結構,包含下列資訊類型:
l 資料庫名;
l 資料庫資料檔案和記錄檔的名字和位置;
l 資料庫建立日期。
為了安全起見,允許控制檔案被鏡象。
每一次ORACLE資料庫的執行個體啟動時,它的控制檔案用於標識資料庫和記錄檔,當著手資料庫操作時它們必須被開啟。當資料庫的物理組成更改時,ORACLE自動更改該資料庫的控制檔案。資料恢複時,也要使用控制檔案。
2) 邏輯結構
資料庫邏輯結構包含資料表空間、段、範圍(extent)、資料區塊和模式對象。
(1) 資料表空間
一個資料庫劃分為一個或多個邏輯單位,該邏輯單位稱為資料表空間(TABLESPACE)。一個資料表空間可將相關的邏輯結構組合在一起。DBA可利用資料表空間作下列工作:
l 控制資料庫資料的磁碟分配。
l 將確定的空間份額分配給資料庫使用者。
l 通過使單個......餘下全文>>