Oracle OCP筆記 07 初始化引數檔案

2021-06-27 18:19:09 字數 4318 閱讀 8125

一.初始化引數檔案

初始化引數檔案是資料庫例項的配置檔案,資料庫例項在載入進記憶體時,記憶體中的引數通過引數檔案或預設值構建.

*** 資料庫例項在載入時只會讀取乙個初始化引數檔案.

三.搜尋引數檔案的順序.

1.在啟動例項時,oracle會在預設位置嘗試定位引數檔案.

linux/unix

$oracle_home/dbs/spfilesid.ora

$oracle_home/dbs/spfile.ora    (通常只用於rac環境,乙個檔案可以啟動多個例項)

$oracle_home/dbs/initsid.ora

windows

$oracle_home/database/spfilesid.ora

$oracle_home/database/spfile.ora

$oracle_home/database/initsid.ora

2.使用指定引數檔案啟動例項.

startup pfile=$oracle_home/dbs/initsid.ora

startup spfile=$oracle_home/dbs/spfilesid.ora

*** 在例項啟動前和啟動後都可以建立pfile和spfile,一般在例項無法啟動時可能會用到.

四.引數型別

1.靜態引數與動態引數

靜態引數: 有些引數在例項啟動後就固定了.

動態引數: 有些引數可以在例項執行時更改.

檢視當前執行的例項中生效的引數值

select name,value from v$parameter order by name;

檢視spfile引數檔案中的引數值

select name,value from v$spparameter order by name;

檢視引數型別:

select name,value,issys_modifiable from v$parameter order by name;

select distinct issys_modifiable from v$parameter;

immediate -- 動態引數,立即生效

false     -- 靜態引數

deferred  -- 動態引數,延遲生效

檢視靜態引數:

select name,value from v$parameter where issys_modifiable='false' order by name;

2.基本引數和高階引數

基本引數: 應該為每個資料庫使用基本引數.

select name,value from v$parameter where isbasic='true' order by name;

select s.name,s.value

from v$spparameter s join v$parameter p

on s.name=p.name

where p.isbasic='true'

order by name;

高階引數: 只要高階引數使用了預設值設定,大多數資料庫例項都可以完美執行。

實際上還有一些隱式引數,通常不可見,只能在oracle support的指導下進行設定。

五.修改初始化引數

語法:alter system set parameter=value [comment='text'] [deferred] [scope=] [sid='sid|*'];

deferred延遲生效.

scope的三個可選值:

memory: 只改變當前執行的例項.

spfile: 只改變spfile檔案的設定.

both:   (預設值)改變例項及spfile檔案的設定.

如果修改的是靜態引數,則必須指定scope=spfile,下次啟動例項時引數才生效.

修改靜態引數不指定scope=spfile,則會出現錯誤: ora-02095: specified initialization parameter cannot be modified.

使用both選項等同不帶scope引數的alter system語句.

如果使用pfile啟動例項,設定scope=spfile將失敗.

有些引數可以在系統級別修改,也可以在會話級別修改.

alter system set optimizer_mode=all_rows;

alter session set optimizer_mode=first_rows;

有些引數只能在會話級別進行修改,如: nls_date_format.

alter session set nls_date_format='dd-mm-yy hh24:mi:ss';

重設引數為預設引數(reset)

alter system reset log_archive_start scope=spfile;

六.常用引數

cluster_database              -- 資料庫是rac還是單例項

compatible                    -- 模仿的版本,一般是實際版本

control_files                 -- 控制檔案副本的名稱和位置

db_block_size                 -- 資料檔案預設塊大小

db_create_file_dest           -- 資料檔案的預設位置

db_create_online_log_dest_1   -- 聯機重做日誌檔案的預設位置

db_create_online_log_dest_2   -- 聯機重做日誌檔案多重副本的預設位置

db_domain                     -- 網路網域名稱

db_name                       -- 資料庫名稱(唯一不具有預設值的引數),和網域名稱一起組成全域性資料庫名稱. --alter database rename global_name

-- 更改全域性資料庫名稱需要重啟例項並重建控制檔案

db_recovery_file_dest         -- 閃回區域的位置

db_recovery_file_dest_size    -- 閃回區域容量

db_unique_name                -- 唯一識別符號,如果安裝了兩個相同名稱的資料庫,則需要使用唯一識別符號

instance_number               -- 用於區分兩個開啟同一資料庫的rac例項.

job_queue_processes           -- 執行所排程作業可用的程序數

log_archive_dest_1            -- 歸檔重做日誌檔案的目標

log_archive_dest_2            -- 歸檔重做日誌檔案的多重副本的目標

log_archive_dest_state_1      -- 指示是否啟用了目標

log_archive_dest_state_2      -- 指示是否啟用了目標

nls_language                  -- 例項的語言

nls_territory                 -- 例項的地理位置

open_cursors                  -- 會話一次可以開啟的sql工作區數量

pga_aggregate_target          -- 例項可以分配給pga的總記憶體量

processes                     -- 可以連線到例項的最大程序數量(包括會話伺服器程序)

remote_listener               -- 此例項註冊到遠端計算機的偵聽器的位址,與rac有關的引數.

remote_login_passwordfile     -- 是否使用外部口令檔案,以便允許口令檔案身份驗證.

rollback_segments             -- 差不多廢棄,被後面的undo引數替代

sessions                      -- 允許連線到例項的最大會話數量

sga_target                    -- 系統全域性區域sga記憶體大小

shared_servers                -- 要啟動的共享伺服器程序數量.

star_transformation_enabled   -- 是否允許優化器重寫將事實表的維度連線在一起的查詢

undo_management               -- 在撤銷表空間中自動管理撤銷資料,還是在回滾段中手工管理

undo_tablespace               -- 在使用自動撤銷管理的情況下,確定撤銷資料的位置.

Oracle OCP筆記 18 併發與鎖

一.鎖定機制 在任何多使用者資料庫應用程式中,最終免不了會出現兩個使用者希望同時使用同一行的情況。借助表和記錄的鎖定機制,可以實現併發訪問的序列化。二.共享鎖與排他鎖 share lock,exclusive lock 排他鎖 在指定記錄上請求排他鎖的第乙個會話會得到排他鎖,其他請求對該記錄進行寫訪...

Oracle OCP筆記 06 口令檔案

在資料庫未開啟時,需要登入oracle來開啟資料庫,但資料庫未開啟不能讀取資料字典,不能通過資料字典來驗證身份,這就需要通過外部口令檔案來進行身份驗證。1 作業系統和口令檔案身份驗證 口令檔案預設位置 oracle home dbs orapwsid 要啟用作業系統和口令檔案身份驗證 二者是相配的 ...

Oracle OCP筆記 12 資料庫鏈結

分布式環境中,在乙個資料庫的使用者會話中訪問另乙個資料庫時,需要資料庫鏈結.1 檢視所有的資料庫鏈結 select owner,object name from dba objects where object type database link select from dba db links ...