ORACLE數(shù)據(jù)庫管理員應(yīng)按如下方式對(duì)ORACLE數(shù)據(jù)庫系統(tǒng)做定期監(jiān)控:
(1).每天 對(duì)ORACLE數(shù)據(jù)庫的運(yùn)行狀態(tài),日志文件,備份情況,數(shù)據(jù)庫的空間使用情況,系統(tǒng)資源的使用情況進(jìn)行檢查,發(fā)現(xiàn)并解決問題。
(2).每周 對(duì)數(shù)據(jù)庫對(duì)象的空間擴(kuò)展情況,數(shù)據(jù)的增長(zhǎng)情況進(jìn)行監(jiān)控,對(duì)數(shù)據(jù)庫做健康檢查,對(duì)數(shù)據(jù)庫對(duì)象的狀態(tài)做檢查。
(3).每月 對(duì)表和索引等進(jìn)行Analyze,檢查表空間碎片,尋找數(shù)據(jù)庫性能調(diào)整的機(jī)會(huì),進(jìn)行數(shù)據(jù)庫性能調(diào)整,提出下一步空間管理計(jì)劃。對(duì)ORACLE數(shù)據(jù)庫狀態(tài)進(jìn)行一次全面檢查。
每天的工作
==========================================================================================
(1).確認(rèn)所有的INSTANCE狀態(tài)正常登陸到所有數(shù)據(jù)庫或例程,檢測(cè)ORACLE后臺(tái)進(jìn)程: $ps –ef|grep ora
(2).檢查數(shù)據(jù)文件的狀態(tài)記錄狀態(tài)不是“online”的數(shù)據(jù)文件,并做恢復(fù)。
Select file_name, status
from dba_data_files
where status=’UNAVAILABLE’;
(3).檢查日志文件和trace文件記錄alert和trace文件中的錯(cuò)誤。
連接到每個(gè)需管理的系統(tǒng)
*使用‘telnet’
*對(duì)每個(gè)數(shù)據(jù)庫,cd到bdump目錄,通常是$ORACLE_BASE/<SID>/bdump
*使用Unix‘tail’命令來查看alert_<SID>.log文件
*如果發(fā)現(xiàn)任何新的ORA-錯(cuò)誤,記錄并解決。
(4).檢查數(shù)據(jù)庫當(dāng)日備份的有效性。
對(duì)RMAN備份方式: 檢查第三方備份工具的備份日志以確定備份是否成功
對(duì)EXPORT備份方式: 檢查exp日志文件以確定備份是否成功
對(duì)其他備份方式: 檢查相應(yīng)的日志文件
(5).檢查文件系統(tǒng)的使用(剩余空間)。如果文件系統(tǒng)的剩余空間小于20%,需刪除不用的文件以釋放空間。
$df –k
(6).檢查表空間的使用情況
SELECT tablespace_name, max_m, count_blocks free_blk_cnt, sum_free_m,to_char(100*sum_free_m/sum_m, '99.99') || '%' AS pct_free
FROM (SELECT tablespace_name,sum(bytes)/1024/1024 AS sum_m
FROM dba_data_files
GROUP BY tablespace_name),
(SELECT tablespace_name AS fs_ts_name, max(bytes)/1024/1024 AS max_m, count(blocks) AS count_blocks, sum(bytes/1024/1024) AS sum_free_m
FROM dba_free_space
GROUP BY tablespace_name )
WHERE tablespace_name = fs_ts_name;
(7).檢查剩余表空間
SELECT tablespace_name, sum ( blocks ) as free_blk , trunc ( sum ( bytes ) /(1024*1024) ) as free_m,
max ( bytes ) / (1024) as big_chunk_k, count (*) as num_chunks
FROM dba_free_space
GROUP BY tablespace_name;
(8).監(jiān)控?cái)?shù)據(jù)庫性能
運(yùn)行bstat/estat生成系統(tǒng)報(bào)告或者使用statspack收集統(tǒng)計(jì)數(shù)據(jù)
(9).檢查數(shù)據(jù)庫性能,記錄數(shù)據(jù)庫的cpu使用、IO、buffer命中率等等
使用vmstat,iostat,glance,top等命令
(10).日常出現(xiàn)問題的處理。
每周的工作
==========================================================================================
(1).監(jiān)控?cái)?shù)據(jù)庫對(duì)象的空間擴(kuò)展情況
根據(jù)本周每天的檢查情況找到空間擴(kuò)展很快的數(shù)據(jù)庫對(duì)象,并采取相應(yīng)的措施:
--刪除歷史數(shù)據(jù)
---擴(kuò)表空間
alter tablespace <name> add datafile ‘<file>’ size <size>
---調(diào)整數(shù)據(jù)對(duì)象的存儲(chǔ)參數(shù)
next extent
pct_increase
(2).監(jiān)控?cái)?shù)據(jù)量的增長(zhǎng)情況
根據(jù)本周每天的檢查情況找到記錄數(shù)量增長(zhǎng)很快的數(shù)據(jù)庫對(duì)象,并采取相應(yīng)的措施:
--刪除歷史數(shù)據(jù)
---擴(kuò)表空間
alter tablespace <name> add datafile ‘<file>’ size <size>
(3).系統(tǒng)健康檢查
檢查以下內(nèi)容:
init<sid>.ora
controlfile
redo log file
archiving
sort area size
tablespace(system,temporary,tablespace fragment)
datafiles(autoextend,location)
object(number of extent,next extent,index)
rollback segment
logging &tracing(alert.log,max_dump_file_size,sqlnet)
(4).檢查無效的數(shù)據(jù)庫對(duì)象
col owner for a20
col object_name for a30
SELECT owner, object_name, object_type
FROM dba_objects
WHERE status= ’INVALID’;
(5).檢查不起作用的約束
SELECT owner, constraint_name, table_name, constraint_type, status
FROM dba_constraints
WHERE status = 'DISABLED’ AND constraint_type = 'P' ;
posted on 2012-08-29 15:31
kxbin 閱讀(175)
評(píng)論(0) 編輯 收藏 所屬分類:
ORACLE 、
轉(zhuǎn)發(fā)