数据库镜像最佳实践和性能注意事项_第1页
数据库镜像最佳实践和性能注意事项_第2页
数据库镜像最佳实践和性能注意事项_第3页
数据库镜像最佳实践和性能注意事项_第4页
数据库镜像最佳实践和性能注意事项_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

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

文档简介

数据库镜像最佳实践和性能注意事项第一页,共七十七页,编辑于2023年,星期三议程数据库镜像简介数据库镜像工作原理事务安全性能注意事项网络结构注意事项故障转移注意事项部署注意事项监控提问第二页,共七十七页,编辑于2023年,星期三SP1中的数据库镜像功能在SP1发布后获得了完全支持SP1中镜像的新特性不再要求Traceflag1400数据库镜像监控界面第三页,共七十七页,编辑于2023年,星期三数据库镜像的工作原理

无镜像时主服务器日志应用程序SQLServer21数据>23提交第四页,共七十七页,编辑于2023年,星期三数据库镜像的工作原理

同步镜像镜像服务器主服务器日志应用程序SQLServerSQLServer22.141数据数据日志3>2>35提交见证服务器第五页,共七十七页,编辑于2023年,星期三数据库镜像的工作原理

异步镜像镜像服务器主服务器日志应用程序SQLServerSQLServer21数据数据日志>>2>2>2>>>23提交>>>2第六页,共七十七页,编辑于2023年,星期三事务安全同步SAFETYFULL(缺省)ALTERDATABASE<databasename>SETSAFETYFULL有保障的数据保护高可用操作模式/高保护模式允许自动故障转移(需见证服务器)异步SAFETYOFFALTERDATABASE<databasename>SETSAFETYOFF故障导致数据损失的潜在风险高性能模式用于故障转移的强制服务“SAFETYFULL”可以和“同步”互换使用

“SAFETYOFF”可以和“异步”互换使用第七页,共七十七页,编辑于2023年,星期三主服务器和镜像服务器日志未被传送到镜像服务器的日志字节数

代表了潜在的数据损失风险

尚未传送到镜像服务器的日志总字节数

未传送的日志主服务器镜像服务器上前滚的日志字节数代表了故障转移时间当前仍应用于镜像数据库以进行前滚操作的镜像日志的总字节数

未恢复的日志镜像服务器时间被传送到镜像服务器的日志字节数第八页,共七十七页,编辑于2023年,星期三议程数据库镜像简介数据库镜像工作原理事务安全性能注意事项网络结构注意事项故障转移注意事项部署注意事项监控提问第九页,共七十七页,编辑于2023年,星期三数据库镜像性能有哪些因素影响性能?第十页,共七十七页,编辑于2023年,星期三影响性能的因素

同步镜像镜像服务器主服务器日志应用程序SQLServerSQLServer22.141数据数据日志3>2>35提交见证服务器最重要的因素是日志产生速度第十一页,共七十七页,编辑于2023年,星期三影响性能的因素日志产生速度网络响应时间和带宽事务安全级别并发用户连接数事务规模和数量___________________________________

最终效果将有差别第十二页,共七十七页,编辑于2023年,星期三负载测试特性Workload1Workload2数据库大小(GB)4020并发用户连接数100020事务之间的最大思考时间(sec)40基线(无镜像)%CPU440基线(无镜像)事务数/sec241215基线(无镜像)日志产生速度(KB/sec)72012000第十三页,共七十七页,编辑于2023年,星期三事务安全vs.性能

Workload1日志产生速度较低时的边际影响第十四页,共七十七页,编辑于2023年,星期三事务安全vs.性能

Workload2日志产生速度较高时影响较大第十五页,共七十七页,编辑于2023年,星期三事务安全vs.性能

索引建立从聚簇索引中产生的日志越多→对性能影响越大第十六页,共七十七页,编辑于2023年,星期三异步镜像对未传送字节数和前滚字节数的影响在线聚集索引重建第十七页,共七十七页,编辑于2023年,星期三事务安全vs.性能

