对SQL Server 2008 进行Mirror的基本配置及安装。
准备工作
1. Principal 与Mirror 以及 Witness 三台实例都安装为相同版本,目前是到SQL Server 2008 SP1
2. 需要有一个域帐户分别添加到 三台数据库实例所在的Server 的 Administrators组、以及SQL Server 相关的组中;
由于具体的组的功能不清楚,因此建议所有组都添加该域帐户,确保权限运行正常。
3. 将第二步中的域帐户设置为SQL Server 服务,SQL Server Agent 的启动帐户,并重启服务;
4. 确保Principal 与Miroor 两台实例上的数据数据及日志相同。备份模式为完全备份,恢复模式为完全,向Mirror实例上恢复数据库时必须选择为NoRecovery模式。
创建EndPoint
1. 在Principal与 Mirror实例上创建EndPoint,运行脚本:
CREATE ENDPOINT mirroring_ep 
STATE=STARTED
AS TCP (LISTENER_PORT=5022) 
FOR  DATABASE_MIRRORING 
(ROLE = PARTNER, ENCRYPTION = SUPPORTED)
或:
CREATE ENDPOINT mirroring_ep 
STATE=STARTED
AS TCP (LISTENER_PORT=5022) 
FOR  DATABASE_MIRRORING 
(AUTHENTICATION=WINDOWS NTLM,ROLE = PARTNER)
2. 在Witness实例上创建EndPoint,运行脚本:
CREATE ENDPOINT mirroring_ep
STATE = STARTED
AS TCP ( LISTENER_PORT = 5022 )
FOR DATABASE_MIRRORING (
ENCRYPTION = SUPPORTED,
ROLE=WITNESS );
或:
CREATE ENDPOINT mirroring_ep 
STATE=STARTED
AS TCP (LISTENER_PORT=5022) 
FOR  DATABASE_MIRRORING 
(AUTHENTICATION=WINDOWS NTLM,ROLE = WITNESS)
查看EndPoint及删除EndPoint脚本:
Select * From Sys.database_mirroring_endpoints
Select * From sys.database_mirroring
Drop Endpoint endpoint_mirroring
创建 Mirror Session
1.在Mirror 实例上创建Session,运行脚本:
ALTER DATABASE  DataBaseName
SET PARTNER = 'TCP://PrincipalServerName:5022';
2.在Principal 实例上创建Session ,运行脚本:
ALTER DATABASE  DataBaseName
SET PARTNER = 'TCP://MirrorServerName:5022';
3.在Principal 实例上指定Witness,运行脚本:
ALTER DATABASE  HB2008_Gome
SET WITNESS = 'TCP://WitnessServerName:5022';
注意:
1.在Principal实例上创建Session时可能会遇到此错误,错误信息如下:
镜像数据库 "dbName" 包含的事务日志数据不足,无法保留主体数据库的日志备份链。如果没有从主体数据库进行日志备份或者没有在镜像数据库上还原日志备份,则可能会出现这种情况。
解决方法是在Principal实例上再进行一次日志备份,并按照NoRecovery模式还原至Mirror实例上。
原因是日志存在间断,可能在进行完全备份时又产生日志。
2.测试FailOver
ALTER DATABASE DataBase
SET PARTNER FAILOVER
3.相关查询表:
Sys.database_mirroring 
Sys.database_mirroring_endpoints 
Sys.database_mirroring_witnesses 
4.计划任务提前备份:
可以将Principal上的计划任务提前生成脚本,在Mirror配置完成后,在Mirror实例上执行。

对SQL Server 2008 进行Mirror的基本配置及安装。
准备工作

1. Principal 与Mirror 以及 Witness 三台实例都安装为相同版本,目前是到SQL Server 2008 SP1。

2. 需要有一个域帐户分别添加到 三台数据库实例所在的Server 的 Administrators组、以及SQL Server 相关的组中; 由于具体的组的功能不清楚,因此建议所有组都添加该域帐户,确保权限运行正常。

3. 将第二步中的域帐户设置为SQL Server 服务,SQL Server Agent 的启动帐户,并重启服务。

