Alwasyon环境下增加数据文件需要注意的几点

半夜收到报警短信,服务器磁盘空间不足,爬起来检查一番,发现由于索引重建导致,而且该磁盘下仍有自动增长的数据文件,由于该服务器上其他盘符有剩余空间,于是打算将该磁盘下的数据文件限制增长,并新增几个数据文件在其他有空闲空间的磁盘下,于是操作步骤如下:

第一步:检查Alwayson各辅助节点的相同盘符是否同样有磁盘空间(可以使用EXEC master..xp_fixeddrives来查看)

第二步:检查各辅助节点下是否存在对应文件夹,没有的手工创建

第三步:在主节点对数据库上新增数据文件。

三步打完手工,顺便检查了下其他服务器,准备回去梦周公的时候,短信又报警了,Alwasyon数据延迟,而且是在同步模式的辅助节点上延迟,顿时小手一哆嗦,差点把电脑给摔了,立马排查原因,辅助节点磁盘空间充足,对应目录也已创建成功,并且其中一个数据库的新增文件已在辅助节点上创建,但还有一个数据库的新增文件没有创建出来,也是怀疑当前时间索引维护导致大量日志积压从而引起Alwasyon延迟,于是果断关闭主节点上的索引维护,继续使用Alwasyon控制面板观察,发现辅助节点的重做队列大小在逐渐增大,看来关闭索引维护并没啥卵用,继续排查问题。。。

问题的表象是日志重做队列在增大,既然排除主节点“生产”大量日志的情况,那么就是辅助节点“消费”这些日志出现问题,接着排查IO压力,辅助节点IO还算正常,唯一导致IO压力的就一个完整备份作业在执行,完整备份作业,这和日志重做似乎没啥冲突,但是别忘了刚才的操作是新增数据文件,罪魁祸首及时完整备份。由于数据库比较大,完整备份需要花费几十分钟才能完成,为保证完整备份能备份所有数据文件的数据,SQL SERVER会在完整备份期间会阻止对数据库新增文件,而辅助节点上“重做”日志便是对数据库新增文件,于是完整备份“阻塞”日志重做,并给我们一个日志“重做”速率赶不上日志“生成”速率的假象。

总结:在Alwasyon的场景下新增数据文件,不仅要考虑辅助节点上的磁盘空间和对应文件目录的问题,还应该检查一下辅助节点是在运行完整备份,并且在操作结束后,一定要注意检查对应文件是否在辅助节点上创建,并Alwayson的同步状态是否正常。

PS: 如果辅助节点处于异步模式,且在辅助节点上没有对应盘符或文件目录,辅助节点重做"新增文件"这部分日志便会出错,导致对应数据库数据库"挂起",处于未同步状态,此时辅助节点不会再向主节点发送"请求",此时观察日志发送队列大小和日志重做队列大小没有任何意义。

--================================================================

大半夜干活不容易,没个妹子提神怎么行

时间: 2024-08-25 22:15:01

Alwasyon环境下增加数据文件需要注意的几点的相关文章

在Teamcenter环境下用数据联邦(Data Federation)技术的应用

Data Federation一般翻译为数据联邦,是一种数据显示(Data Visualisation)技术, 就是把不同系统的数据整合在一起,在一个系统环境下去显示林一个系统数据库中的数据,而不需要预先把从一个系统导入到另一个系统. 这种技术的好处除了不需要数据导入导出之外,还可以保证数据的实时性,可避免数据冗余和不一致. 如果一个企业已经实施了Teamcenter并把它作为产品开发的集成平台.在Teamcenter中去显示其他系统尤其ERP系统中的数据显得非常有必要. 比如一个工程师在更改零

WP8_(windows phone环境下)上传文件从C#到php接口

在windows phone环境下,将手机上的图片上传到服务端(php环境): 注意事项:在上传的地方,头文件中name,例如name= img,则在php服务端处理时 ,需要约定好 存取一致 php:$_FILES['img']['name'],如若两端的name不相同则服务端无法正确获取上传的文件: public class UploadSrv { #region 选择图片   /// <summary> /// 打开照相机 /// </summary> public void

ORA-01653 无法在表空间扩展的解决办法 -- 增加表空间大小或给表空间增加数据文件

转自原文 ORA-01653 无法在表空间扩展的解决办法 -- 增加表空间大小或给表空间增加数据文件 当前系统的数据量越来越大的,昨天还运行正常的数据库,突然无法使用了.经过定位发现是"ORA-01653 " 即表空间满了,在这里简单记录下处理办法,长期来看Oracle是顶不住了,需要尽快切到Hadoop的Hbase里存储数据 参考如下SQL ----查询表空间使用情况--- SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT

oracle11gRAC+DG主库增加数据文件

# 环境 操作系统 $ uname -a Linux jinhu-db02 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux $ cat /etc/redhat-release CentOS release 6.9 (Final) 数据库 BANNER -----------------------------------------------------------

linux环境下deb格式文件转换成rpm格式

以 alien_8.87.tar.gz 为例: 下载.安装 alien_8.87.tar.gz [[email protected] ~]# wget http://ftp.de.debian.org/debian/pool/main/a/alien/alien_8.87.tar.gz [[email protected] ~]# tar zxvf alien_8.87.tar.gz [[email protected] ~]# cd alien [[email protected] alien

vs2010环境下生成dll文件

vs2010环境下生成dll文件 1,新建win32工程,选中DLL项目,如下图:2,分别添加头文件和cpp文件 #ifndef LIB_H#define LIB_Hextern "C" int _declspec(dllexport)add(int x,int y);    // 声明为C编译.链接方式的外部函数#endif #include "stdafx.h"int add(int x,int y){    return x+y;} 3,新建win32控制台工

UNICODE环境下读写txt文件操作

内容转载自http://blog.sina.com.cn/s/blog_5d2bad130100t0x9.html UNICODE环境下读写txt文件操作 (2011-07-26 17:40:05) 标签: 杂谈 分类: MFC程序设计 自己动手整理了一下,写了几个函数,用于UNICODE环境下对txt文本文件的操作,针对txt文本的ANSIC编码格式,进行了字符编码格式的转换.***********************************************************

EF 第三篇 生产环境下的数据迁移

前言 本文所谓数据迁移,直白点不如说成数据库升级.虽然大部分带服务器型的应用,所有客户端都是连到同一台服务器上,对这样的生产环境,数据库升级起来不是什么难事,用vs自带的Migration也好,执行sql脚本也好,都比较容易.然而在每家客户现场都要部署一台服务器的应用也不少,如果一家家手工地去升级数据库,那将是一个可怕的工作量.那么对于这样的环境要怎么做到自动升级数据库呢?相信大家也在网上搜了不少了EF关于生产环境下的数据迁移方案,然后99%搜到的都是使用vs自带的Migration命令方式迁移

云计算环境下的数据中心、网络和系统架构

云计算环境下的数据中心.网络和系统架构 对于云计算而言,应着重从高端服务器.高密度低成本服务器.海量存储设备和高性能计算设备等基础设施领域提高云计算数据中心的数据处理能力. 云计算要求基础设施具有良好的弹性.扩展性.自动化.数据移动.多租户.空间效率和对虚拟化的支持.那么,云计算环境下的数据中心基础设施各部分的架构应该是什么样的呢? 1.云计算数据中心总体架构 云计算架构分为服务和管理两大部分.在服务方面,主要以提供用户基于云的各种服务为主,共包含3个层次:基础设施即服务IaaS.平台即服务Pa