码迷,mamicode.com
首页 > 数据库 > 详细

SQL server 2008 r2 镜像配置

时间:2018-07-25 17:44:44      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:模式   镜像服务   str   准备   ati   over   名称   win   ror   

准备条件
  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 镜像配置

标签:模式   镜像服务   str   准备   ati   over   名称   win   ror   

原文地址:http://blog.51cto.com/2765034/2150097

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!