Oracle 數(shù)據(jù)庫日常巡檢之檢查Oracle相關(guān)資源的使用情況
摘要:檢查Oracle初始化文件中相關(guān)的參數(shù)值;檢查數(shù)據(jù)庫連接情況,檢查系統(tǒng)磁盤空間;檢查Oracle各個(gè)表空間使用情況,檢查一些擴(kuò)展異常的對象;檢查system表空間內(nèi)的內(nèi)容,檢查對象的下一擴(kuò)展與表空間的最大擴(kuò)展值。檢查Oracle初始化文件中相關(guān)參數(shù)值
說明:若(limit_value)-(MAX_UTILIZATION)<=5,則表明與RESOURCE_NAME相關(guān)的Oracle初始化參數(shù)需要調(diào)整??梢酝ㄟ^修改Oracle初始化參數(shù)文件$
ORACLE_BASE/admin/CKDB/pfile/initORCL.ora來修改。
2.檢查數(shù)據(jù)庫連接情況
其中:SID 會(huì)話(session)的ID號(hào);
SERIAL# 會(huì)話的序列號(hào),和SID一起用來唯一標(biāo)識(shí)一個(gè)會(huì)話;
USERNAME 建立該會(huì)話的用戶名;
PROGRAM 這個(gè)會(huì)話是用什么工具連接到數(shù)據(jù)庫的;
STATUS 當(dāng)前這個(gè)會(huì)話的狀態(tài),ACTIVE表示會(huì)話正在執(zhí)行某些任務(wù),INACTIVE表示當(dāng)前會(huì)話沒有執(zhí)行任何操作;如果建立了過多的連接,會(huì)消耗數(shù)據(jù)庫的資源,同時(shí),對一些“掛死”的連接可能需要手工進(jìn)行清理。如果DBA要手工斷開某個(gè)會(huì)話,則執(zhí)行:(一般不建議使用這種方式去殺掉數(shù)據(jù)庫的連接,這樣有時(shí)候session不會(huì)斷開。容易引起死連接。建議通過sid查到操作系統(tǒng)的spid,使用ps –ef|grep spidno的方式確認(rèn)spid不是ORACLE的后臺(tái)進(jìn)程。使用操作系統(tǒng)的kill -9命令殺掉連接)
alter system kill session 'SID,SERIAL#';
注意:上例中SID為1到8(USERNAME列為空)的會(huì)話,是Oracle的后臺(tái)進(jìn)程,不要對這些會(huì)話進(jìn)行任何操作。
3.檢查系統(tǒng)磁盤空間
使用命令:df -h
4.檢查表空間使用情況
如果空閑率%Free小于10%以上(包含10%),則注意要增加數(shù)據(jù)文件來擴(kuò)展表空間而不要是用數(shù)據(jù)文件的自動(dòng)擴(kuò)展功能。請不要對表空間增加過多的數(shù)據(jù)文件,增加數(shù)據(jù)文件的原則是每個(gè)數(shù)據(jù)文件大小為2G或者4G,自動(dòng)擴(kuò)展的最大限制在8G。
5.檢查一些擴(kuò)展異常的對象
如果有記錄返回,則這些對象的擴(kuò)展已經(jīng)快達(dá)到它定義時(shí)的最大擴(kuò)展值。對于這些對象要修改它的存儲(chǔ)結(jié)構(gòu)參數(shù)。
6.檢查system表空間內(nèi)的內(nèi)容
如果記錄返回,則表明system表空間內(nèi)存在一些非system和sys用戶的對象。應(yīng)該進(jìn)一步檢查這些對象是否與我們應(yīng)用相關(guān)。如果相關(guān)請把這些對象移到非System表空間,同時(shí)應(yīng)該檢查這些對象屬主的缺省表空間值。
7.檢查對象的下一擴(kuò)展與表空間的最大擴(kuò)展值
下一篇:Oracle 死鎖與慢查詢總結(jié)