DBA 職責及日常工作職責:
1.安裝和升級資料庫伺服器,以及應用程式工具構建和配置網路環境.
2.熟悉資料庫系統的儲存結構預測未來的儲存需求,制訂資料庫的儲存方案.
3.根據開發人員設計的應用系統需求建立資料庫儲存結構.
4.根據開發人員設計的應用系統需求建立資料庫物件
5.根據開發人員的反饋資訊,在必要的時候修改資料庫的結構
6.管理資料庫的使用者維護資料庫的安全性
7.控制和監控使用者對資料庫的存取訪問
8.監控和最佳化資料庫的效能
9.制定Database Backup計劃,災難出現時對資料庫資訊進行恢複
10.備份和恢複資料庫
11.聯絡資料庫系統生產廠商,跟蹤技術資訊
12.解決用戶端中介層和伺服器的連結問題
13.保證安全連線
每日工作:
1 確保伺服器工作狀態正常,各類資料庫狀態正常
2 檢查硬碟空間是否夠用
3 查看資料庫日誌,查看追蹤檔案,檢查是否有錯誤資訊
4 檢查備份的有效性
5 通過系統的效能監控器對伺服器的績效參數監控探索資料庫的效能是否下降,尋找原因並解決
6 填寫dba日誌
每周工作:
1 監控資料庫物件的空間擴充情況
2 決定是否調整儲存參數
3 對系統健全狀態檢查
4 檢查刪除沒有任何意義的資料對象
5 檢查刪除沒有意義的約束和觸發器
6 對每周的備份檢查處理
每月工作:
1 根據上面的檢查情況,分析資料庫中是否有影響效能的儲存片段存在
2 根據資料庫效能的曆史資料,決定如何最佳化效能
3 處理每日每周每月的備份
4 總結工作,提出下一步的管理計劃
Oracle DBA日常工作總結
Oracle管理員應按如下方式對Oracle資料庫系統做定期監控:
1、每天對Oracle資料庫的運行狀態、記錄檔、備份情況、資料庫空間使用方式、系統資源使用方式進行檢查,發現並解決問題。
2、每周對資料庫物件的空間擴充情況、資料的增長情況進行監控、對資料庫做健全狀態檢查、對資料庫物件的狀態做檢查。
3、每月對錶和索引等進行analyze、檢查資料表空間片段、尋找資料庫效能調整的機會、進行資料庫效能調整、提出下一步空間管理計劃。對Oracle資料庫狀態進行一次全面檢查。
每天工作
1、確認所有的instance狀態正常登入到所有資料庫或執行個體,檢測Oracle後台進程:#ps -ef | grep ora
2、檢查檔案系統的使用(剩餘空間)。如果檔案系統的剩餘空間小於20%,需刪除不用的檔案以釋放空間。#df -k
3、檢查記錄檔和trace檔案記錄alert和trace檔案中的錯誤。 cd $Oracle_BASE/oradata/<sid>/bdumptail -f alert_<sid>.log
發現任何新的ORA_錯誤,記錄並解決
4、檢查資料庫當日備份的有效性
對RMAN備份方式,檢查第三方備份工具的備份日誌以確定備份是否成功
對EXPORT備份方式,檢查exp記錄檔以確定備份是否成功
對其它備份方式,檢查相應的記錄檔
5、檢查資料檔案的狀態選項組不是“online"的資料檔案,並做恢複。
select file_name from dba_data_files where status="OFFLINE"
6、檢查資料表空間的使用方式
select a.tablespace_name,round((total-free)/total,3)*100 pecentfrom (select tablespace_name,sum(bytes) free from dba_free_space group by tablespace_name) a,(select tablespace_name,sum(bytes) total from dba_data_files group by tablespace_name) bwhere a.tablespace_name=b.tablespace_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_chunksfrom dba_free_space group by tablespace_name;
8、監控資料庫效能
運行utlbstat.sql/utlestat.sql產生系統報告,或者使用statspace收集統計資料
9、檢查資料庫效能,記錄資料庫的CPU使用、IO、Buffer命中率等等,使用vmstat,iostat,glance,top
10、日常出現問題的處理
每周的工作
1、控制資料庫物件的空間擴充情況,根據本周每天的檢查情況找到空間擴充很快的資料庫物件,並採取相應的措施。
刪除曆史資料、擴充資料表空間
alter tablespace <name> add datafile '<file>' size <size>
調整資料對象的儲存參數 next extent pct_increase
2、監控資料量的增長情況
根據本周每天的檢查情況找到記錄資料數量增長很快的資料庫物件,並採取相應的措施
刪除曆史資料、擴資料表空間
alter tablespace <name> add datafile '<file>' size <size>
3、系統健全狀態檢查
檢查以下內容:
init<sid>.oracontrolfileredo log filearchiveingsort area sizetablespace(system,temporary,tablespace fragment)datafiles(autoextend,location)object(number of extent,next extent,index)rollback segmentlogging & tracing(alert.log,max_dump_file_size,sqlnet)
4、檢查無效的資料庫物件
select owner,object_name,object_type from dba_objects where status='INVALID'
5、檢查不起作用的約束
select owner,constraint_name,table_name,constraint_type,status from dba_constraintswhere status='DISABLED' and constraint_type='p'
6、檢查無效的trigger
select owner,trigger_name,table_name,status from dba_triggerswhere status='DISABLED'
每月的工作
1、Analyze tables/indexes/cluster
analyze table <name> estimate statistics sample 50 percent;
2、檢查資料表空間片段
根據本月每周的檢查分析資料庫片段,找到相應的解決方案
3、尋找資料庫效能調整機會
比較每天對資料庫效能的監控報告,確定是否有必要對資料庫效能進行調整
4、資料庫效能調整,如有必要進行效能調整
5、提出下一步空間管理計劃,根據每周的監控,提出空間管理的改進方法