转自:https://www.cnblogs.com/zhijianliutang/p/4476403.html

相关系列:

  https://www.cnblogs.com/zhijianliutang/p/5001142.html

SQL Server自动化运维系列——关于数据收集(多服务器数据收集和性能监控)

 

需求描述

在生产环境中,很多情况下需要采集数据,用以定位问题或者形成基线。

关于SQL Server中的数据采集有着很多种的解决思路,可以采用Trace、Profile、SQLdiag、扩展事件等诸多方案。

几种方案各有利弊,其中从SQL Server2012版本开始,微软的开始各种整合这些采集方案,力推扩展事件。

对于上述的数据采集只是一种实现手段,对于采集完数据的存储没有统一的规范,并且对于多服务器的数据采集及汇总没形成统一的规范。

本篇实现

1、通过SQL Server自带的数据采集器实现多服务器的性能采集

2、利用SQL Server数据采集数据仓库(DW)形成运维报表

3、通过灵活性的配置方式,实现不同服务器不同采集点的数据收集

<1>基础配置

以前,有个同事说SQL Server的自动化运维太弱了,并且定位问题也比较麻烦,需要记住各种系统的DMV....各种日志查找....你看看人家MySQL强大的图形化界面提示,让你一眼就能发现当前数据库所存在的问题。

的确,来看看MySQL所提供的图形化的运维界面

是他娘的帅气,把整体的平台给划分的很详细:网络、实例状态、存储状态。

而且还有看上去很优雅的图形化展示界面。

上述界面所反映的内容,对于问题的查找是相当便利的,在SQL SERVER中就找不到同样的模块。如果有经验的DBA会通过任务管理器、性能监视器、然后配合系统自带个一些个DMV...进行分析....看上去复杂并且很高深的样子。

其实,在SQL SERVER中,也有类似的功能模块,并且更灵活的实现多台服务器共同采集,下面,我们来看一下详细的使用和配置流程。

在数据收集上,右键选择“配置管理数据仓库”

SQL SERVER为了能够支撑多台服务器的数据采集任务,鉴于数据量的庞大和用于数据分析的重要性,所以自己创建了一个用于数据分析的数据仓库(DW)

这里选择好实例,创建好数据仓库就可以。

提示:为了避免影响生产系统的性能,一般这里建议采用另外一台空闲的实例,专门用于数据采集和性能分析。

我这里演示,就采用本地的实例进行配置,然后下一步:

到这一步是管理数据仓库的用户权限,可以配置用户权限,三种权限级别:管理员、可读、可写;

很简单,配置完成直接下一步,然后就完成了该数据采集的数据仓库的搭建。

<2>基础配置

这一步就是设置数据收集了,简单点讲就是要配置收集的数据项有哪些。

同样是,数据采集上右键,然后选择“设置数据采集”

然后,下一步就是连接数据仓库,选择缓存目录

然后,下一步就可以完成,这里SQL SERVER同样的内置了一套数据搜集的模板,会为你收集全部的基本信息,当然,也可以自定义,文章后面介绍。

来看默认的数据采集的收集项

自带的默认模板中,分为了查询统计信息,其实这个就对应的实例状态、磁盘存储、服务器活动,除了这下还赠送了一个实用工具信息,这个是用来灵活配置其它几个收集项的。

可以随时的根据个人喜好启动、停止数据收集动作,酌情采用。

并且,也可以自己配置收集动作的时间间隔或者状态值。

并且,SQL Server贴心的给内置了一下计划模板,基本涵盖了所有的应用场景。

然后,你就放心的让它自己去采集就可以了。不爽的时候随时停止就可以。

剩下来的事就是查看采集数据了,鉴于MYSQL提供了如此精美的图像化展现方式,SQL SERVER同样也有。

就是它了

看上去是不是也有那么点意思了,包括:CPU、内存、磁盘IO、网络...

并且顺带着SQL server等待、SQL语句执行情况等

然后,针对性能调优的一些语句,也给出了排序包括CPU、运行时间、IO总数、物理读取、逻辑读取等

当然,我本地的机器本身采集量就很少,并且运行的T-SQL语句就不多,所以图表工具显示的很空旷。

来看看磁盘存储的

上述内容大体就这些,自己用的时候再行挖掘吧,本篇提供思路。

如果经验老道的DBA,我估计上述语句通过系统的DMV都可以查看的到,但是那仅限于有经验的,上述方案为小白降低了维护数据库的成本。

并且可以在多台服务器中进行采集,集中处理问题。

结语

在本篇介绍利用SQL Server自带的数据收集工具进行数据库运维。关于自定义的数据收集项设置,后一篇介绍吧。

另外关于数据收集的DW有很多很有用的内容,如果对于大型的平台性能运维,可以借此扩展,形成自己的运维平台。

关于SQL Server自动化运维和检测的内容很广泛,其中很多都是从日常的经验中出发,一步步的从手动到自动的过程。

