做數據庫的朋友都知道, 其實數據庫的工作大致可以分為三類: 數據庫設計與開發, 數據庫管理, 數據庫商業智能. 其中數據庫管理的工作大部分是由DBA在做, DBA們除了要保證正常的數據庫運行, 還要采取必要措施提升數據庫的性能, 比如數據庫的性能優化, 以及保證數據庫系統的高可用性. 我在前面發了幾篇對SQL Server數據庫進行調優的文章, 下面會再開一個SQL Server高可用性解決方案的主題.
筆者工作中也有很多場景會用到HA, 但因為沒有進行過系統的學習, 所以處理HA問題時總覺得捉襟見肘. 索性, 就下決心把這幾種高可用性解決方案都系統地過了一遍. 一下手, 才知道, 除了枯燥的MSDN文檔, 完整講解HA知識點的文檔真心不多, 視頻更是找不到, 估計很多朋友都跟我有相同的感受. 好吧, 那我就自己學, 自己配, 自己錄, 把知識點及配置的過程都以視頻形式記錄下來, 以后用到的時候好復習, 有機會發到網上, 其他朋友看到后也更容易接受. 需要提一下的是, 這期間, 剛好有個IT學習網站讓幫忙做些數據庫視頻, 所以中間會有一些他們的Logo, 希望大家不要介意.
今天上傳的是第一種高可用性解決方案: 日志傳送。 它的特點是設置簡單, 對環境的要求相對比較低, 更多時候用在報表數據庫上。 不足是實現的功能也相對簡單, 不能實現自動故障轉移群集, 不能進行雙向更改。
視頻鏈接
視頻提綱:
o 事務日志傳送是如何工作的
建立一個備用的服務器
更新時間可以被配置
需要使用完整恢復模型或大容量日志模型
依賴於備份/還原操作
不需要特殊的硬件支持
可以有多個備用數據庫
o 角色:
主數據庫,備用數據庫,監測數據庫
o 過程:
在主服務器上創建事務日志備份
文件被復制到備用服務器上
日志被還原到備用服務器上
NORECOVERY (數據庫保持脫機狀態)
STANDBY (數據庫是只讀的)
o 使用SSMS上設定日志傳送:
准備主數據庫
應用監測數據庫
初始化備用數據庫
復制日志文件
安全性設定/代理賬戶
可以計划備份與還原操作的間隔
創建需要的作業
o 管理日志傳送
避免手動的備份(除了僅-復制備份)
日志傳送信息 (存儲在msdb數據庫中)
主服務器(備份詳細)
備用服務器(復制與還原詳細)
監測服務器(上面兩者中所有的數據)
事務日志傳送報表(SSMS)
o 手動實施故障轉移
禁用所有的日志傳送作業
主數據庫:備份並復制事務日志(如果必要的話)
在備用服務器上還原事務日志(記得加上with NORECOVERY選項)
在最后的一個日志還原上使用with RECOVERY選項
重新建立日志傳送(可選的)
切換主從角色
可以通過禁用/啟用作業來實現