在oracle 11g系統中有342個初始化參數,並還有50個oracle公司隱藏的參數,但其中只有33個初始化參數是非常重要的,必須要學習好;每個初始化參數都有一個初始化值,DB_NAME除外;初始化參數被分爲:baisc 和advanced 兩類
--查看系統中的初始化參數
select * fromv$parameter order by name;
select * fromv$spparameter order by name;
select * fromv$parameter_valid_values;--初始化參數取值說明
select * fromv$parameter2 order by name;
這兩個視圖的區別:
v$parameter:體現的是在當前正在運行的實例中生效的參數;
v$spparameter:體現的是在磁盤上的spfile文件保存的參數
v$parameter2:這個視圖是幹什麼用的,和第一個有什麼區別?
改變一個靜態參數,這個改變必須給寫入spfile,並且在服務器重啓後才能生效;scope=spfile
初始化參數文件的轉換:即使在實例沒有啓動的時候也可以執行如下兩個命令
create spfile [='spfilename'] frompfile=[='pfilename']
create pfile=[='pfilename'] from spfile [='spfilename']
一些初始化參數會改變整個系統,或是單獨一個會話,或是兩者都有;
OPTIMIZED_MODE:這個參數可以在系統級別和會話級別有不同的參數值:
alter system setoptimizer_mode=all_rows; 優化產生的執行計劃,讓整個語句更快的完成
alter session setoptimizer_mode=first_rows:優化產生的執行計劃,讓儘快的返回給用戶結果,不管整個執行語句是不是最優的;
有些參數是隻能在會話級別設置的,比如:NLS_DATE_FORMAT
alter session set nls_date_format='dd-mm-yyhh24:mi:ss';