SQL Mirror HA(SQL server的高可用性)[轉載]

來源:互聯網
上載者:User

對SQL Server 2008 進行Mirror的基本配置及安裝。

準備工作

1. Principal 與Mirror 以及 Witness 三台執行個體都安裝為相同版本,目前是到SQL Server 2008 SP1。

2. 需要有一個域帳戶分別添加到 三台資料庫執行個體所在的Server 的 Administrators組、以及SQL Server 相關的組中; 由於具體的組的功能不清楚,因此建議所有組都添加該域帳戶,確保許可權運行正常。

3. 將第二步中的域帳戶設定為SQL Server 服務,SQL Server Agent 的啟動帳戶,並重啟服務。

4. 確保Principal 與Miroor 兩台執行個體上的資料資料及日誌相同。備份模式為完全備份,復原模式為完全,向Mirror執行個體上恢複資料庫時必須選擇為NoRecovery模式。

建立EndPoint

1. 在Principal與 Mirror執行個體上建立EndPoint,運行指令碼:

Create
EndPoint On Principal and Mirror Instance

CREATE ENDPOINT mirroring_ep 
STATE=STARTED
AS TCP (LISTENER_PORT=5022)
FOR DATABASE_MIRRORING
(ROLE = PARTNER, ENCRYPTION = SUPPORTED)
--或
CREATE ENDPOINT mirroring_ep
STATE=STARTED
AS TCP (LISTENER_PORT=5022)
FOR DATABASE_MIRRORING
(AUTHENTICATION=WINDOWS NTLM,ROLE = PARTNER)

 

2. 在Witness執行個體上建立EndPoint,運行指令碼:

Create
EndPoint On Witness Instance

CREATE ENDPOINT mirroring_ep
STATE = STARTED
AS TCP ( LISTENER_PORT = 5022 )
FOR DATABASE_MIRRORING
( ENCRYPTION = SUPPORTED, ROLE=WITNESS );
--或
CREATE ENDPOINT mirroring_ep
STATE=STARTED
AS TCP (LISTENER_PORT=5022)
FOR DATABASE_MIRRORING
(AUTHENTICATION=WINDOWS NTLM,ROLE = WITNESS)

 

 

查看EndPoint及刪除EndPoint指令碼:

Select * From Sys.database_mirroring_endpoints

Select * From sys.database_mirroring

Drop Endpoint endpoint_mirroring

 

建立 Mirror Session

1.在Mirror 執行個體上建立Session,運行指令碼:

ALTER DATABASE  DataBaseName

SET PARTNER = 'TCP://PrincipalServerName:5022';

2.在Principal 執行個體上建立Session ,運行指令碼:

ALTER DATABASE  DataBaseName

SET PARTNER = 'TCP://MirrorServerName:5022';

3.在Principal 執行個體上指定Witness,運行指令碼:

ALTER DATABASE  HB2008_Gome

SET WITNESS = 'TCP://WitnessServerName:5022';

注意:1.在Principal執行個體上建立Session時可能會遇到此錯誤,錯誤資訊如下:鏡像資料庫 "dbName" 包含的交易記錄資料不足,無法保留主體資料庫的記錄備份鏈。如果沒有從主體資料庫進行記錄備份或者沒有在鏡像資料庫上還原記錄備份,則可能會出現這種情況。解決方案是在Principal執行個體上再進行一次記錄備份,並按照NoRecovery模式還原至Mirror執行個體上。原因是日誌存在間斷,可能在進行完全備份時又產生日誌。2.測試FailOver    ALTER DATABASE DataBaseSET PARTNER FAILOVER3.相關查詢表:Sys.database_mirroring Sys.database_mirroring_endpoints Sys.database_mirroring_witnesses 4.計劃任務提前備份:可以將Principal上的計劃任務提前產生指令碼,在Mirror配置完成後,在Mirror執行個體上執行。

 

 

5.鏡像運行模式

  1.高安全性模式:支援同步操作,事務在主體與鏡像上同時提交,會延長事務延隔時間。

  2.高效能模式:支援非同步運行,鏡像伺服器可能稍微滯後於主體資料庫。

   值得說明的是,高安全性模式,由於是主體與鏡像為同步操作,鏡像的未提交會導致主體不進行提交,可能會有較大的影響。

   比如:DBServerA與DBServerB資料庫互為鏡像,DBServerA為主體,DBServerB為鏡像;

      同時DBServerA做了發行伺服器,DBServerC從DBServerA做了訂閱。應用系統在DBServerC上進行查詢。

      若DBServerB 出現故障,則DBServerA無法提交,從而DBServerC查詢資料不及時。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.