-- ===========================================   
-- 无论是主体服务器、镜像服务器, 还是见证服务器   
-- 除特别说明外,均需要保证下面的操作在master库中执行   
USE master   
GO   
 
-- ===========================================   
--(1)  建立镜像主体数据库   
-- 此操作主体服务器上执行   
-- a. 建立测试数据库   
CREATE DATABASE DB_Mirror   
ON(   
NAME = DB_Mirror_DATA,   
FILENAME = N'C:\DB_Mirror.mdf'   
)   
LOG ON(   
NAME = DB_Mirror_LOG,   
FILENAME = N'C:\DB_Mirror.ldf'   
)   
ALTER DATABASE DB_Mirror SET   
RECOVERY FULL   
GO   
 
-- b. 完全备份   
BACKUP DATABASE DB_Mirror   
TO DISK = N'C:\DB_Mirror.bak'   
WITH FORMAT   
GO   
 
 
-- ===========================================   
--(2)  初始化镜像主体数据库   
-- 此操作镜像服务器上执行   
-- 假设主体数据库的完全备份已经复制到 c:\DB_Mirror.bak   
RESTORE DATABASE DB_Mirror   
FROM DISK = N'C:\DB_Mirror.bak'   
WITH REPLACE   
, NORECOVERY   
-- 如果镜像数据库文件要放在指定位置, 则启用下面的 Move 选项   
-- , MOVE 'DB_Mirror_DATA' TO N'C:\DB_Mirror.mdf'   
-- , MOVE 'DB_Mirror_LOG' TO N'C:\DB_Mirror.ldf'   
GO   
 
 
-- ===========================================   
--(3)  主体服务器上的数据库镜像端点及身份验证用的证书   
-- 此操作主体服务器上执行   
-- a. 用于数据库镜像端点身份验证的证书   
IF NOT EXISTS(  -- 使用数据库主密钥加密证书   
SELECT * FROM sys.symmetric_keys   
WHERE name = N'##MS_DatabaseMasterKey##')   
CREATE MASTER KEY   
ENCRYPTION BY PASSWORD = N'abc.123'   
 
CREATE CERTIFICATE CT_Mirror_SrvA   
WITH   
SUBJECT = N'certificate for database mirror',   
START_DATE = '19990101',   
EXPIRY_DATE = '99991231'   
GO   
 
-- b. 备份证书, 以便在与此端点通信的另一端建立此证书   
BACKUP CERTIFICATE CT_Mirror_SrvA   
TO FILE = 'C:\CT_Mirror_SrvA.cer'   
GO   
 
-- c. 数据库镜像端点   
CREATE ENDPOINT EDP_Mirror   
STATE = STARTED   
AS TCP(   
LISTENER_PORT = 5022,  -- 镜像端点使用的通信端口   
LISTENER_IP = ALL)    -- 侦听的IP地址   
    FOR DATABASE_MIRRORING(   
AUTHENTICATION = CERTIFICATE CT_Mirror_SrvA, -- 证书身份验证   
ENCRYPTION = DISABLED,                      -- 不对传输的数据加密,如果需要加密,可以配置为 SUPPORTED 或 REQUIRED, 并可选择加密算法   
ROLE = ALL)                                  -- 端点支持所有的数据库镜像角色, 也可以设置为 WITNESS(仅见证服务器),或 PARTNER(仅镜像伙伴)   
GO   
 
 
-- ===========================================   
--(4)  镜像服务器上的数据库镜像端点及身份验证用的证书   
-- 此操作镜像服务器上执行   
-- a. 用于数据库镜像端点身份验证的证书   
IF NOT EXISTS(  -- 使用数据库主密钥加密证书   
SELECT * FROM sys.symmetric_keys   
WHERE name = N'##MS_DatabaseMasterKey##')   
CREATE MASTER KEY   
ENCRYPTION BY PASSWORD = N'abc.123'   
 
CREATE CERTIFICATE CT_Mirror_SrvB   
WITH   
SUBJECT = N'certificate for database mirror',   
START_DATE = '19990101',   
EXPIRY_DATE = '99991231'   
GO   
 
-- b. 备份证书, 以便在与此端点通信的另一端建立此证书   
BACKUP CERTIFICATE CT_Mirror_SrvB   
TO FILE = 'C:\CT_Mirror_SrvB.cer'   
GO   
 
