ITPub博客

首页 > Linux操作系统 > Linux操作系统 > SQL SERVER 2005数据库镜像一

SQL SERVER 2005数据库镜像一

原创 Linux操作系统 作者:sunger_chen 时间:2009-11-13 15:22:03 0 删除 编辑
数据库镜像是一种基于软件的高可用性解决方案,是基于数据库级别的快速的故障转移恢复.
    其中的角色有
主体服务器:承载主体数据库、接受用户连接和处理事务请求.
镜像服务器:承载镜像数据库、作为主体数据库的热备份、仅在故障转移后接受用户连接和处理事务请求.
见证服务器:监视服务器状态和连接、实现自动故障转移.
主体服务器和镜像服务器的角色不是固定不变的是互为伙伴的(主体和镜像是可以相互转换的)当故障转移后服务器 角色发生转变.每个伙伴(主体服务器,镜像服务器,见证服务器)都维护数据库镜像的状态信息,他们之间是通过ping交换消息,相互监视.数据库镜像中的 ping不仅验证网络之间的连接,还包括实例运行的操作系统运行情况,数据库实例的当前运行状况以及数据库的运行情况.
  镜像会话的周期
1.创建会话的过程(会话初始化)
当镜像创建后,镜像数据库会向主体数据库请求事务日志记录,与主体数据库同步实现数据的一致性的过程.
2.会话过程
会话初始化完成(主体数据库和镜像数据库一致)会话过程开始,在这个过程中主体服务器为用户提供服务,用户对 数据库的操作发送到主体数据库,如果发生了更新主体服务器会把事务日志传送给镜像数据库,镜像数据库把传送来的日志应用到镜像数据库中,在这个过程中各个 角色相互监视会话状况.
3.会话终止
发生故障转移或 数据库镜像工作原理
当数据库镜像创建完成后,主体数据库为用户提供服务,镜像数据库是不可用的.当用户对主体数据库进行更新时, 把更新事务写到日志中同时把更新操作传给镜像服务器此时主体服务器等待镜像服务器的确认,镜像服务器把操作应用到数据库中并给主体服务器发送确认同时对数 据库实行Redo,主体服务器收到确认向用户发送成功信息.
   快速恢复机制
数据库重启或还原需经过三个阶段.分析阶段,数据库服务器对当前的状态和日志文件中的信息进行分析,Redo阶段:数据库服务器对日志文件中已经提交的事务应用到数据库文件中去.Undo阶段:对数据库中未提交的事务进行回滚.在 SQl 2000中数据库必须等还原过程全部完成后才能使用,SQL 2005数据库在完成Redo后就可使用.
   数据库镜像有三种操作模式
1.高可用性事务安全(FULL)传输机制(同步)是否需要仲裁(是)见证服务器(Y)故障转移类型(自动或手动)主要应用于要求高可用性服务,实现自动故障转移,确保数据的完整性.主体和镜像服务器同步传输,主体在发送日志后等待镜像的确认,主体和镜像的日志完全一致.如果主体数据库不可用将发生自动故障转移.
2.高级别保护事务安全(FULL)传输机制(同步)是否需要仲裁(是)见证服务器(N)故障转移类型(手动)应用于高的数据完整性,不要求自动故障转移.主体和镜像服务器同步传输,主体在发送日志后等待镜像的确认,主体和镜像的日志完全一致.管理员终止数据库镜像.
3.高性能事务安全(OFF)传输机制(异步)是否需要仲裁(N)见证服务器(N/A)故障转移类型(强制)应用于主体数据库和镜像数据库离的远通信线路有明显的延时,对性能的要求高于数据的完整性.主体在发送日志后不等待镜像确认继续处理后续的操作,主体失败时在镜像上有可能丢失一些数据.
    仲裁只适用于设置了见证服务器的会话(高可用性)必须连接两个或两个以上的服务器实例时数据库才可用.主要目地是确保在任何时间只有一个伙伴为数据库提供 服务,仲裁的改变将会导致故障转移.当所有的服务器都在线仲裁形成,当镜像服务器故障时主体和见证形成仲裁,见证服务器故障时主体和镜像形成仲裁,主体故 障时见证和镜像形成仲裁,有两个故障就失去仲裁数据库不可用.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16998571/viewspace-619584/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-01-09

  • 博文量
    28
  • 访问量
    23960