全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

SQL Server2008 R2 数据库镜像实施手册(双机)SQL Server2014同样适用

一、配置主备机

1、 服务器基本信息

主机名称为:HOST_A,IP地址为:192.168.1.155

备机名称为:HOST_B,IP地址为:192.168.1.156

二、主备实例互通

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

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

--主机执行:
USE master; 
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456'; 
CREATE CERTIFICATE HOST_A_cert WITH SUBJECT = 'HOST_A certificate' , 
START_DATE = '2012-08-02', 
EXPIRY_DATE = '2099-08-02'; 

--备机执行:

USE master; 
CREATE MASTER KEY ENCRYPTION BY PASSWORD = '123456'; 
CREATE CERTIFICATE HOST_B_cert WITH SUBJECT = 'HOST_B certificate', 
START_DATE = '2012-08-02', 
EXPIRY_DATE = '2099-08-02'; 

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

--主机执行: 

CREATE ENDPOINT Endpoint_Mirroring 

STATE = STARTED 

AS 

TCP ( LISTENER_PORT=5022 , LISTENER_IP = ALL ) 

FOR 

DATABASE_MIRRORING 

( AUTHENTICATION = CERTIFICATE HOST_A_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_B_cert , ENCRYPTION = REQUIRED ALGORITHM AES , ROLE = ALL );

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

--主机执行:

BACKUP CERTIFICATE HOST_A_cert TO FILE = 'C:\SQLBackup\HOST_A_cert.cer'; 


--备机执行:

BACKUP CERTIFICATE HOST_B_cert TO FILE = 'C:\SQLBackup\HOST_B_cert.cer';

4、互换证书

将备份到C:\SQLBackup\的证书进行互换,即HOST_A_cert.cer复制到备机的C:\SQLBackup\。HOST_B_cert.cer复制到主机的C:\SQLBackup\。

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

以下操作只能通过命令行运行,通过图形界面无法完成。(截至SQL Server2005的补丁号为SP2)

--主机执行:
CREATE LOGIN HOST_B_login WITH PASSWORD = '123456'; 
CREATE USER HOST_B_user FOR LOGIN HOST_B_login; 
CREATE CERTIFICATE HOST_B_cert AUTHORIZATION HOST_B_user FROM FILE = 'C:\SQLBackup\HOST_B_cert.cer'; 
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_B_login]; 
 
--备机执行:
CREATE LOGIN HOST_A_login WITH PASSWORD = '123456'; 
CREATE USER HOST_A_user FOR LOGIN HOST_A_login; 
CREATE CERTIFICATE HOST_A_cert AUTHORIZATION HOST_A_user FROM FILE = 'C:\SQLBackup\HOST_A_cert.cer'; 
GRANT CONNECT ON ENDPOINT::Endpoint_Mirroring TO [HOST_A_login]; 

三、建立镜像关系

以下步骤是针对每个数据库进行的,例如:现有主机中有5个数据库以下过程就要执行5次。

1、 手工同步登录名和密码

在上文中提到数据库镜像的缺点之一是无法维护登录名,所以需要我们手工维护登录。

通常来说数据库都将会有若干个用户作为访问数据库的用户,并且数据库会有相应的登录名,但是在备机中缺少与之相对应的登录名,例如某业务系统使用'myuser'作为登录名访问数据库,但是在备机中没有'myuser'这个登录名,因此一旦主备切换,业务系统就无法登录数据库了,这种情况称为"孤立用户"。在主机和备机数据库上建立相同用户名及密码即可。

2、 准备备机数据库(主机备份及镜像还原)

在主机上备份数据库,先做完整备份,再做日志事务备份。

1、主数据必须设置成完整模式进行备份,如下图:

 

  上图中将“恢复模式”选成“完整模式”。

2、备份数据库,如下图:

 

备份时将“备份类型”选成“完整”。

3、备份事务日志,如下图:

 

将“备份类型”选成“事务日志”且备份目录与备份数据库的目录一致。

将备份文件在备机上使用主机的全备文件进行还原,在还原数据的时候需要使用选上“with non recover”。如图所示:

 

如果执行成功数据库将会变成这个样子:

3、 建立镜像

--在备机中执行如下语句:

ALTER DATABASE shishan SET PARTNER = 'TCP://192.168.1.155:5022';

说明:shishan为数据库名,需要根据实际进行修改。192.168.1.155为主机IP地址,需根据实际进行修改。

--主机执行:

ALTER DATABASE shishan SET PARTNER = 'TCP://192.168.1.156:5022'; 

说明:shishan为数据库名,需要根据实际进行修改。192.168.1.156为备机IP地址,需根据实际进行修改。

