当前位置: 首页 > news >正文

MSSQL收缩事务日志日志文件过大无法收缩

 

一.MS SQL SERVER 2005

--1.清空日志  

     exec('DUMP TRANSACTION 数据库名 WITH NO_LOG')

--2.截断事务日志:

     exec('BACKUP LOG 数据库名 WITH NO_LOG')

--3.收缩数据库文件(如果不压缩,数据库的文件不会减小

     exec('DBCC SHRINKDATABASE(数据库名) ')

--4.设置自动收缩

     exec('EXEC sp_dboption 数据库名,autoshrink,TRUE') 

 

二.MS SQL SERVER 2008 &2008r2 &2012 &2016

--在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。
USE [master]
GO
ALTER DATABASE 数据库名 SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTER DATABASE 数据库名 SET RECOVERY SIMPLE   --简单模式
GO
USE 数据库名
GO
--crm50sp1_log 为数据库日志文件逻辑名
DBCC SHRINKFILE (N'crm50sp1_log' , 11, TRUNCATEONLY)
GO
USE [master]
GO
ALTER DATABASE 数据库名 SET RECOVERY FULL WITH NO_WAIT
GO
ALTER DATABASE 数据库名 SET RECOVERY FULL  --还原为完全模式
GO

 

三. 日志文件异常大无法收缩的问题

     如果日志文件异常大,且收缩的时候无法收缩,这个时候,需要查看是否有未提交或者回滚的事务

     执行DBCC OPENTRAN 命令,查看是否有很早运行的事务(消息中显示的有事务开始时间),显示出来的都表示该事务没有提交或回滚所以一直导致MinLSN无法前滚。
如果有这种的话,可以两种方法,一通过信息显示的进程号,杀掉该进程。kill 进程号;(当然重启SQL服务也行,如果允许停机操作的话);

    如果没有长时间未关闭的事务, 简单模式: 先备份数据库,然后执行BACKUP LOG 数据库名称 WITH NO_LOG 完整模式: 如果没有进行过完整备份,先进行一次完整备份,然后再备份日志文件,最后执行 DBCC SHRINKFILE (N'日志文件逻辑名称' , 0, TRUNCATEONLY)只收缩日志文件

    日志文件逻辑名称通过以下语句可以得到 USE erp数据库 go SELECT [name] FROM sys.database_files WHERE type_desc='LOG'

 

转载于:https://www.cnblogs.com/qiaokai/p/7273298.html

相关文章:

  • 04-常见内存错误以及valgrind使用
  • 别轻易说取代:容器不会取代虚拟机
  • Android带你解析ScrollView–仿QQ空间标题栏渐变
  • 向上扩展型SSD 将可满足向外扩展需求
  • Lua程序块(chunk)
  • Handler、Looper与MessageQueue源码分析
  • 安装PHP加速插件ZendOpcache
  • 织梦dedeCMS留言薄
  • 23.头有点大
  • PHP 学习 遇到坑的第一章
  • Hadoop-2.4.1学习之Streaming编程
  • socket.io+express实现聊天室的思考(三)
  • 高盛AI生态报告:美国仍是主导,中国正高速成长
  • 【干货】JavaScript DOM编程艺术学习笔记1-3
  • WordPress 前端投稿/编辑插件 DJD Site Post(支持游客和已注册用户)
  • 【Redis学习笔记】2018-06-28 redis命令源码学习1
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • Codepen 每日精选(2018-3-25)
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • eclipse(luna)创建web工程
  • Spark RDD学习: aggregate函数
  • spring-boot List转Page
  • text-decoration与color属性
  • 大型网站性能监测、分析与优化常见问题QA
  • 机器学习中为什么要做归一化normalization
  • 日剧·日综资源集合(建议收藏)
  • 如何胜任知名企业的商业数据分析师?
  • 山寨一个 Promise
  • 数据结构java版之冒泡排序及优化
  • 线上 python http server profile 实践
  • 小程序、APP Store 需要的 SSL 证书是个什么东西?
  • 主流的CSS水平和垂直居中技术大全
  • puppet连载22:define用法
  • !!java web学习笔记(一到五)
  • #pragma once
  • #Z2294. 打印树的直径
  • #宝哥教你#查看jquery绑定的事件函数
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • %@ page import=%的用法
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (1)(1.13) SiK无线电高级配置(五)
  • (1)SpringCloud 整合Python
  • (11)MATLAB PCA+SVM 人脸识别
  • (12)Linux 常见的三种进程状态
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (Redis使用系列) Springboot 实现Redis消息的订阅与分布 四
  • (八十八)VFL语言初步 - 实现布局
  • (笔试题)分解质因式
  • (附源码)springboot码头作业管理系统 毕业设计 341654
  • (论文阅读11/100)Fast R-CNN
  • (源码版)2024美国大学生数学建模E题财产保险的可持续模型详解思路+具体代码季节性时序预测SARIMA天气预测建模
  • (转)JVM内存分配 -Xms128m -Xmx512m -XX:PermSize=128m -XX:MaxPermSize=512m
  • (转载)从 Java 代码到 Java 堆
  • (转载)虚幻引擎3--【UnrealScript教程】章节一:20.location和rotation