ORACLE DBA 職責, 基本相當於日常工作.
0. 數據庫設計
1. 模式對象的創建與管理(table, index 等等)
2. 事物管理, 例如並發等
3. SQL 調優 只是針對SQL的 troubleshooting
4. 用戶管理, & 權限管理
5. 實時運行監控 (借助 toad, statspack)
6. 數據庫問題診斷 trouble shooting (可能也需要確認)
-----------------------------------------------------------
7. 建立, 升級 oracle -基本完成-
8. 備份, 恢復 (忽略)
9. instance 調優 (忽略)
10. 網絡設置 -完成-
11. 安全管理 & 資源管理 (忽略)
其中, 上半部分是個人覺的自己應該掌握的, 下邊的先忽略.
另外, 要精通 SQL, PL/SQL.
開發與監控的步驟
part A (創建 & 設計)
1. 數據庫建立, 網絡配置 (ok)
2. 用戶建立(dba用戶, 開發用戶) 相關權限
3. 數據庫設計, 模式創建
part B (管理 & 監視)
1. 模式管理
2. 事務管理, 並發控制
3. 實時運行監控
4. SQL 調優
5. 數據庫問題診斷 (可能不用)
網絡上轉載的 DBA 職責
首先 要多做 實驗
入門: 理解 oracle 結構, 並了解 oracle 組成(database + instance)的部分. 然后在大腦中形成框架
oracle 技能:
- windows/ linux / unix 平台下的安裝, 卸載
- 冷備份與冷備份還原
- 邏輯備份與還原
- RMAN 備份與還原
- 數據搬遷: 可用邏輯備份或 RMAN 來做
- 添加表空間
- 高可用之 Data Guard 安裝與維護
- 高可用之 RAC 安裝於維護
- 數據庫性能診斷與調優
dba 職責 (蓋)
1.實時監控數據庫告警日志(alert_sid.log)
這是必須進行的工作,並且應該根據不同的嚴重級別,發送不同級別的告警,及時了解數據庫的變化與告警。
2.實時監控數據庫的重要統計信息
實施監控對於數據庫運行至關重要、能夠表征數據庫重要變化的統計信息,並且據此發送報警信息。那么應當監控哪些統計信息呢?大家可以思考一下,對於單機、RAC環境各不相同
3.部署自動的Statspack/AWR報告生成機制
每天檢查前日的AWR報告,熟悉數據庫的運行狀況,做到對於數據庫了如指掌
4.每天至少優化和熟悉一個Top SQL
根據AWR或Statspack報告,每天至少了解或熟悉一個Top SQL,能優化的要提出優化和調整建議
5.部署完善的監控和數據采樣系統
DBA應該對數據庫部署完善的監控系統,並對重要信息進行采樣,能夠實時或定期生成數據庫重要指標的曲線圖,展現數據庫的運行趨勢.
6.全面深入的了解應用架構
不了解應用的DBA是沒有前途的DBA,對應用了解不深入的DBA算不上Expert,所以一定要深入了解應用。
7.撰寫系統架構、現狀、調整備忘錄
根據對數據庫的研究和了解,不斷記錄數據庫的狀況,撰寫數據庫架構、現狀及調整備忘錄,不放過任何可能的優化與改進的機會。
現在的 dba 提供了很多可視化的方便的工具, 對於類似搜集信息, 自動優化都有好處, 但是, 實際骨子里的東西, 不能浮在上面, 所以, 現在的重點不是放在"背", 而是, "理解 + 深入 + 實驗實現".
所以, 盡量少用圖形化的工具, 哪些只是工具, 多用 sqlplus.