事务规模的影响

9300万行的bulkinsert较短的事务相对而言对性能影响更大第十八页,共七十七页,编辑于2023年,星期三议程数据库镜像简介数据库镜像工作原理事务安全性能注意事项网络结构注意事项故障转移注意事项部署注意事项监控提问第十九页,共七十七页,编辑于2023年,星期三网络响应时间的影响

Workload1下的同步镜像第二十页,共七十七页,编辑于2023年,星期三网络响应时间的影响

Workload2下的同步镜像第二十一页,共七十七页,编辑于2023年,星期三网络响应时间的影响

Workload1下的异步镜像第二十二页,共七十七页,编辑于2023年,星期三网络响应时间的影响

未传送字节数:Workload1下的异步镜像第二十三页,共七十七页,编辑于2023年,星期三网络带宽的影响

Workload1下的同步镜像第二十四页,共七十七页,编辑于2023年,星期三网络带宽的影响

Workload1下的异步镜像第二十五页,共七十七页,编辑于2023年,星期三网络带宽的影响

未传送字节数:Workload1下的异步镜像第二十六页,共七十七页,编辑于2023年,星期三议程数据库镜像简介数据库镜像工作原理事务安全性能注意事项网络结构注意事项故障转移注意事项部署注意事项监控提问第二十七页,共七十七页,编辑于2023年,星期三运行模式运行模式见证服务器安全级别自动故障转移故障转移中的数据损失风险有见证服务器的同步有FULL有无无见证服务器的同步无FULL无无异步无OFF无有第二十八页,共七十七页,编辑于2023年,星期三故障转移注意事项故障转移作用于数据库级别不存在组/实例级别的故障转移数据库之外的数据将不会被转移Master:logins,用户编辑的存储过程等.MSDB:Jobs,histories等.第二十九页,共七十七页,编辑于2023年,星期三自动故障恢复中的事件时间检测故障所用时间

固定时间数据库恢复可用与见证服务器协调所用时间检测到故障前滚完成前滚状态回滚状态从主服务器故障的检测到镜像服务器承担主服务器角色所隔时间称为数据库故障转移时间故障发生决定故障转移第三十页,共七十七页,编辑于2023年,星期三自动故障转移中的故障检测两种不同类型的故障SQLServer每秒钟互相Ping缺省情况下10次“ping”都失败时将宣告故障发生SQLServer以外的部分操作系统网络错误IO错误处理器错误第三十一页,共七十七页,编辑于2023年,星期三故障示例

快速SQLServer实例宕机Endpoint迅速关闭端口连接伙伴设备的网络重试迅速宣告失败操作系统宣布端口被关闭快速故障!故障转移在数秒钟内启动第三十二页,共七十七页,编辑于2023年,星期三故障示例

较慢速服务器灾难性故障电源断开连接伙伴设备的网络重试将等待超时SQLServer“ping”很可能首先宣告失败故障转移在10秒钟内启动第三十三页,共七十七页,编辑于2023年,星期三故障示例

更慢速主服务器上的日志驱动器被拔出将驱动器上的IO队列挂起SQLServer“pings”仍然可以正常工作20秒后,SQLServer发出IO警告40秒后,SQLServe宣告IO故障故障转移在驱动器被拔出40秒后启动第三十四页,共七十七页,编辑于2023年,星期三故障示例