-- c. 数据库镜像端点   
CREATE ENDPOINT EDP_Mirror   
STATE = STARTED   
AS TCP(   
LISTENER_PORT = 5022,  -- 镜像端点使用的通信端口   
LISTENER_IP = ALL)    -- 侦听的IP地址   
    FOR DATABASE_MIRRORING(   
AUTHENTICATION = CERTIFICATE CT_Mirror_SrvB, -- 证书身份验证   
ENCRYPTION = DISABLED,                      -- 不对传输的数据加密,如果需要加密,可以配置为 SUPPORTED 或 REQUIRED, 并可选择加密算法   
ROLE = ALL)                                  -- 端点支持所有的数据库镜像角色, 也可以设置为 WITNESS(仅见证服务器),或 PARTNER(仅镜像伙伴)   
GO   
 
 
-- ===========================================   
--(5)  在镜像服务器上完成主体服务器数据库镜像端点的传输安全模式配置   
-- 此操作镜像服务器上执行   
-- a. 建立主体服务器上的证书(假设主体服务器上备份的证书已经复制到 C:\CT_Mirror_SrvA.cer)   
CREATE CERTIFICATE CT_Mirror_SrvA   
FROM FILE = 'C:\CT_Mirror_SrvA.cer'   
 
-- b. 建立登录   
CREATE LOGIN LOGIN_Mirror_SrvA   
FROM CERTIFICATE CT_Mirror_SrvA   
 
-- c. 授予对数据库镜像端点的 connect 权限   
GRANT CONNECT ON ENDPOINT::EDP_Mirror   
TO LOGIN_Mirror_SrvA   
GO   
 
 
-- ===========================================   
--(6)  在主体服务器上完成镜像服务器数据库镜像端点的传输安全模式配置   
-- 此操作主体服务器上执行   
-- a. 建立主体服务器上的证书(假设镜像服务器上备份的证书已经复制到 C:\CT_Mirror_SrvB.cer)   
CREATE CERTIFICATE CT_Mirror_SrvB   
FROM FILE = 'C:\CT_Mirror_SrvB.cer'   
 
-- b. 建立登录   
CREATE LOGIN LOGIN_Mirror_SrvB   
FROM CERTIFICATE CT_Mirror_SrvB   
 
-- c. 授予对数据库镜像端点的 connect 权限   
GRANT CONNECT ON ENDPOINT::EDP_Mirror   
TO LOGIN_Mirror_SrvB   
GO   
 
 
-- ===========================================   
--(7)  在镜像服务器上启用数据库镜像   
-- 此操作镜像服务器上执行   
ALTER DATABASE DB_Mirror SET   
PARTNER = 'TCP://SrvA:5022'   
GO   
 
 
-- ===========================================   
--(8)  在主体服务器上启用数据库镜像(默认为高安全性模式,所以不用进行模式设置)   
-- 此操作主体服务器上执行   
ALTER DATABASE DB_Mirror SET   
PARTNER = 'TCP://SrvB:5022'   
GO   
 
 
-- ===========================================   
--(9)  配置见证服务器   
-- 此操作在见证服务器上执行   
-- a. 完成见证服务器上数据库镜像端点的传输安全模式配置   
-- (a). 用于数据库镜像端点身份验证的证书   
IF NOT EXISTS(  -- 使用数据库主密钥加密证书   
SELECT * FROM sys.symmetric_keys   
WHERE name = N'##MS_DatabaseMasterKey##')   
CREATE MASTER KEY   
ENCRYPTION BY PASSWORD = N'abc.123'   
 
CREATE CERTIFICATE CT_Mirror_SrvWitness   
WITH   
SUBJECT = N'certificate for database mirror',   
START_DATE = '19990101',   
EXPIRY_DATE = '99991231'   
GO   
 
-- (b). 备份证书, 以便在与此端点通信的另一端建立此证书   
BACKUP CERTIFICATE CT_Mirror_SrvWitness   
TO FILE = 'C:\CT_Mirror_SrvWitness.cer'   
GO   
 
-- (c). 数据库镜像端点   
CREATE ENDPOINT EDP_Mirror   
STATE = STARTED   
AS TCP(   
LISTENER_PORT = 5022,  -- 镜像端点使用的通信端口   
LISTENER_IP = ALL)    -- 侦听的IP地址   
    FOR DATABASE_MIRRORING(   
AUTHENTICATION = CERTIFICATE CT_Mirror_SrvWitness, -- 证书身份验证   
ENCRYPTION = DISABLED,                            -- 不对传输的数据加密,如果需要加密,可以配置为 SUPPORTED 或 REQUIRED, 并可选择加密算法   
ROLE = ALL)                                        -- 端点支持所有的数据库镜像角色, 也可以设置为 WITNESS(仅见证服务器),或 PARTNER(仅镜像伙伴)   
GO   
 
