1. 配制环境

OS:Win7    DB:SQL Server R2

2. 基本配制

1.      开启sqlServer服务如下图-1

图-1

2.      开启sqlServer的tcp/ip协议,在Start -> program -> sqlServerR2 -> ConfigTool -> ConfigManagement,如下图-2

 
 

图-2

注:开启此服务后,需要重启sqlServer服务才能生效。

3.      在需要做备份的机器(主、从和可选的见证)上建立相同的登录用户名密码。

4.      打开镜像用到的5022端口。在win窗口中输入控制面板\系统和安全\Windows 防火墙,在弹出的窗口中点击[高级设置],在入站和出站规则中加入5022端口。

5.      开启数据库RemoteDacEnabled属性。右键点击[数据库实例] - > 选择方面,在弹出的窗口中选择[外围应用配制器] 把RemoteDacEnabled属性设置为true。如图-3

图-3

6.      在三台机器上建立同一个登录名和密码

点击数据库实例的下面的安全性,右键点击新建登录名,在三台机器上建相同的登录名和密码,主要是为了应用程序在连接数据中使用。

3.备份还原数据库

将主服务器中的数据库完全备份与日志备份到同一目录同一文件中。右键[数据库名称] -> 点击[任务],选择备份,先做完全备份,再做日志备份。在备库中还原主库的备份内容。右键[数据库名称] ->点击[任务],选择还原。如图-4

图-4

4. 开始热备

实现互通可以使用域或证书来实现,考虑实现的简单,以下选取证书的方式实现。注意:实现“主备数据库实例互通”的操作只需要做一次,例如为了将两个 SQL Server 2008的实例中的3个数据库建成镜像关系,则只需要做一次以下操作就可以了;或者这样理解:每一对主备实例(不是数据库)做一次互通。

1、创建证书(主备可并行执行)

--主机执行:

USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD = 'masterWord';
CREATE CERTIFICATE HOST_pri_cert WITH SUBJECT = 'HOST_primary certificate' , 
START_DATE = '01/11/2011', EXPIRY_DATE = '01/11/2013';

--备机执行:

USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD ='masterWord';
CREATE CERTIFICATE HOST_min_cert WITH SUBJECT ='HOST_minor certificate' , 
START_DATE = '01/11/2011', EXPIRY_DATE = '01/11/2013';
 
--见证服务器执行
 
USE master;
CREATE MASTER KEY ENCRYPTION BY PASSWORD ='masterWord';
CREATE CERTIFICATE HOST_pro_cert WITH SUBJECT = 'HOST_Witness certificate' , 
START_DATE = '01/11/2011', EXPIRY_DATE = '01/11/2013';
 
 
 

2、创建连接的端点(主备可并行执行)

--主机执行:

CREATE ENDPOINT Endpoint_Mirroring 
STATE = STARTED 
AS 
TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) 
FOR 
DATABASE_MIRRORING 
( AUTHENTICATION = CERTIFICATE HOST_pri_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL );

--备机执行:

CREATE ENDPOINT Endpoint_Mirroring 
STATE = STARTED 
AS 
TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) 
FOR 
DATABASE_MIRRORING 
 ( AUTHENTICATION = CERTIFICATE HOST_min_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL )

--见证服务器上执行

CREATE ENDPOINT Endpoint_Mirroring 
STATE = STARTED 
AS 
TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) 
FOR 
DATABASE_MIRRORING 
 ( AUTHENTICATION = CERTIFICATE HOST_pro_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL )

3、备份证书以备建立互联(主备可并行执行)

--主机执行:

BACKUP CERTIFICATE HOST_pri_cert TO FILE = 'D:\HOST_pri_cert.cer';

--备机执行:

BACKUP CERTIFICATE HOST_min_cert TO FILE = 'D:\HOST_min_cert.cer';

--见证服务器上执行

BACKUP CERTIFICATE HOST_pro_cert TO FILE = 'D:\HOST_pro_cert.cer';

4、互换证书

将备份到D:\的证书进行互换,即把HOST_pri_cert.cer,HOST_pro_cer.cert复制到备机的D:\,把HOST_min_cert.cer, HOST_pro_cer.cert复制到主机的D:\,把HOST_pri_cert.cer,HOST_min_cert.cer复制到见证机的D:\