4. 确保Principal 与Miroor 两台实例上的数据数据及日志相同。备份模式为完全备份,恢复模式为完全,向Mirror实例上恢复数据库时必须选择为NoRecovery模式。

创建EndPoint

1. 在Principal与 Mirror实例上创建EndPoint,运行脚本:

Create EndPoint On Principal and Mirror Instance

CREATE ENDPOINT mirroring_ep
STATE=STARTED
AS TCP (LISTENER_PORT=5022)
FOR DATABASE_MIRRORING
(ROLE = PARTNER, ENCRYPTION = SUPPORTED)
--或
CREATE ENDPOINT mirroring_ep
STATE=STARTED
AS TCP (LISTENER_PORT=5022)
FOR DATABASE_MIRRORING
(AUTHENTICATION=WINDOWS NTLM,ROLE = PARTNER)

2. 在Witness实例上创建EndPoint,运行脚本:

Create EndPoint On Witness Instance

CREATE ENDPOINT mirroring_ep
STATE = STARTED
AS TCP ( LISTENER_PORT = 5022 )
FOR DATABASE_MIRRORING
( ENCRYPTION = SUPPORTED, ROLE=WITNESS );
--或
CREATE ENDPOINT mirroring_ep
STATE=STARTED
AS TCP (LISTENER_PORT=5022)
FOR DATABASE_MIRRORING
(AUTHENTICATION=WINDOWS NTLM,ROLE = WITNESS)

查看EndPoint及删除EndPoint脚本:

Select * From Sys.database_mirroring_endpoints

Select * From sys.database_mirroring

Drop Endpoint endpoint_mirroring

创建 Mirror Session

1.在Mirror 实例上创建Session,运行脚本:

ALTER DATABASE  DataBaseName

SET PARTNER = 'TCP://PrincipalServerName:5022';

2.在Principal 实例上创建Session ,运行脚本:

ALTER DATABASE  DataBaseName

SET PARTNER = 'TCP://MirrorServerName:5022';

3.在Principal 实例上指定Witness,运行脚本:

ALTER DATABASE  HB2008_Gome

SET WITNESS = 'TCP://WitnessServerName:5022';

注意:
1.在Principal实例上创建Session时可能会遇到此错误,错误信息如下:
镜像数据库 "dbName" 包含的事务日志数据不足,无法保留主体数据库的日志备份链。如果没有从主体数据库进行日志备份或者没有在镜像数据库上还原日志备份,则可能会出现这种情况。
解决方法是在Principal实例上再进行一次日志备份,并按照NoRecovery模式还原至Mirror实例上。
原因是日志存在间断,可能在进行完全备份时又产生日志。
2.测试FailOver
ALTER DATABASE DataBase
SET PARTNER FAILOVER
3.相关查询表:
Sys.database_mirroring 
Sys.database_mirroring_endpoints 
Sys.database_mirroring_witnesses 
4.计划任务提前备份:
可以将Principal上的计划任务提前生成脚本,在Mirror配置完成后,在Mirror实例上执行。

5.镜像运行模式

  1.高安全性模式:支持同步操作,事务在主体与镜像上同时提交,会延长事务滞后时间。

  2.高性能模式:支持异步运行,镜像服务器可能稍微滞后于主体数据库。

  值得说明的是,高安全性模式,由于是主体与镜像为同步操作,镜像的未提交会导致主体不进行提交,可能会有较大的影响。

   比如:DBServerA与DBServerB数据库互为镜像,DBServerA为主体,DBServerB为镜像;

      同时DBServerA做了发布服务器,DBServerC从DBServerA做了订阅。应用系统在DBServerC上进行查询。

     若DBServerB 出现故障,则DBServerA无法提交,从而DBServerC查询数据不及时。

6.设置镜像连接超时时间

  默认值为10s,通过更改Set Partner Timeout 来更改,如:

   ALTER DATABASE DataBaseName SET PARTNER TIMEOUT 20

转载于:https://www.cnblogs.com/jerryshi/archive/2010/01/13/1646888.html

