健康模型概述 在成功部署AG之后,跟踪和维护健康状况是很重要的. 1.AG健康模型概述 AG的健康模型是基于策略管理(Policy Based Management PBM)的.如果不熟悉这个特性,可以查看:使用基于策略的管理来管理服务器 PBM的核心是策略,策略有以下部分组成: 1.目标,策略运行在有一组或者一个对象上. 2.条件,条件是bool表达式,指定目标的状态.如果条件false,就会发生错误. 3.归类,归类是对策略的简单归类 一旦你定义了一个策略,PBM会提供引擎来执行这些策略,获…
健康模型扩展 第一部分已经介绍了AlwayOn健康模型的概述.现在是创建一个自己的PBM策略,然后设置为制定的归类.创建这些策略,创建之后修改一下配置,dashboard就会自动评估这些策略. 场景,你有一个异步副本,当被primary落下太多的时候想要在dashboard上显示.一下是创建策略放入健康模型的过程. 1.定义条件 连接到SSMS,打开到条件,右击新建. 设置条件名,然后选择相应的方面.方面是逻辑属性的集合,我们使用这些属性来构成bool表达式这样来定义条件.AlwayOn相关的方…
AG排查和监控指南 1. 排查场景 如下表包含了常用排查的场景.根据被分为几个场景类型,比如Configuration,client connectivity,failover和performance. Scenario 笔记 Scenario Type Description Troubleshoot AlwaysOn Availability Groups Configuration (SQL Server) 排查:AG配置 Configuration 提供了一些典型的配置AG实例发生问题的…
DMV和系统目录视图 这里主要介绍AlwaysON的动态管理视图,可以用来监控和排查你的AG. 在AlwaysOn Dashboard,你可以简单的配置的GUI显示很多可用副本的DMV和可用数据库通过右击各自的表头并且选择你要加入和隐藏的DMV. 更多关于DMV信息查看: AlwaysOn Availability Groups Dynamic Management Views and Functions (Transact-SQL).查看更多AG目录视图查看:AlwaysOn Availabi…
排查AG配置 本文主要用来帮助排查在AG配置时出现的问题,包括,AG功能被禁用,账号配置不正确,数据库镜像endpoint不存在,endpoint不能访问. Section Description AlwaysOn Availability Groups Is Not Enabled 如果实例没有启动AG特性,实例就不支持任何AG相关的功能 Accounts 在SQL Server在运行的情况下,正确的账号配置 Endpoints 诊断关于实例的镜像endpoint问题. System name…
http://msdn.microsoft.com/en-us/library/azure/dn249504.aspx Tutorial: AlwaysOn Availability Groups in Azure (GUI) 28 out of 55 rated this helpful - Rate this topic Updated: October 23, 2013 Note For the PowerShell-based tutorial of the same scenario,…
使用Powershell监控AlwayOn健康 1.基本命令概述 AlwayOn Dashboard是很有用的查看整体AG健康状况的工具.但是这个工具不是用于7*24监控的.如果应用程序夜间发送严重的问题,Dashboard并不会有任何提示.那么可以使用Powershell命令来获取并通过SQL Agent调用创建告警. 1.1 Dashboard 首先创建一个AG.这个AG被配置为自动故障转移.查看这个AG的dashboard 通过查看AG的状态发现,AG状态不对.而且问题是来自于WSNAVE…
AlwaysOn健康诊断日志 为了监控primary可用副本的健康状况,SQL Server资源DLL使用SQL Server2012的过程sp_server_diagnostics. SQL Server resource DLL维护了一个专用的连接到SQL Server实例,通过这个SQL Server实例定期的发送健康诊断信息到SQL Server resource DLL.健康诊断信息与集群中的AG中的failover policy耦合,被用来确定集群是否重启或者故障转移.这个过程是新S…
监控AG性能 AG的性能的性能方面,在关键任务数据库上进行语句级维护性能是很重要的.理解AG如何传输日志到secondary副本对评估RTO和RPO,表明AG是否性能不好. 1. 数据同步步骤 为了评估是否有性能问题,首先需要理解同步过程.性能问题可能出现在同步过程的任何一个环节,瓶颈的定位可以让你深入的理解问题.以下图标演示了数据通过过程: Sequence Step Description Comments Useful Metrics 1 Log Generation 日志数据被刷新到磁盘…
排查:Primary上的修改无法在Secondary体现 客户端进程在primary上修改成功,但是在Secondary上却无法看到修改结果.这个case假设你的可用性组有同步的健康问题.很多情况下这个情况会在几分钟之后自动解决. 如果几分之后依然看不到,那么可能在同步的工作流上有瓶颈问题.这个瓶颈会因为是不是同步提交的而不同. Commit Mode Possible Bottleneck Explanation Synchronous Commit Primary上长运行事务 seconda…
CLUSTER.LOG(AG) 作为故障转移资源,在SQL Server和windows故障转移集群服务的资源DLL(hadrres.dll)之间有额外的内部交流,DLL无法被SQL Server监控.WSFC log,CLUSTER.LOG可以诊断WSFC集群或者SQL Server Resource DLL的问题. 以下演示了SQL Server和windows集群管理的关系.windows集群管理用来初始化AG资源创建,释放或者状态修改. 1.生产集群日志 有2个方式生产集群日志: 1.在…
AG扩展事件 SQL Server 2012定义了一些关于AlwaysOn的扩展事件.你可以监控这些扩展事件来帮助诊断AG的根本问题.你也可以使用以下语句查看扩展事件: SELECT * FROM sys.dm_xe_objects WHERE name LIKE '%hadr%' 1.AlwaysOn健康(AlwaysOn_health)会话 AlwaysOn_health扩展会话当你在创建AG并捕获AlwaysOn相关事件的子集.这个会话被配置为有用的,方便的工具来帮助你开启调试AG.创建A…
AlwaysOn Ring Buffers 一些AlwaysOn的诊断信息可以从SQL Server ring buffers.或者从sys.dm_os_ring_buffers.ring buffer在SQL Server启动的时候被创建,SQL Server系统为内部诊断记录警告. 通过以下查询获取所有事件记录 SELECT * FROM sys.dm_os_ring_buffers WHERE ring_buffer_type LIKE '%HADR%' 为了让数据更加可控,可以通过日期,…
排查:AG超过RPO 在异步提交的secondary上执行了切换,你可能会发现数据的丢失大于RPO,或者在计算可以忍受的数据都是超过了RPO. 1.通常原因 1.网络延迟太高,网络吞吐量太低,导致Primary的日志堆积 2.磁盘IO瓶颈导致LOG固化速度降低 2. 网络延迟太高,网络吞吐量太低,导致Primary的日志堆积 很多超过RPO的原因是日志发送到secondary副本不够快. 原因: Primary副本在日志发送启动了流量控制,因为日志发送超过了最大运行的非通知信息的量.直到这些信息…
AlwaysOn等待类型 当排查AlwaysOn延迟,等待统计信息可以在DMV中查看累计的AlwaysOn等待类型. 查看AlwaysOn等待类型 SELECT * FROM sys.dm_os_wait_stats WHERE wait_type LIKE '%hadr%' ORDER BY wait_time_ms DESC 使用一下语句,获取捕获扩展事件,等待类型. CREATE EVENT SESSION [alwayson] ON SERVER ADD EVENT sqlos.wait…
排查:AG超过RTO 自动故障转移或者手动转移之后,没有数据都是,你可能会发现切换时间超过了你的RTO.或者当你评估切换时间同步提交secondary副本,发现超过了你的RTO. 1. 通常原因 通常引起故障转移超过RTO的原因: 1.报表负荷堵塞了Redo线程. 2.因为资源争用,Redo线程被落下. 2. 报表负荷堵塞了Redo线程 Redo线程在secondary副本被一个只读长运行语句堵塞. 原因: 在secondary副本,只读查询获得Sch-s锁,这些sch-s锁会堵塞redo线程获…
SQL Server错误日志(AG) SQL Server错误日志会记录影响AG的时间,比如: 1.和Windows故障转移集群交互 2.可用副本的状态 3.可用数据的状态 4.AG endpoint的状态 5.AG Listener的状态 6.SQL Server resource DLL和SQL Server实例的租用状态 7.AG的错误事件 出现以下状态就需要检查错误日志: 1.无法连接到可用性数据库 2.非预料的AG故障转移 3.AG的Resolving状态不可预期 4.AG在不其确定的…
前言:   本节是整个系列的重点文章,到现在,读者应该已经对整个高可用架构有一定的了解,知道独立的SQL Server实例和基于群集的SQL Server FCI的区别.上一节已经介绍了如何安装SQL Server Failover Cluster Instance(FCI)及其要求. 本节会深入AlwaysOn 可用组的内容,以演示部署为主线,包括如何启用只读路由和使用AlwaysOn组侦听器.并在最后演示故障转移. 在前面文章中对FCI和AlwaysOn可用组有了一定的平台要求.这里对其进行…
理解ORM框架 概述 O:(objects)->类和对象. R:(Relation)->关系,关系数据库中的表格. M:(Mapping)->映射. 作用: 可以通过类和类对象就可以操作表格中的数据 可以通过我们设计的类自动生成数据库中的表格 通过方便的配置就可以进行数据库的切换. 连接mysql数据库的方法 1.修改默认的使用数据库 进入项目的setting.py文件DATABASES = { 'default':{ "ENGINE":"django.db…
http://blog.csdn.net/pipisorry/article/details/50931274 spark基本概念 Spark一种与 Hadoop 相似的通用的集群计算框架,通过将大量数据集计算任务分配到多台计算机上,在性能和迭代计算上很有看点,提供高效内存计算,现在是Apache孵化的顶级项目. Spark 由加州大学伯克利分校 AMP 实验室 (Algorithms, Machines, and People Lab) 开发,可用来构建大型的.低延迟的数据分析应用程序.Spa…
集群类型 LB: Load Balancing,负载均衡 HA:High Availability, 高可用 HP:High Performance, 高性能   负载均衡 负载均衡设备 Hardware: F5,BIG IP Citrix,Netscaler A10 最便宜 Software: 四层 性能高,支持的特性少 LVS 中国 七层:反向代理,性能略次于四层,支持高级特性 nginx 俄罗斯 http.smtp.pop3.imap haproxy 主要应用场景http.其他tcp(my…
视觉格式化模型 块级元素(块框).行内元素(行内框),可以使用display改变生成的框的类型,display:block让行内元素(比如<a>)表现的跟块级元素一样,display:none让生成的元素没有框,框及其里面的内容不再显示,不占用文档中的空间. CSS的三种基本定位机制:普通流.浮动.绝对定位.除非指定,默认使用普通流,元素框的位置由元素在(X)html中的位置决定. 块级元素从上往下一个接一个排列,框的垂直距离由框的垂直空白边计算得出. 行内框在一行中水平布置. 相对定位 通过…
http://blog.csdn.net/kevinsqlserver/article/details/7886455…
因为篇幅原因,AlwaysOn可用性组被拆成了两部分:理论部分和实战部分.而实战部分又被拆成了准备工作和AlwaysOn可用性组搭建. 三篇文章各自的链接: SQL Server ->> 高可用与灾难恢复(HADR)技术 -- AlwaysOn(理论篇) SQL Server ->> 高可用与灾难恢复(HADR)技术 -- AlwaysOn(实战篇)之建立活动目录域.DNS服务器和Windows故障转移群集(准备工作) SQL Server ->> 高可用与灾难恢复(H…
从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html第二篇http://www.cnblogs.com/lyhabc/p/4682028.html第三篇http://www.cnblogs.com/lyhabc/p/4682986.html第四篇http://www.cnblogs.com/lyhabc/p/6136227.html 这一篇是从0开始搭建SQL Serve…
Windows cluster要求同一个cluster中的所有windows版本都是相同的,这样就出现一个问题,当我们要将对windows进行升级时,(例如从windows 2008 R2升级到windows 2012)不得不搭建一套新的windows cluster.你可以选择使用新的硬件搭建,或者将现有windows cluster中的节点一台一台的evict掉,重装/升级系统后加入到新的windows cluster中.具体的cluster升级方案我就不在这里讨论.马上进入主题: SQL…
本文属于SQL Server AlwaysON从入门到进阶系列文章 本文原文出自Stairway to AlwaysOn系列文章.根据工作需要在学习过程中顺带翻译以供参考.系列文章包含: SQL Server AlwaysON从入门到进阶(1)--何为AlwaysON? SQL Server AlwaysON从入门到进阶(2)--存储 SQL Server AlwaysON从入门到进阶(3)--基础架构 SQL Server AlwaysON从入门到进阶(4)--分析和部署Windows Ser…
http://msdn.microsoft.com/en-us/library/azure/jj870962.aspx Microsoft Azure virtual machines (VMs) with SQL Server can help lower the cost of a high availability and disaster recovery (HADR) database solution. Most SQL Server HADR solutions are suppo…
因为篇幅原因,AlwaysOn可用性组被拆成了两部分:理论部分和实战部分.而实战部分又被拆成了准备工作和AlwaysOn可用性组搭建. 三篇文章各自的链接: SQL Server ->> 高可用与灾难恢复(HADR)技术 -- AlwaysOn(理论篇) SQL Server ->> 高可用与灾难恢复(HADR)技术 -- AlwaysOn(实战篇)之建立活动目录域.DNS服务器和Windows故障转移群集(准备工作) SQL Server ->> 高可用与灾难恢复(H…
你正在使用 SQL Server 的哪个版本? 贴士:作为一个SQL Server数据库管理者或维护.支持人员,应该会经常问自己这样一个问题:我当前SQL Server版本号是?当前版本已经有的累计更新.安全更新包有哪些?这么多包要选哪个?等等,会遇到类似心烦的问题.这里给大家梳理一下关于如何方便的获取SQL Server数据库版本信息,希望在日常运维中有所帮助. 介绍方法前,版本信息中相关名词的概念稍作解释,便于版本信息解读   1. The edition 版本,如:企业版.标准版等 2.…