sql server日志处理不当造成的隐患详解
事故背景:一大早还在路上,群里陆续有人反馈系统一直报错 “ Unknown error 258 ”,后来查询日志发现错误日志
第一反应是不是数据库连接不够用了?导致超时?但是通过sql查询当时连接也只有40个左右,于是继续排查问题,发现dbserver机器这段时间磁盘io操作特别的高,很不正常,详见下图
发现磁盘io问题,继续查看sqlserver日志,发现原因: “Autogrow of file ‘xxxx_log' in database ‘xxxx' was cancelled by user or timed out after 3398 milliseconds. Use ALTER DATABASE to set a smaller FILEGROWTH value for this file or to explicitly set a new file size.”
发现这种问题因为log日志文件太大了一直没有压缩过,并且创建数据库的时候默认选择了10%的增量来扩大log增量文件,这样日志文件的10%会越来越大从而产生超时高io操作
解决方案:
1、定期清理log文件,防止log文件越来越大
USE [master] GO ALTER DATABASE 数据库名 SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE 数据库名 SET RECOVERY SIMPLE GO USE 数据库名 GO DBCC SHRINKFILE (N'数据库名_Log' , 11, TRUNCATEONLY) GO USE [master] GO ALTER DATABASE 数据库名 SET RECOVERY FULL WITH NO_WAIT GO ALTER DATABASE 数据库名 SET RECOVERY FULL GO
2、修改默认数据库log增量10% 为 500M(看具体情况,一般够了)
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。
上一篇:没有了
栏 目:MsSql
下一篇:SQL Server 通过with as方法查询树型结构
本文地址:https://www.xiuzhanwang.com/a1/MsSql/10276.html
您可能感兴趣的文章
- 01-10SQLServer存储过程实现单条件分页
- 01-10SQL Server 2012降级至2008R2的方法
- 01-10SQLServer中防止并发插入重复数据的方法详解
- 01-10SQL Server数据库定时自动备份
- 01-10SQL Server性能调优之缓存
- 01-10实现SQL Server 原生数据从XML生成JSON数据的实例代码
- 01-10Sql Server 死锁的监控分析解决思路
- 01-10SqlServer 在事务中获得自增ID的实例代码
- 01-10SqlServer快速检索某个字段在哪些存储过程中(sql 语句)
- 01-10SQLServer性能优化--间接实现函数索引或者Hash索引
阅读排行
本栏相关
- 01-10SQLServer存储过程实现单条件分页
- 01-10SQLServer中防止并发插入重复数据的方
- 01-10SQL Server 2012降级至2008R2的方法
- 01-10SQL Server性能调优之缓存
- 01-10SQL Server数据库定时自动备份
- 01-10Sql Server 死锁的监控分析解决思路
- 01-10实现SQL Server 原生数据从XML生成JSON数
- 01-10SqlServer快速检索某个字段在哪些存储
- 01-10SqlServer 在事务中获得自增ID的实例代
- 01-10SQLServer性能优化--间接实现函数索引或
随机阅读
- 01-10SublimeText编译C开发环境设置
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 01-10delphi制作wav文件的方法
- 04-02jquery与jsp,用jquery
- 01-11ajax实现页面的局部加载
- 01-10C#中split用法实例总结
- 08-05dedecms(织梦)副栏目数量限制代码修改