SqlserverAlwayson高可用性方案.docx
- 文档编号:25221327
- 上传时间:2023-06-06
- 格式:DOCX
- 页数:18
- 大小:681.23KB
SqlserverAlwayson高可用性方案.docx
《SqlserverAlwayson高可用性方案.docx》由会员分享,可在线阅读,更多相关《SqlserverAlwayson高可用性方案.docx(18页珍藏版)》请在冰豆网上搜索。
SqlserverAlwayson高可用性方案
Sqlserver2012Alwaysoi高可用性方案
编制
日期
2015-09
审核
日期
批准
日期
发布
实施
变更记录
版本
修订时间
修订人
修订类型
修订章节
修订内容
V1.0.0
2015-09
:
龚新艳
A
创建
*修订类型分为A-ADDEDM-MODIFIEDD-DELETED
注:
对该文件内容增加、删除或修改均需填写此记录,详细记载变更信息,以保证其可追溯
性
1需求分析
1.1背景说明3
1.2系统目标与系统边界4
2AlwaysOn高可用性配置
2.1环境5
2.2操作系统安装及配置5
2.32008故障转移群集部署….6
2.4AlwaysOn部署:
:
:
:
•:
……
3数据库备份
3.1AlwaysOn在主服务器上面进行数据库完全备份和差异备份10
3.2查看主服务器备份文件10
4模拟故障转移切换节点
4.1在主节点实施故障转移策略11
4.2将节点sql03部署在异地机房,选择异步提交,允许>10ms延时12
4.3读写分离的故障转移模式.12
5灾备系统测试
5.1模拟上海数据中心的客户数据库发生故障.12
5.2模拟上海数据中心的硬件发生故障12
5.3模拟上海数据中心的数据丢失.12
5.4模拟上海数据中心存储设备有故障.13
5.5灾备检测工具DBCC••….13
11需求分析
1.1背景说明
AlwaysOn利用了Windows故障转移群集的健康监测和自动故障转移的特性,因此它必须建
立在Windows故障转移群集之上。
但是和SQLServer群集不同的是,可用性组里的数据库并
不是一定要求存放在共享存储(SharedDisk)上的,它们也可以存储在本地磁盘上。
另外,
可用性组是以用户数据库的集合为单位进行健康检测和故障转移的,而不像SQLServer群集
那样是以整个实例为单位。
AlwaysOn具有以下这些关键特性:
1.像群集一样,AlwaysOn支持故障转移,但是它具有其独特的特点:
・多个用户数据库可以一同进行故障转移。
这对要同时使用多个用户数据库的应用,
例如MicrosoftSharePoint,会很有帮助。
・提供一个虚拟的服务器网络名,无论哪个服务器是当前的主服务器,客户端都可以
使用统一的虚拟服务器名进行连接。
•具有三种故障转移模式:
自动,手动和强制,用户可以选择发生故障切换的条件。
・一个主服务器可以对应最多达4个辅助服务器(总共5个服务器)。
发生故障时可
以切换到任意一个辅助服务器上。
・有Dashboard可用于监视AlwaysOn的运行状态。
有丰富的信息可用于故障诊断(DMV,性能计数器,扩展事件日志等)
•得益于WindowsServer2008群集,可以实现多站点的部署。
主服务器和辅助服务器
之间可以在物理上相隔很远。
2.像镜像和日志传递一样,AlwaysOn在辅助服务器上有数据库的另外一份拷贝。
所不同
的是,这份拷贝可以支持更多的只读功能。
*每个辅助服务器上都有一份数据的拷贝,可以使服务器上的数据拷贝和主服务器上
的数据完全同步。
*辅助服务器可用于只读的访问请求。
*辅助服务器可以执行备份和DBCC命令。
•在某些配置情况下,客户端的只读请求可以被自动定向到辅助服务器。
*可以自动修复某些类型的数据页面损坏问题。
*主服务器和辅助服务器之间的数据会被加密和压缩,提高了安全性又降低了网络流量。
通过上面这些特性,相信你已经很清楚地看到,AlwaysOn集合了许多以往SQLServer高可用和灾难恢复技术的优点,同时又具有自己独特的功能。
这些特性不但保证了SQLServer更高
的可用性,而且还实现了一定程度上的负载均衡,减轻了SQLServer主服务器的压力。
1.2系统目标与系统边界
通过高可用性AlwaysOn方案实现负载均衡,读写分离,减轻sqlserver主服务器的负担,为灾难恢复提供有效保障。
2AlwaysOn高可用性配置
2.1环境
1、服务器:
准备3台服务器SQL01,SQL02,SQL03。
2、操作系统:
windows2008R2SP2或者以上版本。
3、数据库:
Sqlserver2012。
2.2操作系统安装及设置
1、在3台服务器上均安装操作系统windows2008R2,并分别设置计算机名为:
SqlO1、SQL02、
sql03,分别设置IP为10.0.0.11,10.0.0.12,10.0.0.13.子网掩码都是255.255.255.0.默认网关是10.0.0.251.
LL-P丸掩网«
U4网认RIP子默-
■,:
.12
・・=毋石・25£・2殆卫
-.:
1S.6.0.251
J
2、在Sql01、
SQL02、sql03上开启功能
.NET3.5SP1。
f直看妄装在此朋劳器上功税的状态,以屋济加或删晞功能£
s)T^r
a功能餐套
4功談:
已妄装T个〔共釀个)
故暉转移辞集远程眾劳零营理工具
角色菅理工具
阳服务器CHS)工星功龍菅理工具
故障转移群集工具
EMP服务
SHUT服务
3H"J'OI提供程犀
Telnet喜户堆
Isluel.服务器
Aindo^s诳程敷活服脅
遊現檯型
■HTT坏境酉遷曲
HITFramework3,5.1功能
.METFramawcrk35.1
忙F徹署
HTH數活
非皿瓏邀舌
3、在SqlOl、SQL02、sql03上安装Sqlserver2012。
4、在Sql01服务器上建立域服务HMD.com、并将Sql01、SQL02、sql03的DNS设置为
10.0.0.20,然后加域HMD.com。
2.3windows2008故障转移群集部署
1、以HMD.com\administrator域帐户登录Sql01、SQL02、sql03,并添加故障转移集群功
台匕
冃匕。
2、在SqlO1、SQL02、sql03中任一台机上创建群集,并将SqlO1、SQL02、sql03台服务器
添加进去、群集名称为,群集IP为10.0.0.20。
2.4alwayson部署
1.启动AlwaysOn高可用性功能
XE”测EH)
•♦U*•'i)d
命理It
J«XU JMXWnw«R4U13Q)■量亦fUhtCfotoW$ 4M ♦J.CQiUwMU斗w$5Qi%RyEKmr^ I录VH.Srvd s# w Cm** JEU杼 ^£fe€QLb*rwrJkA«l>VI[V€. 正霍总洛 iwwUw*imgJ 迁也[悔 詡Iwi'tw1- 1U1? 鼻&s™*PI财倔0^.g iQllQLi11*夢丹尸C3wr^ *上 ew WTg^W\L *nc •睥 C2MI SOU &e GJMfTA0^>4mm. iMd •E G£M(TRbO\fl4MHt- PX M IM 2.附加SQL数据库 3.AlwaysOn高可用添加节点 指定可用性组名称: sqlalwayson 分别添加副本服务器SQL02\SQL03 +F+田十M+田田 Homedo(已同涉) |HnedoSasedata.(已同步) IHomedoConfieure{已同涉〕|HowedoTinance(ERjh).JHomedoLog(已同歩) IHQmadoHembflr〔已同歩1 IHomedoOrder(已同歩) IHomadoOth^r(已同歩〕 |HawedoTroductI已同歩) El(JHontdoTrajact(已同歩〕+|HofnadoScfi)(已同歩) FM」RefportSarvtr1+]iIRerartServerTemiiDBA一l立全性上二4腮劳器对象时一1亘制 B_iAlwaysOit高可用性 冋LJ可屈性组 -isqlflli/iyEon生要: B 口可用性制玄 ISQLJO1住要)i33L02mti)a^L03〔辅助〕LJ可用性埶攥库 $Ho爪电d® L_^.Hdm电daB髯昌总d販t飢jHomedcsCon£igureAHornedoFinance』HcmedoLog£HomitdloM*mb«r *HomiedoOrder #HomiecloOlther』HomedoProduct丄Hom-tdloPro丿电农七0HomiedoScm _J奇用性组f贞听器skill's! enar 01管理 El」Ixitegrat1onSerVIces口录 HJ,沁£^rver代理 3数据库备份 3.1在辅助服务器sql02上面进行数据库完整备份和日志备份 AlwaysOn在辅助服务器sql02上面进行数据库完整备份和事物日志备份。 3.2查看主服务器备份文件有效性。 AlwaysOn为了减轻主服务器的压力,选择在辅助服务器sql02上面进行数据库完整备份 和事物日志备份。 备份频率分别是: 每周进行一次数据库完整备份,每半小时进行一次事物日志备份。 4模拟故障转移切换节点 4.1在主节点实施故障转移策略 u—Srtfj .一iAlifriyiOn窩可用i性 □LU可用性组 sqLal.wayson生要) 曰U可用性畐悴 jjSQLO1住更〕召SQLO2購助)3曲S3哺助) 右键故障转移 ■故障转移可用+t组: aqlalwayion 112 简介 选释前主副本 连接到副本 结果 执行此口J用性组的计域故障轻袴• 故陣蜡移時使现育辅艮墟库成为此可用性组的新主副王「 .B8.竄餐Hn_若■: 爲書本d 不再显示此页①)。 下一歯0J)》|| 当前主副本: SQLOL 主副本状壶: 同步抿交和联机仲裁状态: 标;隹伸栽 选择劭主 服务器实例 可用性欖式 ■ 同歩援交 厂 seiu3 同爭提交 手动 选择副本SQL02作为新的主副本。 4.2将节点sql03部署在异地机房,选择异步提交,允许>10ms延时 当机房sql01,sql02服务器均发生故障灾难时,手动将sql03故障转移切换成主副本。 4.3读写分离的故障转移模式 主节点sql01作为写应用,辅助节点sql02作为同步提交的故障转移只读应用,延时 <10ms.当主节点sql01发生灾难故障时,自动切换到sql02辅助节点作为新的主节点接入写应用。 Sql03就变成辅助节点提交接入只读应用。 5灾备系统测试 5.1模拟上海数据中心的客户数据库发生故障 (一)目标: 1分钟之内将所有上海数据中心的客户数据库转向北京数据中心的客户数据库。 (二)测试步骤: 1.将homeother数据库设置为脱机。 2.立即访问电商网站发现相关页面发生系统性功能失效。 3.一分钟内再次访问电商网站发现故障已恢复。 4.一切恢复正常运转。 5.2模拟上海数据中心的硬件发生故障 (一)目标: 1分钟之内将所有上海数据中心的客户数据库转向北京数据中心的客户数据库。 (二)测试步骤: 1.将上海数据中心的服务器sql01内存条拆除。 2.立即访问电商网站发现相关页面发生系统性功能失效。 3.一分钟内再次访问电商网站发现故障已恢复。 4.一切恢复正常运转。 5.3模拟上海数据中心的数据在14: 31分人为删除丢失数据 (一)目标: 3分钟之内将所有上海数据中心的客户数据库转向北京数据中心的客户数据库。 (二)测试步骤: 1.将上海数据中心的重要订单数据在14: 31分删除一条。 2.立即访问电商网站该客户的订单数据发现缺失。 3.将最后一次的完整备份和14: 31分的日志备份恢复即可。 3.三分钟内再次访问电商网站发现故障已恢复。 4.一切恢复正常运转。 5.4模拟上海数据中心存储设备有故障 (一)目标: 1分钟之内将所有上海数据中心的客户数据库转向北京数据中心的客户数据库。 (二)测试步骤: 1.将上海数据中心的服务器sqlO1硬盘拆除。 2.访问电商网站发现相关页面发生系统性功能失效。 3.一分钟内再次访问电商网站发现故障已恢复。 4.一切恢复正常运转。 5.5灾备检测工具DBCC 在危急时刻,数据库一致性检测(DBCC可能是你最重要的工具。 它们包括: 检测表和相关目录的完整性;检测整个数据库;检测数据库页的完整性;重建任何指定表中 的目录;包括以下扩展: CheckDB检测整个数据库的一致性,是检查数据库破坏的基本方 法。 CheckTable检测特定表的问题。 CheckAlloc检测数据库的单个页面,包括表和目录。 Reindex: 重建某个特定表的目录。 CacheStats说明当前存储在内存缓存中的对象。 DropCIeanBuffers释放当前存储在缓冲区中的所有数据,这样你就可以继续进行检测,而不必使用前面的结果。 Errorlog: 删除(缩短)当前日志。 你可以考虑确定包含这个命令的 操作的时间,一个星期左右运行一次。 FlushProcInDB清除特定数据库的存储过程缓存(使 用它的数据库id而不是名称)。 使用下列代码找出id: SELECTdbidFROMmaster.dbo.sysdatabasesWHEREname=' IndexDefrag: 减少目录分裂,但不给文件加锁,以便用户能够继续应用数据库。 CheckCatalog检测特定数据库表及表之间的一致性(后者意味着使用外键等。 ) DBCC命令分类 维护语句DBCCDBREINDEX重建指定数据库中表的一个或多个索引 DBCCDBREPAI除去损坏的数据库 DBCCINDEXDEFRA整理指定的表或视图的聚集索引和辅助索引碎片 DBCCSHRINKDATABASE缩指定数据库中的数据文件大小 DBCCSHRINKFIL收缩相关数据库的指定数据文件或日志文件大小 DBCCUPDATEUSAG报告和更正sysindexes表的不正确内容, 该内容可能会导致通过sp_spaceused 系统存储过程产生不正确的空间使用报表 状态语句DBCCINPUTBUFFERE示从客户端发送到MSSQLServer的最后一个语句 DBCCOPENTRAN如果在指定数据库内存在最旧的活动事务和最旧的分布和非分布式复制事务,则显示与之相关的信息。 只有当存在活动事务或数据库包含复制信息时,才显示结果。 如果没有活动事务,就显示信息性消息 DBCCOUTPUTBUFFER以十六进制或ASCII格式返回指定系统进程ID(SPID)的当前输出缓 冲区 DBCCPROCCACH以报表形式显示有关过程高速缓存的信息 DBCCSHOWCONTI(显示指定的表的数据和索引的碎片信息 DBCCSHOW_STATISTIC显示指定表上的指定目标的当前分布统计信息 DBCCSQLPER提供有关所有数据库中的事务日志空间使用情况的统计信息 DBCCTRACESTATU显示跟踪标记的状态 DBCCUSEROPTION返回当前连接的活动(设置)的SET选项 验证语句DBCCCHECKALL0检查指定数据库的磁盘空间分配结构的一致性 DBCCCHECKCATALOG查指定数据库中的系统表内及系统表间的一致性 DBCCCHECKCONSTRAIN检查指定表上的指定约束或所有约束的完整性 DBCCCHECKD检查指定数据库中的所有对象的分配和结构完整性 DBCCCHECKFILEGROU检查指定文件组中的所有表(在当前数据库中)的分配和结构完整性 DBCCCHECKIDEN检查指定表的当前标识值,如有必要,还对标识值进行更正 DBCCCHECKTAB检查指定表或索引视图的数据、索引及text、ntext和image页的完整性
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SqlserverAlwayson 可用性 方案