数据库镜像当前可行方案.doc_第1页
数据库镜像当前可行方案.doc_第2页
数据库镜像当前可行方案.doc_第3页
数据库镜像当前可行方案.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库镜像当前可行方案一、 数据库镜像概述数据库镜像涉及单个数据库的两个拷贝,它们驻留在不同的SQL Server实例中,且通常位于不同的计算机中。在任何给定时间,对客户端来说只有一个数据库拷贝可用,这个数据库拷贝称为主体数据库,存储主体数据SQL Server实例利称为主体服务器。数据库镜像的工作原理是传送并应用数据库日志记录到数据库拷贝。该数据库拷贝称为镜像数据库,存储镜像数据库的服务器称为镜像服务器。主体服务器和镜像服务器都被视为数据库镜像会话中的伙伴。对于给定服务器,它可充当一个数据库的主体角色,还可充当另一个数据库的镜像角色。数据库镜像将主体数据库的任何修改应用于镜像数据库,包括物理修改和逻辑修改,如数据库文件和索引。二、 数据库镜像动作模式数据库镜像的运行模式运行模式事务安全传送机制是否需要仲裁见证服务器故障转移类型高性能模式OFF异步否N/A仅限强制故障转移(可能丢失数据),这是一个手工步骤非自动故障转移高安全模式FULL同步是否手工或强制自动故障转移高安全模式FULL同步是是自动或手工数据库镜像会话有三种可能的运行模式,采用运行要求取决于事务安全设置及镜像会话中是否包含见证服务器。配置数据库镜像时,需要决定要求主体数据库和镜像数据库在所有时间都保持同步以实现完全数据安全,还是能够接受在主体数据库发生故障时丢失一些数据。在SQL Server中,在对实际数据页进行任何修改前,数据修改首先被记录到事务日志中。事务日志记录首先存储在位于内存中的日志缓冲区,然后尽可能快地定入磁盘中的日志文件中(也被称为“事务日志固化”)。在高安全模式下配置数据库镜像(也称同步镜像)。当主体服务器将主体数据库的日志记录固化到磁盘(将日志缓冲区写入磁盘时)时,它还将日志缓冲区发送给镜像服务器,并等待镜像服务器的响应。镜像服务器将日志记录固化到日志文件中后,响应提交,然后提交告之客户端。同步传送确保镜像数据库事务日志中的所有事务都与主体数据库事务日志同步,因此认为事务被安全传送。这可确保不会丢失数据,只要事务成功提交,主体数据库和镜像数据库就将处于同步状态。这需要一些开销,因为仅当在镜像服务器中将事务固化到日志文件中后,事务才提交。这将导致响应时间稍微增加,而事务吞吐量稍微降低,因为主体服务器需要等待镜像服务器有关事务已固化到镜像确认。该延时的大小取决于很多因素,如网络延时、应用程序体系结构、磁盘吞吐量等。与使用长事务的应用程序相比,包含很多小型事务的应用程序在响应时间方面受到的影响更大,因为需要等待来自镜像服务器的确认,而对于短事务来说,等待时间在响应时间中占的比例更大。在高性能模式(也称异步镜像)下配置数据库镜像。在这种模式下日志传送过程与同步模式下相同,差别是主体服务器在提交时不等待镜像有关日志已写入磁盘的确认。由于镜像服务器总是忙于与主体服务器同步,因此如果主体服务器突然发生故障,将可能丢失数据。在这种运行模式下,对响应时间或事务吞吐量的影响很小,因为在这种模式下运行时,就像没有镜像一样。发送队列:从主体服务器发送日志记录到镜像服务器时,如果发送速度低于日志记录的速度,将在主体服务器中建立一个队列,该队列称为发送队列。发送队列不占用额外的存储或内存,完全位于主体服务器的事务日志中。它指的是还没有发送到镜像服务器的日志部分。重做队列:在镜像服务器中应用日志记录时,如果应用速度低于接收日志记录的速度,将在镜像服务器中建立一个队列,该队列称为重做队列。与发送队列类似,重做队列也不占用额外的存储或内存,它完全位于镜像服务器的事务日志中,指的是已定入日志文件还未应用于镜像数据库的日志部分。三、高性能模式配置(A主体与B镜像、见证C)前期准备:1、在系统上建立系统管理员用户(例:spiderking)2、将上面设置的系统用户设置为SQL Server 启动帐户3、开放镜像端口(默认:5022)4、设置SQL登录名5、保证主体与镜像数据库同步实施阶段1、在主体服务器A运行以下命令-创建镜像端口if not exists(select * from sys.endpoints where type=4)create endpoint DBSpiderPoint -端口名state=started as tcp(listener_port=5022) -镜像端口FOR DATABASE_MIRRORING(ROLE=PARTNER,ENCRYPTION=SUPPORTED)-指定端口用户use masterGRANT CONNECT ON ENDPOINT: DBSpiderPoint TO db-serverspiderking2、在镜像服务器B运行以下命令-创建镜像端口if not exists(select * from sys.endpoints where type=4)create endpoint DBSpiderPoint -端口名state=started as tcp(listener_port=5022) -镜像端口FOR DATABASE_MIRRORING(ROLE=PARTNER,ENCRYPTION=SUPPORTED)-指定端口用户use masterGRANT CONNECT ON ENDPOINT: DBSpiderPoint TO db-hisspiderking 3、在见证服务器C运行以下命令(高性能模式下不用设置)-创建镜像端口if not exists(select * from sys.endpoints where type=4)create endpoint DBSpiderPointstate=started as tcp(listener_port=5022)FOR DATABASE_MIRRORING(ROLE=WITNESS,ENCRYPTION=SUPPORTED)ALTER ENDPOINT DBSpiderPoint STATE=STARTED-指定端口用户use masterGRANT CONNECT ON ENDPOINT:DBMirrorEndPoint TO Cxx22启动镜像会话(注意步骤)1、在镜像服务器B运行以下命令ALTER DATABASE spiderSET PARTNER=NTCP:/A:5022-主体服务器网络地址及镜像端口2、在主体服务器A运行以下命令ALTER DATABASE spiderSET PARTNER=NTCP:/B:5022-镜像服务器网络地址及镜像端口3、在见证服务器C运行以下命令ALTER DATABASE spiderSET WITNESS=NTCP:/C:5022-见证服务器网络地址及镜像端口4、根据需要设置镜像模式(高性能不需要见证服务器)ALTER DATABASE spider SET SAFETY FULL-FULL高安全/OFF 高性能四、高性能可用性场景A、 主体服务器丢失发生故障前,A是主体服务器,B是镜像服务器。现在A发生了故障,因此数据库对客户端来说不可用。可使用如下命令切换到B。(强制服务故障转移)ALTER DATABASE SPIDER SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS然而,由于是高性能模式,因此当主体服务器发生故障时,可能有一些事务还没有传送到镜像服务器,这些事务将丢失。因此,在手式故障转移需要考虑数据丢失的可能。当A恢复正常时,它将自动承担镜像服务器的角色,但镜像会话将挂起。可通过运行如下命令恢复镜像会话:ALTER DATABASE SPIDER SET PARTNER RESUME切换主/镜角色,先将高性能模式转用高安全性模式再执行故障转移ALTER DATABASE spider SET SAFETY fullALTER DATABASE SPIDER SET PARTNER FAILOVERALTER DATABASE spider SET SAFETY offB、 镜像服务器丢失如果镜像服务器出现故障,主体服务器将继续正常运行,且数据库服务对客户端仍可用。但事务日志空间就不能被重用,即使备份事务日志。如果日志文件一直保持增长,并达到最大限制或磁盘空间用尽,将导致整个数据库停止。建议:1:确保主体服务器有足够磁盘空间用于事务日志增长,并确保在这些空间用尽前让镜像服务器恢复运行。2、使用以下命令ALTER DATABASE SPIDER SET PARTNER OFF断开数据库镜像会话。当镜像服务器恢复运行时,需要重新建立镜像会话。可记录镜像服务器宕机的时间,确定主体服务器中备份事务日志的作业在正常运行。当镜像服务器恢复联机时,对镜像

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论