運維注意事項及案例講解(個人心得)
1. 資料庫運維工作目標
資料庫的運維工作目標是保證服務範圍內的資料庫正常執行,用好、管好現有的已交付資料,在資料生命週期中,達到資料庫安全性、可用性、可靠性等幾個目標。
2. 資料庫運維工作範圍
資料庫運維範圍主要是管理維護資料庫,在資料庫出現異常的時候,有時往往是應用人員或者部門提出查詢緩慢、或者不能正常使用等問題,有時可能原因出在使用人員的客戶端機器或者網路部分,比如有以下情況出現:
同一部門或者同一應用使用者沒有問題,但有個別應用人員提出應用不能正常使用的現象。原因可能如下:
1) 原來使用正常,但是安裝其他的安全軟體,遮蔽了資料庫連通的埠,導致應用不能使用。
2) 所在的網路終端可能出現問題,使用ping命令,檢視是否有丟包現象。
3) 開始能正常使用,但是有個長時間的處理之後,整個應用就不能用了,有可能是因為某些軟體對應用埠的使用做了超時連結控制的結果。
根據以上的一些情況,首先要判斷問題出現在哪個環節,然後再進行資料庫的處理,當然對於資料庫伺服器問題,檢視alter日誌是最有效和直接的,因為一旦是資料庫伺服器出現問題,在alter日誌中都會有記錄。
3. 資料庫運維工作內容及相關案例
資料庫運維工作內容很多,從工作內容複雜性和常用性方面可以分為日常運維管理、高階運維管理,從達到目標分安全性、可用性、可靠性方面,具體內容如下。
3.1. 安全性
安全性包括資料訪問安全和資料安全備份恢復方面的工作。
1. 資料安全訪問
作為資料庫訪問安全,主要是對於資料庫使用者及其許可權的管理工作。訪問計算機系統時需要遵循的重要的安全原則是“最小許可權”原則(即使用者應當只擁有執行其任務所需的最小許可權,並且禁止所有未被特別允許的許可權)。Oracle資料庫遵循了最小許可權原則,在預設情況下,只有使用者SYS和SYSTEM才擁有所有許可權.其他使用者甚至都無法連線資料庫。採用一些安全策略來對使用者的許可權進行管理,比如:更改dba使用者名稱,禁用sys和system使用者等。
其次可以採用審計功能來提高資料訪問安全的審計倒查來防範一些非法訪問或者非法操作等。
2. 資料安全備份恢復
資料安全備份恢復主要採用Rman對資料庫進行增量備份恢復策略,並有計劃的進行恢復測試,以便保證資料備份檔案的有效性。或者採用DataGuard進行實時資料保護等。這些一般是資料庫大級別的安全備份恢復,作為日常工作中,對於一個重要表進行操作時,還是需要進行表級備份的,這樣才能做到資料的安全性,不至於出現資料誤刪或者誤更新操作。但是目前已經有flashback閃回操作,也能增加其資料的安全性。方法很多,但是重在資料安全意識。
3.2.可用性
資料庫可用性的日常維護包括很多,如:系統的可用磁碟空間、表空間的可用空間監控、回滾表空間、臨時表空間的監控、線上redo監控、歸檔日誌監控清理、物件的有效性等,如果後期用ASM進行管理,還要監測ASM的可用磁碟空間,並考慮其不同資料的增量,預估出表空間和磁碟大小,及時擴充套件,以便避免因為表空間或者磁碟空間不足而導致的資料庫問題。
案例1:由於沒有及時清理歸檔日誌導致磁碟空間耗盡,引起資料庫掛起。
案例2:由於沒有及時擴充套件表空間,導致資料無法增加和插入,引起應用異常。
案例3:由於redo日誌過小或者日誌組過少,導致redo日誌切換過快,引起應用資料插入和更新。
案例4:由於磁碟或者ASM空間耗盡,引起資料庫服務掛起。
案例5:由於資料庫物件失效,或者索引失效,引起應用無法正常使用,或者查詢資料響應緩慢的問題。
3.3. 可靠性
可靠性是指資料庫能不間斷的執行,即使是做其他資料處理的時候也能保證資料庫的正常使用,這樣就要保證資料的安全性和例項的有效性,oracle rac和oracle dataguard提供了這一功能。
在對於可靠性的維護方面,一般是在oracle RAC環境下進行維護的,其中包括了cluster的維護和資料庫例項以及ASM例項的維護。
3.4. 故障排除
針對故障排除方面,遵循以下思路,一般故障出現之後,在alter日誌中都有記錄,根據alter日誌中的錯誤號和提示資訊,來判定資料庫出現的錯誤是什麼,定位錯誤環節:資料庫整體環節(如:redo、archivelog、undo表空間、temp表空間、session等)、應用環境(如是否是儲存過程問題、或者觸發器、檢視等)或者是系統級問題。定位好問題之後再做進一步處理。
3.5. 故障分析及解除總結
4. 日常運維管理任務及知識點
4.1. 日常運維管理任務
序號 |
工作內容 |
週期 |
備註 |
1 |
確認所有的INSTANCE狀態正常 |
日 |
|
2 |
檢查檔案系統的使用(剩餘空間) |
日 |
|
3 |
檢查日誌檔案和trace檔案記錄 |
日 |
|
4 |
檢查資料庫當日備份的有效性 |
日 |
|
5 |
檢查資料檔案的狀態 |
日 |
|
6 |
檢查表空間的使用情況 |
日 |
|
7 |
檢查剩餘表空間 |
日 |
|
8 |
監控資料庫效能 |
日 |
|
9 |
檢查資料庫系統效能 |
日 |
|
10 |
日常出現問題的處理 |
日 |
|
11 |
監控資料庫物件的空間擴充套件情況 |
周 |
|
12 |
監控資料量的增長情況 |
周 |
|
13 |
系統健康檢查 |
周 |
|
14 |
檢查無效的資料庫物件 |
周 |
|
15 |
Analyze Tables/Indexes/Cluster |
月 |
|
16 |
檢查表空間碎片 |
月 |
|
17 |
尋找資料庫效能調整的機會 |
月 |
|
18 |
資料庫效能調整 |
月 |
|
19 |
提出下一步空間管理計劃 |
月 |
|
4.2. 相關知識點
日常運維需要了解的知識點也比較多,具體如下:
序號 |
知識點 |
基本 |
具體工作 |
1 |
ORACLE資料庫部署 |
日常 |
|
2 |
ORACLE資料庫建立 |
日常 |
|
3 |
ORACLE SQL語言 |
日常 |
|
4 |
ORACLE體系架構 |
日常 |
|
5 |
ORACLE使用者管理 |
日常 |
|
6 |
ORACLE例項管理 |
日常 |
|
7 |
ORACLE資料檔案資料塊 |
日常 |
|
8 |
ORACLE物件管理 |
日常 |
|
9 |
ORACLE UNDO表空間管理 |
日常 |
|
10 |
ORACLE 線上歸檔日誌維護管理 |
日常 |
|
11 |
ORACLE 安全管理 |
日常 |
|
12 |
ORACLE RMAN 基本備份恢復 |
日常 |
|
13 |
ORACLE資料庫閃回 |
日常 |
|
14 |
ORACLE DATAPUMP |
日常 |
|
15 |
ORACLE資料庫升級 |
中級 |
|
16 |
ORACLE資料庫遷移(涵蓋 ORACLE ASM 磁碟組之間資料庫的遷移) |
中級 |
|
17 |
ORACLE資料庫日常 |
中級 |
|
18 |
備份策略制定和備份恢復 |
中級 |
|
19 |
ORACLE資料庫壞塊修復 |
中級 |
|
20 |
ORACLE資料庫資料塊編輯 |
中級 |
|
21 |
ORACLE資料庫日常健康檢查 |
中級 |
|
22 |
ORACLE資料庫日常效能巡檢 |
中級 |
|
23 |
ORACLE資料庫日常運維監控 |
中級 |
|
24 |
ORACLE 高併發和高可用即 |
高階顧問 |
|
25 |
ORACLE REAL APPLICATION CLUSTERS和ORACLE DATAGUARD, |
高階顧問 |
|
26 |
做為集中資料庫運維監控的ORACLE GRID |
高階顧問 |
|
27 |
ORACLE資料倉儲 |
高階顧問 |
|
28 |
ORACLE高併發與高可用綜合應用 |
高階顧問 |
|
29 |
ORACLE高階安全設計 |
高階顧問 |
|
30 |
ORACLE SQL 最佳化 |
高階顧問 |
|
31 |
ORACLE效能最佳化 |
高階顧問 |
|
32 |
ORACLE資料庫系統綜合併發壓力測試 |
高階顧問 |
|
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29734436/viewspace-1365921/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Dataguard】DataGuard運維注意事項運維
- MYSQL 安裝維護注意事項MySql
- 搭建 nuget 私服及注意事項
- Guava HashMultimap使用及注意事項Guava
- 解壓縮版mysql安裝及注意事項MySql
- 介面開發文件及注意事項
- mysql索引使用技巧及注意事項MySql索引
- MySQL常用語句及注意事項MySql
- TokuDB的安裝及注意事項
- oracle hash join原理及注意事項Oracle
- DRM 分析及案例講解
- spring心得9--自動代理知識點講解及案例分析Spring
- 詳解Linux(Centos)之安裝Nginx及注意事項LinuxCentOSNginx
- 段合併優化及注意事項優化
- SVN安裝配置及安全注意事項
- Python eval的用法及注意事項Python
- 如何搭建伺服器及注意事項伺服器
- 招聘面試技巧及注意事項總彙面試
- FACEBOOK 大中華區開發者個人賬戶管理注意事項
- spring心得6--自動裝配知識點講解及案例分析Spring
- Linux企業運維高效技巧心得及分享Linux運維
- 伺服器日常維護需注意哪些事項?伺服器
- 【系統運維】--linux伺服器上傳測試程式碼注意事項運維Linux伺服器
- ORACLE分割槽表梳理系列(二)- 分割槽表日常維護及注意事項Oracle
- PHP7 null 合併運算子注意事項PHPNull
- RandomAccessFile注意事項randomMac
- nginx 注意事項Nginx
- @Lombok注意事項Lombok
- 開發及上線中的注意事項
- 4.Rxjs介紹及注意事項JS
- BIEE安裝前準備及注意事項
- Vagrant在Windows下安裝及注意事項Windows
- Oracle Outline的使用及注意事項Oracle
- 深入瞭解typeof與instanceof的使用場景及注意事項
- SVN衝突解決和注意事項
- 計算機的實際維護和注意事項計算機
- Oracle IMPDP匯入資料案例之注意事項(undo/temp)Oracle
- 教程:MySQL 8安裝與配置及注意事項MySql