5、添加登陆名、用户(主备可并行执行)

--主机执行:

CREATE LOGIN HOST_min_login WITH PASSWORD ='masterWord';
CREATE USER HOST_min_user FOR LOGIN HOST_min_login;
CREATE CERTIFICATE HOST_min_cert AUTHORIZATION HOST_min_user FROM FILE ='D:\HOST_min_cert.cer';
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_min_login];

CREATE LOGIN HOST_pro_login WITH PASSWORD ='masterWord';
CREATE USER HOST_pro_user FOR LOGIN HOST_pro_login;
CREATE CERTIFICATE HOST_pro_cert AUTHORIZATION HOST_pro_user FROM FILE ='D:\HOST_pro_cert.cer';
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_pro_login];

--备机执行:

CREATE LOGIN HOST_pri_login WITH PASSWORD ='masterWord';
CREATE USER HOST_pri_user FOR LOGIN HOST_pri_login;
CREATE CERTIFICATE HOST_pri_cert AUTHORIZATION HOST_pri_user FROM FILE ='D:\HOST_pri_cert.cer';
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_pri_login];

CREATE LOGIN HOST_pro_login WITH PASSWORD ='masterWord';
CREATE USER HOST_pro_user FOR LOGIN HOST_pro_login;
CREATE CERTIFICATE HOST_pro_cert AUTHORIZATION HOST_pro_user FROM FILE ='D:\HOST_pro_cert.cer';
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_pro_login];

--见证服务器上执行

CREATE LOGIN HOST_min_login WITH PASSWORD ='masterWord';
CREATE USER HOST_min_user FOR LOGIN HOST_min_login;
CREATE CERTIFICATE HOST_min_cert AUTHORIZATION HOST_min_user FROM FILE ='D:\HOST_min_cert.cer';
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_min_login];

CREATE LOGIN HOST_pri_login WITH PASSWORD ='masterWord';
CREATE USER HOST_pri_user FOR LOGIN HOST_pri_login;
CREATE CERTIFICATE HOST_pri_cert AUTHORIZATION HOST_pri_user FROM FILE ='D:\HOST_pri_cert.cer';
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_pri_login];

6、 配制镜像

右键点击需要镜像的数据库,点击[任务] ->选择[镜像],点击【配置安全性】,如下图:

会出现一个配置数据库安全性的向导

然后依次点击下一步,由于是在三台机器上做镜像,因此镜像端口都按默认的5022,如果在一台机器上做,需要使用不同的端口号

由于使用的是证书的方式,不是使用域名的方式,因此下图中的服务账户名都为空

继续下一步

点击完成,然后点击开始镜像就完成了数据库镜像的设置

5. 测试

6. 参考

http://www.cnblogs.com/killkill/archive/2008/05/23/1205792.html

http://msdn.microsoft.com/zh-cn/library/ms187798.aspx

http://liulike.blog.51cto.com/1355103/339183/