-- b. 完成主体服务器上数据库镜像端点的传输安全模式配置   
-- (a). 建立主体服务器上的证书(假设主体服务器上备份的证书已经复制到 C:\CT_Mirror_SrvA.cer)   
CREATE CERTIFICATE CT_Mirror_SrvA   
FROM FILE = 'C:\CT_Mirror_SrvA.cer'   
 
-- (b). 建立登录   
CREATE LOGIN LOGIN_Mirror_SrvA   
FROM CERTIFICATE CT_Mirror_SrvA   
 
-- (c). 授予对数据库镜像端点的 connect 权限   
GRANT CONNECT ON ENDPOINT::EDP_Mirror   
TO LOGIN_Mirror_SrvA   
GO   
 
-- c. 完成镜像服务器上数据库镜像端点的传输安全模式配置   
-- (a). 建立镜像服务器上的证书(假设镜像服务器上备份的证书已经复制到 C:\CT_Mirror_SrvB.cer)   
CREATE CERTIFICATE CT_Mirror_SrvB   
FROM FILE = 'C:\CT_Mirror_SrvB.cer'   
 
-- (b). 建立登录   
CREATE LOGIN LOGIN_Mirror_SrvB   
FROM CERTIFICATE CT_Mirror_SrvB   
 
-- (c). 授予对数据库镜像端点的 connect 权限   
GRANT CONNECT ON ENDPOINT::EDP_Mirror   
TO LOGIN_Mirror_SrvB   
GO   
 
 
-- ===========================================   
--(10)  在镜像服务器上完成见证服务器数据库镜像端点的传输安全模式配置   
-- 此操作镜像服务器上执行   
-- a. 建立见证服务器上的证书(假设见证服务器上备份的证书已经复制到 C:\CT_Mirror_SrvWitness.cer)   
CREATE CERTIFICATE CT_Mirror_SrvWitness   
FROM FILE = 'C:\CT_Mirror_SrvWitness.cer'   
 
-- b. 建立登录   
CREATE LOGIN LOGIN_Mirror_SrvWitness   
FROM CERTIFICATE CT_Mirror_SrvWitness   
 
-- c. 授予对数据库镜像端点的 connect 权限   
GRANT CONNECT ON ENDPOINT::EDP_Mirror   
TO LOGIN_Mirror_SrvWitness   
GO   
 
 
-- ===========================================   
--(11)  在主体服务器上完成见证服务器数据库镜像端点的传输安全模式配置   
-- 此操作主体服务器上执行   
-- a. 建立见证服务器上的证书(假设见证服务器上备份的证书已经复制到 C:\CT_Mirror_SrvWitness.cer)   
CREATE CERTIFICATE CT_Mirror_SrvWitness   
FROM FILE = 'C:\CT_Mirror_SrvWitness.cer'   
 
-- b. 建立登录   
CREATE LOGIN LOGIN_Mirror_SrvWitness   
FROM CERTIFICATE CT_Mirror_SrvWitness   
 
-- c. 授予对数据库镜像端点的 connect 权限   
GRANT CONNECT ON ENDPOINT::EDP_Mirror   
TO LOGIN_Mirror_SrvWitness   
GO   
 
 
-- ===========================================   
--(12)  在主体服务器上为数据库镜像启用见证服务器   
-- 此操作主体服务器上执行   
ALTER DATABASE DB_Mirror SET   
WITNESS = 'TCP://SrvWitness:5022'   
GO

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/feng2375/archive/2009/02/16/3897056.aspx

