• SQL Server的数据库镜像实施笔记(2)


      镜像数据库

    /***********************************************
    在镜像服务器执行此脚本
    ***********************************************/
    USE master;
    --DROP MASTER KEY
    CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'password';
    GO
    --为 HOST_B 服务器实例制作一个证书。
    --DROP CERTIFICATE HOST_B_cert
    CREATE CERTIFICATE HOST_B_cert 
       WITH SUBJECT = 'HOST_B certificate for database mirroring',START_DATE  = '01/01/2009';
    GO
    --在 HOST_B 中为服务器实例创建一个镜像端点。
    --DROP ENDPOINT Endpoint_Mirroring
    CREATE ENDPOINT Endpoint_Mirroring
       STATE = STARTED
       AS TCP (
          LISTENER_PORT=5022
          , LISTENER_IP = ALL
       ) 
       FOR DATABASE_MIRRORING ( 
          AUTHENTICATION = CERTIFICATE HOST_B_cert
          , ENCRYPTION = REQUIRED ALGORITHM AES
          , ROLE = PARTNER
       );
    GO
    --备份 HOST_B 证书,将 C:HOST_B_cert.cer 复制到 HOST_AHOST_C。
    BACKUP CERTIFICATE HOST_B_cert TO FILE = 'e:HOST_B_cert.cer';
    GO 

    --为入站连接配置 Host_B
    --在 HOST_B 上为 HOST_A 创建一个登录名。
    USE master;
    --DROP LOGIN HOST_A_login
    CREATE LOGIN HOST_A_login WITH PASSWORD = 'password';
    GO
    --创建一个使用该登录名的用户。
    --DROP USER HOST_A_user
    CREATE USER HOST_A_user FOR LOGIN HOST_A_login;
    GO
    --使证书与该用户关联。
    --DROP CERTIFICATE HOST_A_cert
    CREATE CERTIFICATE HOST_A_cert
       AUTHORIZATION HOST_A_user
       FROM FILE = 'e:HOST_A_cert.cer'
    GO

    --授予对远程镜像端点的登录名的 CONNECT 权限。 
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_A_login];
    GO

    --在 HOST_B 上为 HOST_C 创建一个登录名。
    USE master;
    --DROP LOGIN HOST_C_login
    CREATE LOGIN HOST_C_login WITH PASSWORD = 'password';
    GO

    --创建一个使用该登录名的用户。
    --DROP USER HOST_C_user 
    CREATE USER HOST_C_user FOR LOGIN HOST_C_login;
    GO
    --使证书与该用户关联。
    --DROP CERTIFICATE HOST_C_cert
    CREATE CERTIFICATE HOST_C_cert
       AUTHORIZATION HOST_C_user
       FROM FILE = 'e:HOST_C_cert.cer'
    GO

    --授予对远程镜像端点的登录名的 CONNECT 权限。
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_C_login];
    GO

    --在 HOST_B 上为 HOST_B 创建一个登录名。 
    USE master;
    --DROP LOGIN HOST_B_login
    CREATE LOGIN HOST_B_login WITH PASSWORD = 'password';
    GO
    --创建一个使用该登录名的用户。
    --DROP USER HOST_B_user
    CREATE USER HOST_B_user FOR CERTIFICATE HOST_B_cert;
    GO
    --授予对远程镜像端点的登录名的 CONNECT 权限。
    GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_B_login];
    GO
    --在 HOST_B 的镜像服务器实例上,将 HOST_A 上的服务器实例设置为伙伴(使其成为初始主体服务器实例)。
    ALTER DATABASE crm 
        SET PARTNER = 'TCP://192.168.1.203:5022';
    GO

  • 相关阅读:
    Python之while循环
    Python之分支语句
    Python之变量
    Python开挂的吧!
    xshell 连接 ubuntu 16.04报错
    js中的script标签
    javascript中的事件学习总结
    【JAVAWEB学习笔记】04_JavaScript
    【JAVAWEB学习笔记】03_JavaScript
    【JAVAWEB学习笔记】02_HTML&CSS
  • 原文地址:https://www.cnblogs.com/xgbzsc/p/2694070.html
Copyright © 2020-2023  润新知