SQL server 2008 r2 鏡像配置

準備條件

  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.服務器相關設置算法

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

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

  1. 建立數據庫主密鑰sql

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

二、建立證書並用主密鑰加密數據庫

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

三、建立端點(也就是監聽)服務器

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使用相同的方法,×××名,建立端點

四、備份證書ide

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

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

    RepA 和 RepB 的Certifications文件夾上都要有全部服務器的證書,能夠經過共享文件夾複製

五、建立用戶和登陸帳號加密

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

    在RepB上使用相同的方法給RepB建立用戶和登陸帳號,注意更更名稱

六、使用證書受權用戶code

建立一個新的證書,並用從夥伴服務器複製來的證書導入,而後受權上面建立的帳號
    CREATE CERTIFICATE Host_B_Cert
    AUTHORIZATION Host_B_User
    FROM FILE = 'C:\Certifications\Host_B_Cert.cer';

    在RepB上使用一樣的操做,注意更更名稱

七、登陸帳號受權訪問端口server

GRANT CONNECT ON ENDPOINT::EDP_Mirror TO Host_B_Login;

    在 RepB上使用一樣的操做,注意更更名稱

八、備份還原數據庫it

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

九、啓動鏡像io

注意順序,如今RepB上執行
    ALTER DATABASE MirrorDB SET
    PARTNER = 'TCP://RepA:5022';
    GO

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

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

配置見證服務器

一、與RepA和RepB相似配置見證服務器的主密鑰證書,端點,以及受權。並複製證書,保證每臺服務器都有三臺服務器的證書

二、在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

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

ALTER DATABASE MirrorDB SET WITNESS = 'TCP://win7:5022'
相關文章
相關標籤/搜索