1. 程式人生 > >SQL server 2012 主從複製

SQL server 2012 主從複製

#基於Windows主+Linux從暫時沒有實現

今天主要記錄基於Windows端的主從同步的詳細的過程

環境

伺服器:騰訊雲Windows 2012 R2 (主)115.159.24.172        主機名:10_154_39_176 (從)123.206.106.80        主機名:10_105_217_219 #可以先分別在兩臺機器上,提前在下面路徑的hosts檔案做個主機名對映(也叫域名解析),便於需要特定訪問對方主機名操作. #C:\Windows\System32\drivers\etc\hosts #123.206.106.80        10_105_217_219 #115.159.24.172        10_154_39_176

資料庫版本:SQL server 2012(最好用2012版,因為2012有主從同步需要的代理功能)

SQL server安裝這裡省略 初次安裝我遇到一個需要依賴的軟體jdk-7u80-windows-x64要單獨安裝 此外安裝過程中只需設定sa密碼即可一路預設下一步即可 SQL server 自帶的客戶端連線工具和配置管理器可以在搜尋中找到

預設分別存放在如下路徑 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2012 C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Microsoft SQL Server 2012\配置工具

還可以用Navicat作為客戶端連線,如下圖

開始配置

//主資料庫Northwind,如下圖所示:

//從CXSlaveDB中,沒有資料庫Northwind,如下圖所示:

image

二、建立SQL  Server資料庫的管理員使用者和共享資料夾許可權,設定SQL Server服務SQL Server代理的登入使用者為sqladmin

1. 在主資料庫CXMasterDB伺服器上建立使用者sqladmin:

快捷鍵win + R ---> 輸入lusrmgr.msc回車,

如下圖所示:

image

//設定sqladmin的許可權,只留下administrators,別的都刪掉

image

2. 同理,在從資料庫CXSlaveDB伺服器上建立使用者sqladmin且加入administrators組,其他都刪除之!

3. 分別在主從資料庫伺服器上建立共享資料夾DB_Backpup,用於存放主從備份日誌檔案,需要共享許可權和NTFS許可權,如如下圖所示:

image

image

4. 分別從主資料庫伺服器上和從資料庫伺服器上開啟SQLServer配置管理器,將SQLServer服務和SQLServer代理服務的“登入身份為”sqladmin使用者且啟動模式為:自動,如下圖所示:

image

image

三、配置SQLServer日誌傳送

1. 在主資料庫伺服器CXMasterDB上配置

//用sqladmin連線到本地SQL  Server資料庫伺服器(我當時用administrator登入的也可以同步,因為不知道為什麼sqladmin使用者登入不上)

image

//在資料庫例項中,配置 伺服器身份驗證模式  和 伺服器代理帳戶

image

2. 在主資料庫伺服器CXMasterDB中的Northwind資料庫的屬性的配置

image

//在Northwind資料庫的屬性 --> 選項 的配置(2012版預設就是完整)

image

//在Northwind資料庫的屬性 --> 事務日誌傳送 的配置

image

//事務日誌備份設定,如下圖所示:

image

//在上圖中,點選 計劃…  後,彈出如下圖所示:

image

一路 確定 !見到下圖為止!

//新增 輔助資料庫例項和資料庫

image

//連線到 輔助伺服器例項和輔助資料庫(這裡我不知道為什麼就是檢測不到,最後用sa使用者連線的輔助伺服器SQL server也可以同步)

image

//輔助資料庫設定--->初始化輔助資料庫(2012這裡都是預設的就是,不用專門設定)

注意,這裡先看下一步再往裡寫

image

注:

  這樣檢視上面所需的輔助伺服器CXSlaveDB中資料庫的 資料檔案和日誌檔案 的資料夾的路徑

image

//輔助資料庫設定--->複製檔案

image

//在上圖中 擊點  計劃(E) … 則彈出如下圖所示,設定從資料庫還原日誌的計劃任務:

image

//輔助資料庫設定--->還原事務日誌

image

//在上圖中 擊點  計劃(E) … 則彈出如下圖所示,設定從資料庫還原日誌的計劃任務:

image

//將配置資訊匯出到檔案(導不導都行)

image

//在下圖中點選  確定 後,一目瞭然了!

image

三、驗證SQL  Server 2012 主從資料庫是否同步

1. 我們去從伺服器CXSlaveDB看看是否有Northwind資料庫,由下圖所示,可見成功了!

image

2. 現在我們去主資料庫伺服器CXMasterDB中Northwind資料庫新增如下圖所示的表:

//建立名為 僱員通訊錄

image

//重新整理下,就可見到 dbo.僱員通訊錄 ,如下圖所示:

image

3. 現在我們去從資料庫伺服器CXSlaveDB的Northwind資料庫是否有表dbo.僱員通訊錄,如下圖所示:

image

思考:

     下面我們到主資料庫伺服器CXMasterDB的Northwind資料庫中,刪除表dbo.僱員通訊錄

看看從資料庫CXSlaveDB的Northwind資料庫中的表dbo.僱員通訊錄,是否也被刪除了?

附:

1. 如何刪除Northwind(備用 / 只讀)資料庫

image

//在資料庫屬性 –-> 選項 ---> 狀態 --->資料庫為只讀 修改為 False即可!能刪除嗎???

image