数据库镜像一般在域下做,如果没有在域中则需要进行证书认证

数据库镜像可以使用两种类型的传输安全性:Windows 身份验证或基于证书的身份验证,就证书验证的镜像实现做个学习笔记。

配置环境:
HOST_A : Windows Server 2003Standard Edition(SP2)+SQL Server 2005 Enterprise Edition(SP2 9.00.3042.00)
HOST_B : Windows Server 2003Standard Edition(SP2)+SQL Server 2005 Enterprise Edition(SP2 9.00.3042.00)

主体
HOST_A
镜像
HOST_B

一. 在主体数据库HOST_A 上:
USE master;

--a.创建数据库主密钥
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'madefuckgan!';
GO
--可用以下语句查看生成的数据库主密钥
--SELECT * fromsys.symmetric_keys ;

--b.创建一个证书
CREATE CERTIFICATE DB_HOST_A_cert
 WITH SUBJECT = 'DB_HOST_A certificate for database mirroring' ,
 START_DATE = '12/31/2007' ,
 EXPIRY_DATE = '12/31/2010'
GO
--SELECT * FROM sys.certificates;

--c.创建镜像端点
CREATE ENDPOINT DB_MIRR
 STATE = STARTED
 AS TCP (
LISTENER_PORT=5021
, LISTENER_IP = ALL
 )
 FOR DATABASE_MIRRORING (
AUTHENTICATION = CERTIFICATE DB_HOST_A_cert
, ENCRYPTION = REQUIRED ALGORITHM RC4
, ROLE = ALL
 );
GO
--SELECT * FROM sys.tcp_endpoints
--SELECT * FROM sys.database_mirroring_endpoints;

--d.备份证书
BACKUP CERTIFICATE DB_HOST_A_cert TO FILE = 'D:\db_A_run.cer';
GO

--e.创建登入

CREATE LOGIN TO_HOST_A_login WITH PASSWORD = 'openthedoorHostA!';
GO

CREATE USER TO_HOST_A_user FOR LOGIN TO_HOST_A_login;
GO

二. 在镜像数据库HOST_B 上:
USE master;

--1.创建数据库主密钥
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'madefuckgan#2!';
GO
--可用以下语句查看生成的数据库主密钥
--SELECT * fromsys.symmetric_keys ;

--2.创建一个证书
CREATE CERTIFICATE DB_HOST_B_cert
 WITH SUBJECT = 'DB_HOST_B certificate for database mirroring' ,
 START_DATE = '12/31/2007' ,
 EXPIRY_DATE = '12/31/2010'
GO
--SELECT * FROM sys.certificates;

--3.创建镜像端点
CREATE ENDPOINT DB_MIRR
 STATE = STARTED
 AS TCP (
LISTENER_PORT=5022
, LISTENER_IP = ALL
 )
 FOR DATABASE_MIRRORING (
AUTHENTICATION = CERTIFICATE DB_HOST_B_cert
, ENCRYPTION = REQUIRED ALGORITHM RC4
, ROLE = ALL
 );
GO
--SELECT * FROM sys.tcp_endpoints
--SELECT * FROM sys.database_mirroring_endpoints;

--4.备份证书
BACKUP CERTIFICATE DB_HOST_B_cert TO FILE = 'D:\db_B_run.cer';
GO

--5.创建登入

CREATE LOGIN TO_HOST_B_login WITH PASSWORD = 'openthedoorHostB!';
GO

CREATE USER TO_HOST_B_user FOR LOGIN TO_HOST_B_login;
GO

三.回到主体数据库HOST_A 上:
f.从HOST_B上D:\下拷贝备份出来的证书db_B_run.cer到HOST_A的D:\下
g.--还原B证书到HOST_A上;
use master
CREATE CERTIFICATE DB_HOST_B_cert
 AUTHORIZATION TO_HOST_A_user
 FROM FILE = 'D:\db_B_run.cer'
GO
--赋权
--Grant CONNECT permission on the login for the remote mirroring endpoint.
GRANT CONNECT ON ENDPOINT::DB_MIRR TO [TO_HOST_A_login];
GO
h.
CREATE DATABASE MIRR_TEST
--数据库镜像必须更改为使用完整恢复模式
ALTER DATABASE MIRR_TEST
 SET RECOVERY FULL;
GO
--备份数据库
BACKUP DATABASE MIRR_TEST
TO DISK = N'D:\MT.BAK'
WITH FORMAT
GO
--备份日志
--!笔者试过只备份数据库不成功,一定要备份日志.
BACKUP LOG MIRR_TEST
TO DISK = N'D:\MT.BAK'
GO
四.在镜像数据库HOST_B 上:
6.从HOST_A上D:\下拷贝备份出来的证书db_A_run.cer到HOST_B的D:\下
7.
--还原A证书到HOST_B上;
use master
CREATE CERTIFICATE DB_HOST_A_cert
 AUTHORIZATION TO_HOST_B_user
 FROM FILE = 'D:\db_A_run.cer'
GO
--赋权
--Grant CONNECT permission on the login for the remote mirroring endpoint.
GRANT CONNECT ON ENDPOINT::DB_MIRR TO [TO_HOST_B_login];
GO
8.
--拷贝从HOST_A备份的数据库备份文件到D:\.
--还原数据库及日志
RESTORE DATABASE MIRR_TEST
FROM DISK = N'D:\MT.BAK'
WITH NORECOVERY ;
GO
RESTORE LOG MIRR_TEST
FROM DISK = N'D:\NGT.BAK'
WITH FILE=2, NORECOVERY;
GO
五.设置伙伴(自动启动镜像)
9.在HOST_B
ALTER DATABASE MIRR_TEST
SET PARTNER = 'TCP://HOST_A:5021';
GO