sql2005镜像实现的更多相关文章

  1. SQL2005 镜像配置

    新添加了一台服务器,做原来服务器的备份机,用交叉线+双网卡配置了内网. 系统环境:Windows 2008 R2 数据库:SQL2005 SP3   设置镜像可以用证书和域两种情况,不过域设置的权限比 ...

  2. SQL server经典电子书、工具和视频教程汇总

    SQL server经典电子书.工具和视频教程汇总 SQL server经典电子书.工具和视频教程汇总 SQL Server是高校计算机专业的一门必修课程,同时众多企业采用SQL Server作为数据 ...

  3. 基于证书的MS SQL2005数据库镜像搭建

    一.准备工作: 3台服务器同版本,硬盘分区大小相同,安装相同版本数据库软件. host中分别标注3台服务器IP和主机名称. 主体服务器上创建数据库,并进行完整备份数据库和数据库事务. 拷贝备份文件给镜 ...

  4. paip.sql2k,sql2005,sql2008,sql2008 r2,SQL2012以及EXPRESS版本的区别

    paip.sql2k,sql2005,sql2008,sql2008 r2,SQL2012以及EXPRESS版本的区别 作者Attilax ,  EMAIL:1466519819@qq.com  来源 ...

  5. win10家庭版系统安装SQL2005

    安装sql2005花了两天的时间,现在总结下,刚开始不知道win10家庭版系统没有本地用户和组的(详细说明 https://www.kafan.cn/A/5vz17o5jne.html) 一定要升级到 ...

  6. win7(windows 7)系统下安装SQL2005(SQL Server 2005)图文教程( Win7 SQL Server2005 安装教程)

    win7(windows 7)系统下安装SQL2005(SQL Server 2005)图文教程 由于工作需要,今天要在电脑上安装SQL Server 2005.以往的项目都是使用Oracle,MS的 ...

  7. NuGet镜像上线试运行

    为解决国内访问NuGet服务器速度不稳定的问题,我们用阿里云服务器搭建了一个NuGet镜像,目前已上线试运行. 使用NuGet镜像源的方法如下: 1)NuGet镜像源地址:https://nuget. ...

  8. SQL Server镜像自动生成脚本

    SQL Server镜像自动生成脚本 镜像的搭建非常繁琐,花了一点时间写了这个脚本,方便大家搭建镜像 执行完这个镜像脚本之后,最好在每台机器都绑定一下hosts文件,不然的话,镜像可能会不work 1 ...

  9. Android SDK 在线更新镜像服务器资源

    本文转自:http://blog.kuoruan.com/24.html.感谢原作者. 什么是Android SDK SDK:(software development kit)软件开发工具包.被软件 ...

随机推荐

  1. Android模拟器disconnected问题

    具体原因不明,偶尔会出现 window -> Show Views -> device -> view menu -> Reset adb  一般可以解决该问题

  2. Java多线程 - 线程状态

    转自: http://www.cnblogs.com/lwbqqyumidi/p/3804883.html 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的 ...

  3. 好网站:字体转换器在线转换 http://www.diyiziti.com/

    偶然间发现这个网站,它可以将文字设置字体并做成图片,也有很多好的字体下载如瘦金体. 下载下来的ttf文件在win7里可以右键点击install,在vista和xp里可以直接拷贝到window\font ...

  4. http://www.cnblogs.com/dumuqiao/p/3654702.html?utm_source=tuicool&utm_medium=referral

    http://www.cnblogs.com/dumuqiao/p/3654702.html?utm_source=tuicool&utm_medium=referral

  5. 花式玩转社交App,百变应用场景

    活动概况 时间:2016年03月20日13:30-16:30 地点:深圳腾讯大厦2楼多功能厅(南山区科技园科技中一路) 主办:APICloud.腾讯云分析和信鸽.云之讯 报名链接:http://act ...

  6. angularjs 获取地址传参

    .controller('CityCtrl', function ($scope, $location,$ionicModal) { 注入location服务 $scope.name = $locat ...

  7. yum报错: Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again

    在Centos 5.x或6.x上安装RHEL EPEL Repo repository,资源库,源的意思.RHEL EPEL(Extra Packages for Enterprise Linux)  ...

  8. Eclipse/Myeclipse 开发项目技巧

    Eclipse/Myeclipse 开发项目 编程的本质: 把现实生活中的业务逻辑用代码实现. eclipse 是一个开放源代码.基于Java的可扩展开发平台. (最初主要用来Java语言开发,但目前 ...

  9. Ajax.ActionLink()方法的使用

    第一句话都会这么去写:程序猿就是苦逼,除了开发还要会写博文!哎,今天就和大家一起讨论下Ajax的辅助方法ActionLink的使用,如果有讲的不好的地方或错的地方,请大家务必扔板砖,要投准哦,砸死我算 ...

  10. Java基础之创建窗口——向窗口中添加菜单(Sketcher)

    控制台程序. JMenuBar对象表示放在窗口顶部的菜单栏.可以为JMenuBar对象添加JMenu或JMenuItem对象,它们都显示在菜单栏上.JMenu对象是带有标签的菜单,单击就可以显示一列菜 ...