无故障转移或快速故障转移数据库页校验和失败客户端连接失败自动事务回滚无故障转移数据库页校验和失败事务原先正在回滚中此时数据库无法一致数据库进入SUSPECT状态快速故障转移!!!第三十五页,共七十七页,编辑于2023年,星期三关于长时间连接断开的讨论长时间断开镜像不可用→DISCONNECTED镜像会话挂起→SUSPENDED日志记录在主服务器上累积即使经过备份,事务日志仍然不能截断最后可能占满事务日志空间,导致数据库停止运行检查sys.databases上的LOG_REUSE_WAIT_DESC列恢复或中断镜像会话第三十六页,共七十七页,编辑于2023年,星期三议程数据库镜像简介数据库镜像工作原理事务安全性能注意事项网络结构注意事项故障转移注意事项部署注意事项监控提问第三十七页,共七十七页,编辑于2023年,星期三部署注意事项1运行模式见证服务器安全级别自动故障转移故障转移中的数据损失风险有见证服务器的同步YesFULLYesNo没有见证服务器的同步NoFULLNoNo异步NoOFFNoYes第三十八页,共七十七页,编辑于2023年,星期三部署注意事项2用户案例在关键任务程序中部署有见证服务器的同步模式针对灾难恢复,用户成功进行了异步条件下的部署一些客户希望采取同步模式,但又选择手动故障转移多数据库公司IT策略要求人工干预从简单的异步镜像开始根据需要增加复杂性–循序渐进启动同步增加一个见证服务器第三十九页,共七十七页,编辑于2023年,星期三部署实例

ServiceU上的灾难恢复解决方案第四十页,共七十七页,编辑于2023年,星期三部署注意事项3管理计划停机时间滚动升级首先升级镜像服务器故障转移升级新的镜像服务器再次回到故障转移如果使用异步镜像等待低活性窗口期转为开始同步,等待直到同步完成如上,使用滚动升级转回异步考虑尽可能支持未来应用可以同时部署数据库镜像和日志传送对于多目的地的情况如果替换日志传送考虑对恢复模式的影响第四十一页,共七十七页,编辑于2023年,星期三保持镜像服务器随时待命推荐统一的伙伴服务器两个伙伴服务器采用相同版本的SQL两个伙伴服务器的SQLServer打上相同的servicepack除非在滚动升级中统一的目录结构两个伙伴服务器的SQLServer采用相同的配置(跟踪标志,启动选项,内存配置等)两个伙伴服务器的SQLServer采用统一的登录/权限设置将SQLAgentjobs,alerts,SSIS包,维护计划等从一个伙伴复制到另一个伙伴服务器在一个伙伴上增加一个磁盘卷→镜像服务器上照此办理测试故障转移,确保应用程序在两个伙伴服务器上一致地运行第四十二页,共七十七页,编辑于2023年,星期三议程数据库镜像简介数据库镜像工作原理事务安全性能注意事项网络结构注意事项故障转移注意事项部署注意事项监控提问第四十三页,共七十七页,编辑于2023年,星期三数据库镜像监控发送队列未前滚字节前滚速度第四十四页,共七十七页,编辑于2023年,星期三数据库镜像监控Menu:Action->SetWarningThresholds…第四十五页,共七十七页,编辑于2023年,星期三数据库镜像监控第四十六页,共七十七页,编辑于2023年,星期三总结数据库镜像是如何工作的事务安全对性能的影响网络响应时间和带宽的影响故障实例和故障转移的注意事项部署实例数据库镜像监控第四十七页,共七十七页,编辑于2023年,星期三总结

性能注意事项应用程序生成的事务日志越多,对数据库镜像的影响越大当启用同步镜像的时候,连接数较少的应用程序对事务吞吐量的影响较大事务大小较小的应用程序相对来说对数据库镜像性能的影响较大事务日志生成速度较低的应用程序在网络带宽降低或网络响应时间增加的情况下,能够维持可接受的事务吞吐量事务日志生成速度较高的应用程序在网络带宽降低或网络响应时间增加的情况下,性能可能受到严重影响使用异步镜像时,监控未发送日志字节数以便确定当主服务器发生故障时数据损失的风险第四十八页,共七十七页,编辑于2023年,星期三总结