Sqlserver双机热备文档(无域)的更多相关文章

  1. SqlServer双机热备技术实践笔记

    SqlServer双机热备,大体上可以通过发布订阅,日志传送,数据库镜像来实现. 1,发布--订阅 是最早最简单的方案,但需要注意发布的时候,发布进程必须对快照目录有访问权限,这个问题可以从“查看快照 ...

  2. ArcSDE Redhat Linux下双机热备部署文档

    http://www.gisall.com/html/47/122747-3867.html ArcSDE系统环境: 操作系统:Red Hat Enterprise Linux AS/ES 5.5 ( ...

  3. SQLServer 2005 数据库定阅复制实现双机热备(主要是sharepoint 内容数据库)

    原文:SQLServer 2005 数据库定阅复制实现双机热备(主要是sharepoint 内容数据库) 场景 公司最近的sharepoint的数据库服务器老是出问题,并且在一旦出现问题,就导致无法正 ...

  4. 使用sqlserver搭建高可用双机热备的Quartz集群部署【附源码】

    一般拿Timer和Quartz相比较的,简直就是对Quartz的侮辱,两者的功能根本就不在一个层级上,如本篇介绍的Quartz强大的序列化机制,可以序列到 sqlserver,mysql,当然还可以在 ...

  5. 第十节: 利用SQLServer实现Quartz的持久化和双机热备的集群模式 :

    背景: 默认情况下,Quartz.Net作业是持久化在内存中的,即 quartz.jobStore.type = "Quartz.Simpl.RAMJobStore, Quartz" ...

  6. Nginx 反向代理、负载均衡、页面缓存、URL重写、读写分离及简单双机热备详解

    大纲 一.前言 二.环境准备 三.安装与配置Nginx  (windows下nginx安装.配置与使用) 四.Nginx之反向代理 五.Nginx之负载均衡  (负载均衡算法:nginx负载算法 up ...

  7. HA(High available)--Heartbeat高可用性集群(双机热备)菜鸟入门级

    HA(High available)--Heartbeat高可用性集群(双机热备)   1.理解:两台服务器A和B ,当A提供服务,B闲置待命,当A服务宕机,会自动切换至B机器继续提供服务.当主机恢复 ...

  8. oracle 双机热备,oracle dataguard 和oracle rac的区别和联系(转)

    Data Guard 是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,包括软件的版本,目 ...

  9. tomcate+keepalived配置双机热备

    环境清单: 应用1:192.168.51.101 应用2:192.168.51.75 虚拟IP:192.168.51.179 一.安装Tomcat(参照其他文档): 二.部署应用,并修改响应的端口(9 ...

随机推荐

  1. hibernate的懒加载

    WHY? WHAT? HOW? 所谓懒加载(lazy)就是延时加载,延迟加载.即不是不加载,而是在需要的时候才加载. 什么时候用懒加载呢,我只能回答要用懒加载的时候就用懒加载. 至于为什么要用懒加载呢 ...

  2. hihocoder #1162 矩阵加速dp

    #1162 : 骨牌覆盖问题·三 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 前两周里,我们讲解了2xN,3xN骨牌覆盖的问题,并且引入了两种不同的递推方法.这一次我 ...

  3. Python面向对象补充以及异常处理

    面向对象相关内容 一.isinstance(obj, cls) 检查是否obj是否是类 cls 的对象 class Foo(object): pass obj = Foo() isinstance(o ...

  4. jdk与jdt

    jdk是java的开发环境 ,程序的编译.运行都需要jdk.一个java开发平台,jdk少不了,而编辑器 可以多种多样,除了 eclipse中的JDT,还有独立的jcreate ,或者用记事本以其他加 ...

  5. openstack组件的数据库操作

    一.基础 SQLAlchemy http://docs.sqlalchemy.org/en/rel_0_9/index.html 对数据库进行操作的工具:xxx-manage db ... 二.数据库 ...

  6. layoutSubviews中判断横竖屏

    在ContentView中重写layoutSubviews方法,然后根据stausbar的方向判断当前视图的横竖屏.具体代码: -(void)layoutSubviews{ [super layout ...

  7. 科学计算三维可视化---Mlab基础(改变物体的外观颜色)

    import numpy as np from mayavi import mlab #建立数据 x,y = np.mgrid[-::200j,-::200j] z = *np.sin(x*y)/(x ...

  8. 2018ICPC赛后总结

    南京: 南京是我们队第一场区域赛,而且和一队二队一起,心里总有种踏实感.之前我们仨在一起讨论过我们打大型比赛出现的问题,晨哥说我们在封榜后总是出不了题,确实是这样,我觉得在之前的比赛中,我们队胜负欲都 ...

  9. Linux系统自动备份的Shell

    公司现在需要对现有的服务器进行定期备份,并将备份文件放置到正在使用的NAS中去: 为了备份的效率,还需要对备份的文件进行筛选,排除一些后缀名的文件: 实现方法如下: 1. 编写备份的shell文件 在 ...

  10. 机器学习算法整理(一)线性回归与梯度下降 python实现

    回归算法 以下均为自己看视频做的笔记,自用,侵删! 一.线性回归 θ是bias(偏置项) 线性回归算法代码实现 # coding: utf-8 ​ get_ipython().run_line_mag ...