1. 程式人生 > >SQL server 2008 r2 鏡像配置

SQL server 2008 r2 鏡像配置

code backup thead ESS 文件 加密算 ror data witness

準備條件
  1. 服務器規劃
服務器角色 機器名/角色名 軟件 IP
主體服務器 RepA sql server 2008 r2 192.168.0.10
鏡像服務器 RepB sql server 2008 r2 192.168.0.20
見證服務器 win7 sql server 2008 r2 192.168.0.30

2.服務器相關設置

1、創建文件夾
     Certifications 用來存放認證證書
     ShareFolders 用來存放共享文件,方便服務器之間傳遞文件
2、保證主體服務器與鏡像服務器的數據文件夾路徑相同
3、保證數據庫的恢復模式為FULL

使用證書配置鏡像,並備份RepA的數據庫,還原到RepB上

  1. 創建數據庫主密鑰

    USE master;
    GO
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = ‘Pa$$w0rd‘;
    /*
    刪除主密鑰
    USE master;
    DROP MASTER KEY
    
    使用相同方式在RepB闖將主密鑰

2、創建證書並用主密鑰加密

    USE master;
    GO
    CREATE CERTIFICATE Host_A_Cert
    WITH Subject = ‘Host_C Certificate‘,
    Expiry_Date = ‘99991231‘
  /*
    刪除證書
    USE master;
    DROP CERTIFICATE HOST_A_Cert

    在RepB使用同樣的方法創建證書HOST_B_Cert

3、創建端點(也就是監聽)

    CREATE ENDPOINT EDP_Mirror
    STATE = STARTED 
    AS TCP(
    LISTENER_PORT = 5022,  -- 鏡像端點使用的通信端口
    LISTENER_IP = ALL)     -- 偵聽的IP地址
            FOR DATABASE_MIRRORING(
    AUTHENTICATION = CERTIFICATE Host_A_Cert, -- 證書身份驗證
    ENCRYPTION = DISABLED,                       -- 不對傳輸的數據加密,如果需要加密,可以配置為 SUPPORTED 或 REQUIRED, 並可選擇加密算法
    ROLE = ALL)                                  -- 端點支持所有的數據庫鏡像角色, 也可以設置為 WITNESS(僅見證服務器),或 PARTNER(僅鏡像夥伴)

    在RepB使用相同的方法,×××名,創建端點

4、備份證書

    BACKUP CERTIFICATE Host_A_Cert
    TO FILE = ‘C:\ShareFolders\Host_A_Cert.cer‘;

    在RepB上執行相同的操作,備份Host_B_Cert

    RepA 和 RepB 的Certifications文件夾上都要有所有服務器的證書,可以通過共享文件夾復制

5、創建用戶和登錄賬號

    創建登錄賬號給鏡像服務器
    USE master;
    CREATE LOGIN Host_B_Login WITH PASSWORD = ‘Pa$$w0rd‘;
    創建用戶並映射到登錄賬號上
    CREATE USER Host_B_User For Login Host_B_Login;

    在RepB上使用相同的方法給RepB創建用戶和登錄賬號,註意更改名稱

6、使用證書授權用戶

    創建一個新的證書,並用從夥伴服務器復制來的證書導入,然後授權上面創建的賬號
    CREATE CERTIFICATE Host_B_Cert
    AUTHORIZATION Host_B_User
    FROM FILE = ‘C:\Certifications\Host_B_Cert.cer‘;

    在RepB上使用同樣的操作,註意更改名稱

7、登錄賬號授權訪問端口

    GRANT CONNECT ON ENDPOINT::EDP_Mirror TO Host_B_Login;

    在 RepB上使用同樣的操作,註意更改名稱

8、備份還原數據庫

完整備份RepA上的數據庫,並以Norecovery選項還原到RepB(使用還原文件和文件組)

9、啟動鏡像

    註意順序,現在RepB上執行
    ALTER DATABASE MirrorDB SET
    PARTNER = ‘TCP://RepA:5022‘;
    GO

    然後在RepA上執行
    ALTER DATABASE MirrorDB SET
    PARTNER = ‘TCP://RepB:5022‘;
    GO 

    完畢,接下來是配置見證服務器

配置見證服務器

1、與RepA和RepB類似配置見證服務器的主密鑰證書,端點,以及授權。並復制證書,保證每臺服務器都有三臺服務器的證書

2、在RepA和RepB上執行下面語句,為見證服務器創建端點權限

USE master;
CREATE LOGIN Host_C_Login WITH PASSWORD = ‘Pa$$w0rd‘;
GO
CREATE USER Host_C_User For Login Host_C_Login;
GO

CREATE CERTIFICATE Host_C_Cert
AUTHORIZATION Host_C_User
FROM FILE = ‘C:\Certifications\Host_C_Cert.cer‘;
GO

GRANT CONNECT ON ENDPOINT::EDP_Mirror TO Host_C_Login;
GO

3、主體服務器RepA加入見證服務器

    ALTER DATABASE MirrorDB SET WITNESS = ‘TCP://win7:5022‘

SQL server 2008 r2 鏡像配置