在实践中我们推荐:从简单的(异步)情况开始逐渐增加复杂性如果对自动故障转移无兴趣,请不要创建见证服务器理解应用程序对性能和可用性的要求对远程镜像而言,一般情况下不推荐使用同步数据库镜像保持镜像服务器为数据转移做好准备,同时保持logins、jobs等的传递在生产中实施之前,对各种性能指标进行彻底测试将镜像部署到两个远距服务器之前,测试网络性能在不同的故障场合下测试故障转移第四十九页,共七十七页,编辑于2023年,星期三更多资讯请参考技术白皮书/technet/prodtechnol/sql/2005/technologies/dbm_best_pract.mspx/technet/prodtechnol/sql/2005/dbmirror.mspx/technet/prodtechnol/sql/2005/dbmirfaq.mspx用户案例研究/documents/customerevidence/26366_serviceu_cs_final.doc/documents/customerevidence/26365_ORF_SQLServer2005_casestudy.doc/documents/customerevidence/26373_Mediterranean_Shipping_case_study.doc数据库镜像在线指南/en-us/ms177412(SQL.90).aspx数据库镜像的MSDNForum/MSDN/ShowForum.aspx?ForumID=227&SiteID=1第五十页,共七十七页,编辑于2023年,星期三第五十一页,共七十七页,编辑于2023年,星期三评估第五十二页,共七十七页,编辑于2023年,星期三附录第五十三页,共七十七页,编辑于2023年,星期三数据库镜像简介SQLServer2005SP1新的高性能特性维护数据库的备份副本保持数据最新同步异步进行故障转移自动手动所在位置本地远程第五十四页,共七十七页,编辑于2023年,星期三数据库镜像简介2在两个服务器上保留数据库的两份拷贝不同角色:主服务器可以访问该服务器上的数据当前服务于数据库可以连接镜像服务器始终处于“数据恢复”的状态无法连接故障转移时角色转换第五十五页,共七十七页,编辑于2023年,星期三数据库镜像简介3见证服务器可选的,第三个SQLServer实例用于故障转移时的仲裁只用于自动故障转移回答问题“你看到了谁?”

不是决策者不是单点故障不参与任何数据处理第五十六页,共七十七页,编辑于2023年,星期三数据库镜像简介4粒度/范围→数据库可以镜像一个实例中的多数据库每个主服务器只有一个镜像服务器要求完全恢复模式不能镜像master,msdb,temp以及model数据库第五十七页,共七十七页,编辑于2023年,星期三终结点加密缺省情况下将加密终结点三种可能设置:REQUIRED(缺省)SUPPORTEDDISABLED支持两种加密算法RC4AES对性能影响极小第五十八页,共七十七页,编辑于2023年,星期三加密终结点情况下的事务吞吐量对吞吐量的边际影响第五十九页,共七十七页,编辑于2023年,星期三加密终结点情况下的事务响应时间对响应时间的边际影响第六十页,共七十七页,编辑于2023年,星期三事务安全vs.性能

索引重建第六十一页,共七十七页,编辑于2023年,星期三故障转移实例

主服务器故障带有见证服务器的同步

数据没有损失自动故障转移镜像服务器接替主服务器的角色主服务器暴露(失去保护)当出现故障的数据库恢复运行时自动接替镜像服务器的角色开始同步没有见证服务器的同步数据没有损失人工干预中断镜像会话,恢复镜像数据库

ALTERDATABASE<databasename>SETPARTNEROFFRESTOREDATABASE<databasename>WITHRECOVERY出现故障的数据库恢复运行时需要重建镜像会话第六十二页,共七十七页,编辑于2023年,星期三故障转移实例

主服务器故障异步数据可能损失见证服务器无效人工干预–两种选择强制服务ALTERDATABASE<databasename>SETPARTNERFORCE_SERVICE_ALLOW_DATA_LOSS出现故障的数据库恢复运行时自动接替镜像服务器的角色镜像会话保持挂起中断镜像会话,恢复镜像数据库ALTERDATABASE<databasename>SETPARTNEROFFRESTOREDATABASE<databasename>WITHRECOVERY出现故障的数据库恢复运行时需要重建镜像会话第六十三页,共七十七页,编辑于2023年,星期三故障转移实例

