(6).檢查無效的trigger
SELECT owner, trigger_name, table_name, status
FROM dba_triggers
WHERE status = 'DISABLED’;
每月的工作
==========================================================================================
(1). Analyze Tables/Indexes/Cluster
analyze table <name> estimate statistics sample 50 percent;
(2).檢查表空間碎片
根據本月每周的檢查分析數據庫碎片情況,找到相應的解決方法;
(3).尋找數據庫性能調整的機會
比較每天對數據庫性能的監控報告,確定是否有必要對數據庫性能進行調整;
(4).數據庫性能調整
如有必要,進行性能調整;
(5).提出下一步空間管理計劃
根據每周的監控,提出空間管理的改進方法;
Oracle DBA日常管理
==========================================================================================
目的:這篇文檔有很詳細的資料記錄著對一個甚至更多的ORACLE數據庫每天的,每月的,每年的運行的狀態的結果及檢查的結果,在文檔的附錄中你將會看到所有檢查,修改的SQL和PL/SQL代碼。
目錄
1.日常維護程序
A.檢查已起的所有實例
B.查找一些新的警告日志
C.檢查DBSNMP是否在運行
D.檢查數據庫備份是否正確
E.檢查備份到磁帶中的文件是否正確
F.檢查數據庫的性能是否正常合理,是否有足夠的空間和資源
G.將文檔日志復制到備份的數據庫中
H.要常看DBA用戶手冊
2.晚間維護程序
A.收集VOLUMETRIC的數據
3.每周維護工作
A.查找那些破壞規則的OBJECT
B.查找是否有違反安全策略的問題
C.查看錯誤地方的SQL*NET日志
D.將所有的警告日志存檔
E.經常訪問供應商的主頁
4.月維護程序
A.查看對數據庫會產生危害的增長速度
B.回顧以前數據庫優化性能的調整
C.查看I/O的屏頸問題
D.回顧FRAGMENTATION
E.將來的執行計劃
F.查看調整點和維護
5.附錄
A.月維護過程
B.晚間維護過程
C.周維護過程
6.參考文獻
==========================================================================================
一.日維護過程
A.查看所有的實例是否已起:
確定數據庫是可用的,把每個實例寫入日志并且運行日報告或是運行測試文件。當然有一些操作我們是希望它能自動運行的。
可選擇執行:用ORACLE管理器中的‘PROBE’事件來查看;
B.查找新的警告日志文件;
1.聯接每一個操作管理系統;
2.使用‘TELNET’或是可比較程序;
3.對每一個管理實例,經常的執行$ORACLE_BASE/<SID>/bdump操作,并使其能回退到控制數據庫的SID。
4.在提示下,使用UNIX中的‘TAIL’命令查看alert_<SID>.log,或是用其他方式檢查文件中最近時期的警告日志;
5.如果以前出現過的一些ORA_ERRORS又出現,將它記錄到數據庫恢復日志中并且仔細的研究它們,這個 數據庫恢復日志在〈FILE〉中;
C.查看DBSNMP的運行情況;
檢查每個被管理機器的‘DBSNMP’進程并將它們記錄到日志中。
在UNIX中,在命令行中,鍵入ps–ef | grep dbsnmp,將回看到2個DBSNMP進程在運行。如果沒有,重啟DBSNMP。
D.查數據庫備份是否成功;
E.檢查備份的磁帶文檔是否成功;
F.檢查對合理的性能來說是否有足夠的資源;
1.檢查在表空間中有沒有剩余空間。
對每一個實例來說,檢查在表空間中是否存在有剩余空間來滿足當天的預期的需要。當數據庫中已有的數據是穩定的,數據日增長的平均數也是可以計算出來,最小的剩余空間至少要能滿足每天數據的增長。
A)運行‘FREE.SQL’來檢查表空間的剩余空間。
B)運行‘SPACE.SQL’來檢查表空間中的剩余空間百分率
2.檢查回滾段;
回滾段的狀態一般是在線的,除了一些為復雜工作準備的專用段,它一般狀態是離線的。
a)每個數據庫都有一個回滾段名字的列表。
b)你可以用V$ROLLSTAT來查詢在線或是離線的回滾段的現在狀態.
Select USN, LATCH, EXTENTS, RSSIZE, WRITES, HWMSIZE, SHRINKS, STATUS
From v$rollstat;
c)對于所有回滾段的存儲參數及名字,可用DBA_ROLLBACK_SEGS來查詢。但是它不如V$ROLLSTAT 準確。
col segment_name for a15
col tablespace_name for a20
col file_id for 9999999
Select *
From dba_rollback_segs;
3.識別出一些過分的增長
查看數據庫中超出資源或是增長速度過大的段,這些段的存儲參數需要調整。
a)收集日數據大小的信息,可以用‘ANALYZE5PCT.SQL’。如果你收集的是每晚的信息,則可跳過這 一步。
b)檢查當前的范圍,可用‘NR_EXTENTS.SQL’。
c)查詢當前表的大小信息。
d)查詢當前索引大小的信息。
e)查詢增長趨勢。
4.確定空間的范圍。
如果范圍空間對象的NEXT_EXTENT比表空間所能提供的最大范圍還要大,那么這將影響數據庫的運行。如果我們找到了這個目標,可以用‘ALTER TABLESPACE COALESCE’調查它的位置,或加另外的數據文件。
A)運行‘SPACEBOUND.SQL’。如果都是正常的,將不返回任何行。
5.回顧CPU,內存,網絡,硬件資源論點的過程
A)檢查CPU的利用情況,進到x:.htm =>system metrics=>CPU利用頁,CPU的最大限度為400,當CPU的 占用保持在350以上有一段時間的話,我們就需要查看及研究出現的問題。
G.將存檔日志復制到備用數據庫中
如果有一個備用數據庫,將適當的存檔日志復制到備用數據庫的期望位置,備用數據庫中保存最近期的數據。
H.經常查閱DBA用戶手冊
如果有可能的話,要廣泛的閱讀,包括DBA手冊,行業雜志,新聞組或是郵件列表。
==========================================================================================
大部分的數據庫產品將受益于每晚確定的檢查進程的運行。
A.收集VOLUMETRIC數據
1.分析計劃和收集數據
更準確的分析計算并保存結果。
a)如果你現在沒有作這些的話,用‘
posted on 2012-08-29 15:33
kxbin 閱讀(217)
評論(0) 編輯 收藏 所屬分類:
ORACLE 、
轉發