Oracle數(shù)據(jù)庫(kù)中的控制文件管理以及常用參數(shù)設(shè)置
一、控制文件
作用:
- 二進(jìn)制文件
- 記錄了數(shù)據(jù)庫(kù)當(dāng)前實(shí)例的結(jié)構(gòu)和行為,數(shù)據(jù)文件日志文件的信息,維護(hù)數(shù)據(jù)庫(kù)一致性
- 參數(shù)文件中定義了控制文件的位置和大小
- 很小的二進(jìn)制文件,一般不超過(guò)100m
- mount階段open以后,一直在用
- 一套控制文件只能連接一個(gè)database
- 分散放置,至少一份,至多八份
相關(guān)視圖:
- v$controlfile ---- 列出實(shí)例的所有控制文件的名字和狀態(tài)
- v$parameter ---- 列出所有參數(shù)的位置和狀態(tài)(where name='control_files')
- v$controlfile_recode_section ---- 提供控制文件的記錄部分的信息
- show parameter control_files ---- 列出控制文件的名字、狀態(tài)和位置
查看控制文件內(nèi)容:
strings $ORACLE_BASE/oradata/$ORACLE_SID/control01.ctl alter database backup controlfile to trace as '<filepath&name>'
轉(zhuǎn)儲(chǔ)控制文件:
alter system set events 'immediate trace name controlf level 10'
- level 1 塊頭
- level 2 文件內(nèi)容
- level 3 1+2
- level 10 全部
管理控制文件:
spfile 修改spfile參數(shù)control_files(alter……)
- 一致性關(guān)閉數(shù)據(jù)庫(kù)
- 增加或減少控制文件
- 啟動(dòng)數(shù)據(jù)庫(kù)使用spfile
- 驗(yàn)證結(jié)果
pfile 一致性關(guān)閉數(shù)據(jù)庫(kù)
- 修改pfile參數(shù)
- 增加或減少控制文件
- 啟動(dòng)數(shù)據(jù)庫(kù)使用spfile
- 驗(yàn)證結(jié)果
狀態(tài)查詢:參數(shù)和具體文件是否對(duì)應(yīng)、磁盤空間剩余、控制文件<100M
熱備控制文件:
數(shù)據(jù)庫(kù)歸檔模式下,
alter database backup controlfile to '<fpath&name>'
其他模式下:
alter database backup controlfile to trace as '<fpath&name>'
得到建立控制文件腳本
數(shù)據(jù)庫(kù)歸檔模式下rman備份:
rman target / >backup current controlfile; or >backup database include current controlfile;
rman自動(dòng)備份控制文件:
>show all中的configure controlfile autobackup設(shè)置為on
>configure controlfile autobackup on
問(wèn)題解決:
控制文件不一致:
(1). 拷貝新版本的控制文件到舊版本文件
2. 修改參數(shù)文件,只使用新版本的文件(alter system set……),重啟
控制文件丟失:
【mount階段,使用archive log list可以查看數(shù)據(jù)庫(kù)是否在歸檔模式下】
1. 控制文件無(wú)備份
a.數(shù)據(jù)庫(kù)非歸檔,數(shù)據(jù)文件聯(lián)機(jī)日志文件存在 --- 重建控制文件
>create controlfile reuse database <sid> noarchivelog noresetlogs datafile <'datafiles'> logfile <group X 'logfiles' size Y>
2. 控制文件有備份
a.數(shù)據(jù)庫(kù)歸檔,數(shù)據(jù)文件聯(lián)機(jī)和歸檔日志文件存在 --- 還原控制文件
先全備,再將控制文件拷貝到參數(shù)指定的路徑,然后
>alter database recover database using backup controlfile until change;
二、參數(shù)設(shè)置
>show parameter <keyword>
查詢參數(shù)
作用: 記錄了數(shù)據(jù)庫(kù)的配置。內(nèi)存分配、進(jìn)程數(shù)、會(huì)話數(shù)等
分類:
pfile類型 ---文本文件
$ORACLE_HOME/dbs/init$ORACLE_SID.ora(9i,10g默認(rèn)不使用)
$ORACLE_BASE/admin/$ORACLE_SID/pfile/init.ora.xxxx(10g初始化時(shí)使用一次)
spfile類型 --- 二進(jìn)制文件
$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora,服務(wù)器端(9i開(kāi)始使用)
能夠被rman備份(rman只能備份二進(jìn)制文件)
oracle啟動(dòng)時(shí),查找順序?yàn)閟pfile<sid>.ora-----spfile.ora-----init<sid>.ora
轉(zhuǎn)化:
create pfile[='fpath'] from spfile; 默認(rèn)在$ORACLE_HOME/dbs/init$ORACLE_SID.ora
create spfile[='fpath'] from pfile; 默認(rèn)在$ORACLE_HOME/dbs/spfile$ORACLE_SID.ora
create spfile[='fpath'] from memory; 從內(nèi)存中重建spfile
10g指定用pfile啟動(dòng):
>startup pfile='$ORACLE_HOME/dbs/init$ORACLE_SID.ora'; >create spfile from pfile;
這樣可以將剛修改的pfile生效
查看當(dāng)前使用的參數(shù)文件:
>show parameter spfile;
如果value值為空,說(shuō)明是使用pfile,否則使用的是value顯示的spfile
>select distinct ISSPECIFIED from v$spparameter;
值為true是spfile,false是pfile
spfile文件的修改:
alter system|session set parameter_name=values scope=memory|spfile|both sid='<sid>'|'*';
system ---- v$parameter中列isses_modifiable為非flase的項(xiàng)可以被alter session修改
session ---- v$parameter中列issys_modifiable為非flase的項(xiàng)可以被alter system修改
【select name,isses_modifiable,issys_modifiable from v$parameter;】
查詢出來(lái)的狀態(tài)包括三種:
immdiate----動(dòng)態(tài)參數(shù),system直接修改到內(nèi)存和參數(shù)文件,立即生效
false----靜態(tài)參數(shù),不能直接改,system加scope=spfile修改到參數(shù)文件
deferred----會(huì)話參數(shù),可以使用session修改,只對(duì)當(dāng)前實(shí)例有效
memory ---- 只對(duì)當(dāng)前啟動(dòng)的實(shí)例有效,下次啟動(dòng)無(wú)效
spfile ---- 只對(duì)spfile修改,不影響當(dāng)前實(shí)例,下次啟動(dòng)生效
both ---- 內(nèi)存和spfile都修改,默認(rèn)值
<sid> ---- 當(dāng)前實(shí)例
* ---- 所有實(shí)例,用于集群環(huán)境有多個(gè)實(shí)例
10g中常見(jiàn)參數(shù):
orcl.__db_cache_size=889192448 orcl.__java_pool_size=16777216 orcl.__large_pool_size=16777216 orcl.__shared_pool_size=285212672 orcl.__streams_pool_size=0 *.audit_file_dest='/u01/oracle/admin/orcl/adump' ---> 警告日志 *.background_dump_dest='/u01/oracle/admin/orcl/bdump' ---> 后臺(tái)進(jìn)程日志 *.compatible='10.2.0.1.0' ---> 版本向后兼容號(hào) *.control_files='/u01/oracle/oradata/orcl/control01.ctl','/u01/oracle/oradata/orcl/control02.ctl','/u01/oracle/oradata/orcl/control03.ctl' --->控制文件 *.core_dump_dest='/u01/oracle/admin/orcl/cdump' ---> 服務(wù)器進(jìn)程日志 *.db_block_size=8192 --->oracle內(nèi)存塊大小 *.db_domain='' --->域名 *.db_file_multiblock_read_count=16 --->單詞IO可以讀取多少塊 *.db_name='orcl' --->和db_domain構(gòu)成globename *.db_recovery_file_dest='/u01/oracle/flash_recovery_area' --->備份日志,OMF的管理文件存放路徑 *.db_recovery_file_dest_size=2147483648 --->flash_recovery_area目錄大小 *.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' --->共享服務(wù)器的參數(shù) *.job_queue_processes=10 --->當(dāng)前作業(yè)進(jìn)程數(shù) *.local_listener='LISTENER_ORCL' --->本地監(jiān)聽(tīng)服務(wù) *.open_cursors=300 --->打開(kāi)游標(biāo)個(gè)數(shù) *.pga_aggregate_target=407896064 --->pga大小 *.processes=150 --->當(dāng)前可以運(yùn)行多少進(jìn)程 *.remote_login_passwordfile='EXCLUSIVE' --->遠(yuǎn)程登錄是否需要密碼文件,none|shared|exclusive *.sga_target=1223688192 --->sga大?。?0g) *.undo_management='AUTO' --->undo表空間的管理方式 *.undo_tablespace='UNDOTBS1' --->ndo表空間 *.user_dump_dest='/u01/oracle/admin/orcl/udump' --->用戶進(jìn)程日志
隱藏參數(shù):
select ksppinm,ksppstvl from x$ksppi a,x$ksppcv b where a.indx=b.indx
顯示系統(tǒng)中的隱藏參數(shù)
spfile重置參數(shù)默認(rèn)值:
alter system reset 參數(shù) scope=spfile sid='<sid>'|'*';
相關(guān)文章
Oracle使用游標(biāo)進(jìn)行分批次更新數(shù)據(jù)的6種方式及速度比對(duì)
這篇文章主要介紹了Oracle使用游標(biāo)進(jìn)行分批次更新的5種方式及速度比對(duì),幫助大家更好的理解和使用數(shù)據(jù)庫(kù),感興趣的朋友可以了解下2020-10-10Oracle數(shù)據(jù)庫(kù)中的觸發(fā)器詳解
這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫(kù)中觸發(fā)器的相關(guān)資料,觸發(fā)器也是保護(hù)數(shù)據(jù)完整性的一種重要方法,于存儲(chǔ)過(guò)程不同的是,觸發(fā)器是通過(guò)事件進(jìn)行觸發(fā)被執(zhí)行,存儲(chǔ)過(guò)程需要被調(diào)用執(zhí)行,需要的朋友可以參考下2024-02-02Oracle GoldenGate同步服務(wù)歸檔空間維護(hù)【推薦】
這篇文章主要介紹了Oracle GoldenGate同步服務(wù)歸檔空間維護(hù)的相關(guān)知識(shí),非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-08-08WIN7下ORACLE10g服務(wù)端和客戶端的安裝圖文教程
WIN7下安裝ORACLE10gd的服務(wù)端和客戶端的方法,在安裝之前需要先卸載oracle 10g,具體安裝方法和詳細(xì)說(shuō)明大家可以參考下本文2017-07-07oracle數(shù)據(jù)庫(kù)關(guān)于索引建立及使用的詳細(xì)介紹
這篇文章主要介紹了oracle數(shù)據(jù)庫(kù)關(guān)于索引建立及使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07Oracle數(shù)據(jù)表保留一條重復(fù)數(shù)據(jù)簡(jiǎn)單方法
最近開(kāi)發(fā)的時(shí)候遇到一個(gè)任務(wù),需要對(duì)重復(fù)的數(shù)據(jù)進(jìn)行篩選,所以下面這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)表保留一條重復(fù)數(shù)據(jù)的簡(jiǎn)單方法,需要的朋友可以參考下2023-11-11