镜像服务器故障和同步/异步无关见证服务器无直接影响,但有间接影响(稍后介绍)主服务器继续运行(但失去保护)当镜像服务器恢复运行时自动继续执行镜像服务器的角色开始和主服务器同步第六十四页,共七十七页,编辑于2023年,星期三故障转移实例

见证服务器故障主服务器和镜像服务器继续工作禁用了自动故障转移当见证服务器恢复运行时自动以见证服务器角色重新加入第六十五页,共七十七页,编辑于2023年,星期三故障转移实例

镜像和见证服务器同时故障镜像服务器故障→主服务器失去保护见证服务器断开→主服务器被“隔绝”无法再为应用程序服务如果镜像服务器或见证服务器无法迅速恢复在线,唯一可行的措施是中止镜像会话ALTERDATABASE<databasename>SETPARTNEROFF镜像服务器恢复时重建数据库镜像会话如果在镜像会话被中止期间已经备份了事务日志,则在镜像服务器上重载之,否则设置令伙伴和镜像服务器开始自动重新同步第六十六页,共七十七页,编辑于2023年,星期三测定故障转移时间

采用SQLServerProfiler选择

“DatabaseMirroringStateChange”事件“StartTime”和“TextData”列开始Profiler跟踪并观察故障转移中的消息。SQLServerProfiler故障转移中的消息样例StartTime开始时刻文本内容2005-10-2212:39:17.960DBM:SynchronizedMirrorwithWitness->DBM:ConnectionwithPrincipalLost2005-10-2212:39:18.570DBM:ConnectionwithPrincipalLost->DBM:AutomaticFailover2005-10-2212:39:20.590DBM:AutomaticFailover->DBM:PrincipalRunningExposed第六十七页,共七十七页,编辑于2023年,星期三数据库镜像的监控

通过计数器执行在主服务器上未传送的日志字节数KB事件延迟每秒事件数/sec每秒日志刷新字节数Byets/sec磁盘每秒写入字节数Bytes/sec在镜像服务器上每秒前滚字节数Bytes/sec前滚字节数KB磁盘每秒写入字节数Bytes/sec第六十八页,共七十七页,编辑于2023年,星期三数据库镜像的监控

目录视图和动态管理视图sys.database_mirroringsys.database_mirroring_endpointssys.database_mirroring_witnessessys.tcp_endpointssys.dm_db_mirroring_connections第六十九页,共七十七页,编辑于2023年,星期三数据库镜像和SQLServer2005不同版本数据库镜像特性EnterpriseEditionStandardEditionWorkgroupEditionSQLExpress伙伴√√目录服务器√√√√同步√√异步√故障转移后回滚时可用性√√并行前滚√数据库快照√第七十页,共七十七页,编辑于2023年,星期三比较:数据库镜像,故障转移群集和日志传送特性数据库镜像故障转移群集日志传送数据损失无数据损失选项无数据损失可能出现故障转移自动故障转移选项自动故障转移无故障转移时间几秒钟~20+秒钟手动操作特殊硬件无Certifiedhardware无冗余完全冗余硬盘共享完全冗余多辅助数据库无无有备用读取访问有,通过快照无有,通过STANDBY选项粒度数据库实例数据库第七十一页,共七十七页,编辑于2023年,星期三第七十二页,共七十七页,编辑于2023年,星期三基于SQLServer高可用性特性的副品牌永不停顿技术支持要求最高级别可用性的关键任务应用程序提高了计划停机时间中的可用性应用程序、操作系统或硬件的升级维护和操作期间非计划停机期间的保护和快速恢复人为失误系统故障数据

温馨提示

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

评论

0/150

提交评论