SQL Server 2008 Mirror相关推荐

  1. Sql server 2008镜像配置步骤

    下面主要是2008 MSSQL的一个镜像安装步骤,使用到的工具是mssql自带的Management Studio purpose : SQL SERVER 2008 mirror configura ...

  2. 通过SQL Server 2008 访问MySQL

    在公司中经常会遇到部署多种数据库环境的情况,对于开发人员来说经常在不同数据库之间转换确实有些繁琐,本篇将介绍从SQL Server 操作MySQL 数据库的方法. 数据库测试环境 1. SQL Ser ...

  3. 今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个...

    今天在webcasts上看sql server 2008的新功能介绍,无意中发现在连接sql server 数据库时,还有一个 Failover Partner的选项.以前都没注意过,它的主要功能就是 ...

  4. SQL Server 2008 Database Mirroring

    Here are some notes on "SQL Server 2008 Database Mirroring" I took while attending an adva ...

  5. PowerShell 2.0 实践(十二)管理 SQL Server 2008 R2(1)

    DBA可以使用的工具很多,对于SQL Server来说,有查询分析器.事件探查器.命令行工具等,其中SQL语句是重中之重,但是PowerShell的出现使得DBA又多了一种选择. 测试脚本下载 本系列 ...

  6. sql server 2008连接oracle操作步骤详细记录,SQLServer连接Oracle详细步骤

    我们知道SQL Server和Oracle其实很多原理都类似.特别是一些常用的SQL语句都是按照标准来.所以它们也可以有一定的互操作性的.这里 我们知道SQL Server和Oracle其实很多原理都 ...

  7. [转]实战 SQL Server 2008 数据库误删除数据的恢复

    实战 SQL Server 2008 数据库误删除数据的恢复 关键字:SQL Server 2008, recover deleted records 今天有个朋友很着急地打电话给我,他用delete ...

  8. 基于Sql Server 2008的分布式数据库的实践(一)

    原文 基于Sql Server 2008的分布式数据库的实践(一) 配置Sql Server 2008(Win7) 1.打开SQL server2012,使用windows身份登录 2.登录后,右键选 ...

  9. 在SQL Server 2008中配置文件流(FILESTREAM)

    SQL Server 2008推出了一个新的特性叫做文件流(FILESTREAM),它使得基于SQL Server的应用程序可以在文件系统中存储非结构化的数据,例如文档.图片.音频.视频等等.文件流主 ...

  10. SQL Server 2008高可用性系列:数据库快照

    SQL Server 2008高可用性系列:数据库快照 http://database.51cto.com  2010-09-13 14:45  我爱菊花  博客园  我要评论(0) 摘要:我们今天要 ...

最新文章

  1. 手把手Fiddler掌握
  2. java 实例化 bean,Spring(02)——bean实例化
  3. 03.body_search
  4. 《PowerShell V3——SQL Server 2012数据库自动化运维权威指南》——2.13 创建视图...
  5. 计算机专业表白文案,深情表白文案40句
  6. JAVA爬取亚马逊的商品信息
  7. C#如何解决对ListView控件更新以及更新时界面闪烁问题
  8. springcloud和dubbole的区别和解释
  9. C#获取当前路径的方法如下
  10. Python编写微信打飞机小游戏(四)
  11. java struts2 验证码,struts2中验证码的生成和使用
  12. 图像增强——imhist、imcontour、imadjust、histeq、fspecial、imfilter、medfilt2
  13. [转]用.net快速开发下载软件
  14. linux7 iperf,CentOS 7下安装Iperf
  15. 基于STM32设计的宠物投喂器
  16. 2022年下半年软件设计师下午真题及答案解析
  17. 医药电子 | 三轴加速度传感器的类型、原理、特点和应用
  18. 24h的编程比赛总结
  19. android 横屏字体变小,android屏幕大小,字体大小,横屏竖屏切换问题
  20. 爬虫------12306

热门文章

  1. iOS-----------关于UDID
  2. 使用对象-关系映射持久化数据
  3. scrapy下载图片第一波
  4. HDU-1301-Jungle Roads
  5. 线性代数之——正交矩阵和 Gram-Schmidt 正交化
  6. python接口调用把执行结果追加到测试用例中
  7. Oracle-并行多线程和视图view的应用
  8. Apache 配置多端口网站
  9. 将excel中的数据导入到oracle数据库中
  10. Error creating object Microsoft Data Access Components 2.1 (or later) have been properly installed