-- ===========================================   
-- 无论是主体服务器、镜像服务器, 还是见证服务器   
-- 除特别说明外,均需要保证下面的操作在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 获得view的宽和高

     转自:http://blog.csdn.net/yangdeli888/article/details/25405263 Android 获得view的宽和高 分类: android 技术点项目20 ...

  2. CFBundleVersion与CFBundleShortVersionString

    CFBundleVersion,标识(发布或未发布)的内部版本号.这是一个单调增加的字符串,包括一个或多个时期分隔的整数. CFBundleShortVersionString  标识应用程序的发布版 ...

  3. COLUMN_VALUE Pseudocolumn

    With below three situation, we can use the pseudocolumn column_value to refer the column value. an X ...

  4. MySQL学习笔记——复制的实现原理

    1.三个线程 MYSQL复制是从主服务器复制到一个或多个从服务器的异步过程,在主服务器与从服务器之间实现整个复制过程主要由三个线程来实现,其中一个线程I\O在主服务器器端,另两个线程(SQL线程和I\ ...

  5. [BS-08]注意Xcode自动提示好用但极易出错,务必看清方法的名称

    今日在写一个UIBarButtonItem的分类时,在Xcode自动提示时,因未仔细查看,错将需要用到setBackgroundImage的地方,选择成setImage,结果导致button的boun ...

  6. Linux 基本收集

    ifconfig eth0 192.168.1.223 切换到root账号开始是$符号输入su输入root密码转换成# 就变成了root账号 dr 查看盘符ls /etc/ 查看etc文件夹下面的文件 ...

  7. 第九篇 Integration Services:控制流任务错误

    本篇文章是Integration Services系列的第九篇,详细内容请参考原文. 简介在前面三篇文章,我们创建了一个新的SSIS包,学习了脚本任务和优先约束,并检查包的MaxConcurrentE ...

  8. RAC和ASM环境下修改控制文件control file

    1,目前控制文件只有一个,为了安全性,增加到3个 SQL> select name from v$controlfile; NAME ------------------------------ ...

  9. html中表格table的内容居中显示

    align——表示左右居中——left,center,right valign——控制上下居中——left,center,right <td> 标签内加入:  vertical-align ...

  10. npm 介绍

    安装NPM NPM的全称是Node Package Manager,如果你熟悉ruby的gem,Python的PyPL.setuptools,PHP的pear,那么你就知道NPM的作用是什么了.没 错 ...