执行成功后:

到此,SQL镜像热备配置完成。

四、常见命令

--切换主备 
use master;
alter database testdb set partner failover;
 
-- 备机强制切换
use master;
alter database testdb set partner force_service_allow_data_loss;
 
--恢复镜像
use master;
alter database testdb set partner resume;
 
 
--取消见证服务器
ALTER DATABASE testdb SET WITNESS OFF ;
 
--取消镜像
ALTER DATABASE testdb SET PARTNER OFF;
 
--设置镜像数据库还原为正常
RESTORE DATABASE testdb WITH RECOVERY;

备份主数据库出现:Backup a database on a HDD with a different sector size,可以执行以下语句备份:
BACKUP DATABASE MyDB TO DISK = N'D:\MyDB.bak' WITH INIT , NOUNLOAD , NAME = N'MyDB backup', STATS = 10, FORMAT

总结

要进行以上sql server的镜像设置一定要使用sql server 的配置管理器开启TCP/IP协议,如下图

如果没有启用TCP/IP协议则只能在同一个网段内的机器配置镜像,前面的配置步骤里面所用到的IP地址要换成对应的实例名。同一个网段配置并使用镜像的时实性、传输速率更高,适用于大数据量的同步,跨网段或者跨公网的sql server 镜像一般适用于数据量小,时实性要求不高的数据同步,而且数据库在公网上同步也不安全。


# Server2008  # R2  # 数据库镜像  # Java连接sqlserver2008数据库代码  # PHP 5.6.11 访问SQL Server2008R2的几种情况详解  # win2008 r2 服务器php+mysql+sqlserver2008运行环境配置(从安装、优化  # SqlServer2008误操作数据(delete或者update)后恢复数据的方法  # sqlserver2008首次登录失败问题及解决方法  # 镜像  # 登录名  # 如下图  # 会有  # 只需  # 适用于  # 要做  # 机中  # 也不  # 但是在  # 将会  # 一是  # 中有  # 更高  # 如果没有  # 不高  # 互联  # 这种情况  # 都将  # 可以使用 


相关文章: 魔毅自助建站系统:模板定制与SEO优化一键生成指南  大连网站设计制作招聘信息,大连投诉网站有哪些?  如何通过西部数码建站助手快速创建专业网站?  如何在云主机上快速搭建网站?  清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  深圳网站制作案例,网页的相关名词有哪些?  如何用美橙互联一键搭建多站合一网站?  专业网站建设制作报价,网页设计制作要考什么证?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  如何快速启动建站代理加盟业务?  网站制作大概多少钱一个,做一个平台网站大概多少钱?  c# 在ASP.NET Core中管理和取消后台任务  如何用狗爹虚拟主机快速搭建网站?  如何获取免费开源的自助建站系统源码?  常州企业建站如何选择最佳模板?  高端云建站费用究竟需要多少预算?  学校建站服务器如何选型才能满足性能需求?  如何彻底卸载建站之星软件?  义乌企业网站制作公司,请问义乌比较好的批发小商品的网站是什么?  山东网站制作公司有哪些,山东大源集团官网?  模具网站制作流程,如何找模具客户?  建站之星会员如何解锁更多建站功能?  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  定制建站是什么?如何实现个性化需求?  大连网站制作公司哪家好一点,大连买房网站哪个好?  IOS倒计时设置UIButton标题title的抖动问题  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  如何零基础开发自助建站系统?完整教程解析  济南网站建设制作公司,室内设计网站一般都有哪些功能?  如何快速生成凡客建站的专业级图册?  单页制作网站有哪些,朋友给我发了一个单页网站,我应该怎么修改才能把他变成自己的呢,请求高手指点迷津?  北京建设网站制作公司,北京古代建筑博物馆预约官网?  教学网站制作软件,学习*后期制作的网站有哪些?  如何在Mac上搭建Golang开发环境_使用Homebrew安装和管理Go版本  如何选择高效稳定的ISP建站解决方案?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  建站VPS能否同时实现高效与安全翻墙?  创业网站制作流程,创业网站可靠吗?  如何通过西部建站助手安装IIS服务器?  已有域名能否直接搭建网站?  ,怎么在广州志愿者网站注册?  网页设计网站制作软件,microsoft office哪个可以创建网页?  南京网站制作费用,南京远驱官方网站?  动图在线制作网站有哪些,滑动动图图集怎么做?  高端建站三要素:定制模板、企业官网与响应式设计优化  建站主机数据库如何配置才能提升网站性能?  ,在苏州找工作,上哪个网站比较好?  个人网站制作流程图片大全,个人网站如何注销?  如何在企业微信快速生成手机电脑官网? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。