如果您看了本篇博客,觉得对您有所收获,请不要吝啬您的“推荐”。

【转】sql server数据收集和监控的更多相关文章

  1. 通过Python实现对SQL Server 数据文件大小的监控告警

    1.需求背景 系统程序突然报错,报错信息如下: The transaction log for database '@dbname' is full. To find out why space in ...

  2. SQL Server添加MDW性能监控报表(转载)

    10.2 Data Collector与MDW Data Collection功能是SQL SERVER 2005版本提供的数据库监控报表的功能,通过定时地对数据库的语句运行情况,服务器各种资源的监控 ...

  3. windows系统与SQL SERVER 2008数据库服务性能监控分析简要

    软件系统性能测试体系流程介绍之windows系统与SQL SERVER 2008数据库服务性能监控分析简要 目前大部分测试人员对操作系统资源.中间件.数据库等性能监控分析都是各自分析各自的监控指标方式 ...

  4. SQL server数据缓存依赖

    SQL server数据缓存依赖有两种实现模式,轮询模式,通知模式. 1  轮询模式实现步骤 此模式需要SQL SERVER 7.0/2000/2005版本以上版本都支持        主要包含以下几 ...

  5. [SQL]SQL Server数据表的基础知识与增查删改

    SQL Server数据表的基础知识与增查删改 由张晨辉(学生) 于19天 前发表 | 阅读94次 一.常用数据类型 .整型:bigint.int.smallint.tinyint .小数:decim ...

  6. Sql Server数据的加密与解密

    Sql Server数据的加密与解密 在sql server中,我们如何为数据进行加密与解密,避免使用者窃取机密数据? 对于一些敏感数据,如密码.卡号,一般不能使用正常数值来存储.否则会有安全隐患.以 ...

  7. delphi 2010 导出sql server 数据到DBF乱码问题

    近日,由于业务需要导出sql server 数据到DBF文件,要查询多表记录,并适当处理后生成导出DBF文件,系统使用delphi2010平台开发. 首先按要求在VFP里创建DBF表,字段数有240个 ...

  8. SQL server数据库内置账户SA登录设置

    SQL server数据库内置账户SA登录不了   设置SQL Server数据库给sa设置密码的时候  提示18456 解决步骤:   第二步:右击sa,选择属性: 第三步:点击状态选项卡:勾选授予 ...

  9. SQL Server 复制 - 发布订阅(SQL Server 数据同步)

    原文:SQL Server 复制 - 发布订阅(SQL Server 数据同步) SQL Server的同步是通过SQL Server自带的复制工具来实现的,分发布和订阅2大步. A,复制-发布 发布 ...

随机推荐

  1. Iconfont 阿里图库使用(小程序和H5)

    前言 现在前端发展的太快,前端优化也是,图片也是被近2年来比较火的就是阿里图库取代了,不管小程序还是H5 都在用 好了,那么就介绍下如何使用吧 阿里图库 当然需要你到阿里官网 http://www.i ...

  2. iOS自定义键盘的简单实现

    自定义键盘类VolumeInputKeyboardView: VolumeInputKeyboardView.h文件: #import <UIKit/UIKit.h> NS_ASSUME_ ...

  3. Linux下lazarus交叉编译 win32[win64]

    环境 vmvare + deepin Linux64 + lazarus2.0.6 参考:https://wiki.freepascal.org/Cross_compiling_for_Win32_u ...

  4. vue - 登录验证与权限控制

    描述具体问题 需求 业务系统通常需要登录才能访问受限资源,在用户未登录情况下访问受限资源需要重定向到登录页面: 多个业务系统之间要实现单点登录,即在一个系统或应用已登录的情况下,再访问另一个系统时不需 ...

  5. 关于:基于http协议大文件断点续传上传至web服务器

    关键部分 前端用file.slice()分块 前端用FileReader获取每一分块的md5值 后端用MultipartFile接受分块文件 后端用FileOutputStream拼装分块文件 话不多 ...

  6. php上传大文件

    1.使用PHP的创始人 Rasmus Lerdorf 写的APC扩展模块来实现(http://pecl.php.net/package/apc) APC实现方法: 安装APC,参照官方文档安装,可以使 ...

  7. Android 内存泄漏优化总结

    1,验证是否为汉字 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 3 ...

  8. Xdebug bad Zend API Version Number

    I am having trouble upgrading xdebug for MAMP. I was running version 2.2.0 and there was a known iss ...

  9. react v16.12 源码阅读环境搭建

    搭建后的代码(Keep updated): https://github.com/lirongfei123/read-react 欢迎将源码阅读遇到的问题提到issue 环境搭建思路: 搭建一个web ...

  10. vue基于element-ui的三级CheckBox复选框

    最近vue项目需要用到三级CheckBox复选框,需要实现全选反选不确定三种状态.但是element-ui table只支持多选行,并不能支持三级及以上的多选,所以写了这篇技术博文供以后学习使用. 效 ...