i.在HOST_A
ALTER DATABASE MIRR_TEST
SET PARTNER = 'TCP://HOST_B:5022';
GO

六. OVER!
PS: 如果HOST_A、HOST_B是在公网上则需分别在%WINDOWS%\system32\drivers\etc\hosts添加解析。

转载于:https://www.cnblogs.com/yxbsmx/articles/1438678.html

SQL 2005镜像操作证书认证(非域方式)相关推荐

  1. SQL 2005镜像手册(不含见证服务器)

    一.环境配置 l         环境:Window2003 企业版+ SQL Server2005开发版 l         在服务器A上面安装一个数据库实例ServiceA,在服务器B上面安装一个 ...

  2. 第三篇——第二部分——第四文 配置SQL Server镜像——非域环境

    原文: 第三篇--第二部分--第四文 配置SQL Server镜像--非域环境 本文为非域环境搭建镜像演示,对于域环境搭建,可参照上文:http://blog.csdn.net/dba_huangzj ...

  3. SQL SERVER非域环境搭建镜像

    本文将使用非域环境来搭建镜像,同样,先按照不带见证服务器的高安全模式(同步)的方式搭建,然后 演示异步模式,最后会演示带有见证服务器的高安全模式. 准备条件 服务器 服务器角色 机器名/实例名 版本 ...

  4. 非域环境下搭建文件服务器,非域环境下SQL Server搭建Mirror(镜像)的详细步骤...

    原标题:非域环境下SQL Server搭建Mirror(镜像)的详细步骤 1.测试验证环境 服务器角色 机器名 IP SQL Server Ver 主体服务器 WIN-TestDB4O 172.83. ...

  5. 非域环境下使用证书部署数据库(SqlServer2008R2)镜像

    非域环境下使用证书部署数据库(SqlServer2008R2)镜像 前言 部署数据库镜像一般有两种方式域环境下部署http://liulike.blog.51cto.com/1355103/33918 ...

  6. SQL SERVER 2005镜像配置(包含见证服务器)

    镜像简介 重要说明:保持数据库镜像运行.如果您关闭数据库镜像,则必须执行完全备份并还原数据库以重建数据库镜像. 一. 简介 SQL SERVER 2005镜像基于日志同步,可良好实现故障转移.每个数据 ...

  7. 第三篇——第二部分——第三文 配置SQL Server镜像——域环境

    原文: 第三篇--第二部分--第三文 配置SQL Server镜像--域环境 原文出处:http://blog.csdn.net/dba_huangzj/article/details/2890450 ...

  8. SQL Server 2005 镜像构建说明(转载)

    一. 镜像简介 1. 简介 数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中.镜像不能直接访问;它只用在错误恢复的情 ...

  9. 实战SQL Server 2005镜像配置全过程

    SQL Server 2005镜像配置基本概念 我理解的SQL Server 2005镜像配置实际上就是由三个服务器(也可以是同一服务器的三个 SQL 实例)组成的一个保证数据的环境,分别是:主服务器 ...

最新文章

  1. http响应头里没有或者有content-length的几种可能性
  2. 计算机高效课堂建设,打造职业学校计算机高效课堂.doc
  3. #if/#else/#endif
  4. oracle常用表查询,ORACLE EBS常用表及查询语句(最终整理版)
  5. 画春天的景色计算机教案,大班绘画春天来了教案
  6. Laravel -- Excel 导入(import) (v2.1.0)
  7. 程序员最想要十八般武艺俱全的“保姆型”项目经理!
  8. ASP.NET MVC:多模板支持
  9. Officescan如何藉由修改用戶端機碼以開啟常用功能
  10. fanuc机器人试题_工业机器人知识要点解析(FANUC机器人)
  11. passing 'const xxx ' as 'this' argument discards qualifiers [-fpermissive]
  12. iOS系统自带指纹验证的使用
  13. VirtualBox中虚拟机的克隆方法
  14. Canvas之translate、scale、rotate、skew
  15. 拼多多虚拟资源、虚拟店铺教程
  16. SpringBoot 中dependencies飘红
  17. 使用Python对xlsx,csv, txt格式文件进行读、写并绘图
  18. jquery 自动表单赋值
  19. 集合——Collections
  20. 牛客每日练习----​​​​​​​最长回文,Alice和Bob赌糖果,N阶汉诺塔变形

热门文章

  1. halcon介绍以及与opencv比较
  2. 电影点评系统论文java_电影评论网站系统毕业设计(论文)论文参考.doc
  3. 雅虎地图与谷歌地图坐标_打开Yahoo! 将与Google玩得很好,不竞争
  4. [蓝桥杯][2013年第四届真题]带分数(DFS,next_permutation两种方法)
  5. Window11 alt+tab键失效
  6. 正点原子LCD转接板与最小系统板的连接
  7. RSD的规则法遥感数据分类
  8. 海南大学考研人,你真的马上就要上岸了
  9. Python Matplotlib绘图的正确打开方式
  10. linux安装nginx详细步骤和make编译报错问题(保姆级)