在论坛中出现的各种疑难问题:日志收缩问题

最近,在论坛中,遇到了不少疑难的问题,在此特别记录,同时也感谢发帖人的分享、以及其他网友的热心回答。


1、日志暴大,无法收缩,谁来挑战一下!

http://bbs.csdn.net/topics/390674731?page=1#post-396518238

 

环境:windows server 2008  sqlserver 2008
报磁盘空间满,上去查看发现数据库的ldf文件暴大,本人随已不用sqlserver 1年,但是以前干过,对sqlserver谈不上精通,也大概知道点皮毛?
立即写脚本操作,步骤如下。
alter database DBName set recovery simple;      --逻辑操作,VLF 248 kb 标记为可重用,磁盘空间不会缩小
use DBName 
DECLARE @lname AS VARCHAR(50)   
SELECT name
FROM sys.database_files WHERE type=1
DBCC SHRINKFILE (@lname,100);                   --物理操作收缩 截断了的空间。但是空间一点没有变小。所以怀疑有可能是一个很大很长的事务在执行。
alter database DBName set recovery full;use DBName
go
dbcc opentran
--结果如下
/*
已复制的事务信息:最早的分布式 LSN     : (0:0:0)最早的非分布式 LSN : (5067131:1370:2)
DBCC 执行完毕。如果 DBCC 输出了错误信息,请与系统管理员联系。
*/DBCC loginfo()  --全是2 木有 0 都是活动事务,断不了,更收缩不了。-- 一个没有spid的东西。怎么杀啊? 查事务,
select transaction_begin_time,  
case transaction_type   
when 1 then 'Read/Write transaction'  
when 2 then 'Read-Only transaction'  
when 3 then 'System transaction'  
when 4 then 'Distributed transaction'  
end tran_Type,  
case transaction_state  
when 0 then 'not been comoletely initaialiaed yet'  
when 1 then 'initaialiaed but ha notstarted'  
when 2 then 'active'  
when 3 then 'ended (read-only transaction)'  
when 4 then 'commit initiated for distributed transaction'  
when 5 then 'transaction prepared and waiting resolution'  
when 6 then 'commited'  
when 7 then 'being rolled back'  
when 0 then 'been rolled back'  
end transaction_state  
from   
sys.dm_tran_active_transactions
--没有发现异常的事务。没有做过复制,没有做过镜像。--查看log状态
SELECT log_reuse_wait_desc  FROM sys.databases WHERE NAME='DBName' 
--REPLICATION  某做过复制,竟然出来个这。use DBName
checkpoint
go
sp_removedbreplication 'DBName'
DBCC SHRINKFILE(DBName_Log,100);DBCC loginfo()  --还是全是活动的。
dbcc opentran 还有的那个没有spid的复制事务。某有头绪了!
临时解决方案,新建了个log文件在其他盘,能顶个10几天。趁这段时间跑来问问大牛?

 

 

这个是我的建议,不过经过测试,没有效果:

 

alter database xxx
set single_user
with rollback immediate然后,再次收缩日志,应该就可以,不过可能需要暂时中断一下业务


从上面的这个可以看出,这个问题和数据库复制有关:

 

--查看log状态
SELECT log_reuse_wait_desc  FROM sys.databases WHERE NAME='DBName' 
--REPLICATION  某做过复制,竟然出来个这。

 


这个是DBA_Huangzj版主的方法,不过也没有效果:

 

EXEC sp_removedbreplication msdb
试一下remove msdb的


最后楼主的方法:

 

 

解决了,谢谢各位,什么招都用了,以前DBA改过计算机名称。改回来做复制再把复制删了,不然sp_removedbrepliation根本没用, 删除复制后做个log备份(一档log 1TB)。备份完这一档log空间就可以收缩了!谢谢!


 

转载于:https://www.cnblogs.com/momogua/p/8304531.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/360173.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

学java前要学css_教你一招:学习Java必须学会的CSS用法

一:CSS概述什么是CSSCSS就是层叠样式表(Casading Style Sheets),通常称为CSS样式表,或者是级联样式表。主要用于设置HTML中的文本,内容(字体,大小,对齐),图片外形(宽高,边框样式&…

标准I/O库之缓冲

标准I/O库提供缓冲的目的是尽可能减少使用read和write调用的次数。它也对每个I/O流自动地进行缓冲管理,从而避免了应用程序需要考虑这一点所带来的麻烦。 标准I/O提供了三种类型的缓冲: (1)全缓冲。这种情况下,在填满标…

java如何写安卓接口文档_android、java制作sdk以及自动生成文档

最近一直在做android开发,昨天经理让我写个接口SDK做个接口文档,以便后面的开发。这让我很焦灼,SDK怎么做?要是只有敲代码还好。可是那个接口文档!!!文档这东西最讨厌了,头都大了后来…

[转载]jquery cookie的用法

原文地址:http://www.cnblogs.com/qiantuwuliang/archive/2009/07/19/1526663.html jQuery cookie是个很好的cookie插件,大概的使用方法如下 example $.cookie(’name’, ‘value’); 设置cookie的值,把name变量的值设为value example $.cookie(’name’…

21世纪的设计模式:抽象工厂模式

这是我的演讲的第二部分,“ 21世纪的设计模式” 。 此模式在Java代码中到处都有使用,尤其是在更多“企业”代码库中。 它涉及一个接口和一个实现。 该界面如下所示: public interface Bakery {Pastry bakePastry(Topping topping);Cake bak…

java textfield类方法_java.awt.TextField类

java.awt.TextField是一个文本框组件1.构造方法TextField():创建一个默认长度为一个机器字符长的文本框TextField(int n):创建一个指定长度为n个机器字符长的文本框TextField(String s):创建一个文本框,该文本框的初始字符串为sTe…

广东金融学院java实验报告_《大学计算机Ⅰ》实验报告实验三

广东金融学院实验报告课程名称:大学计算机Ⅰ实验编号 及实验名称 姓 名 实验地点 指导教师蔡文璇 12-204课室 伍春晖博士实验三 中文Excel 2007实验系 别 班 级 实验时数 成 绩财经传媒系 经济秘书(2)班6学 号 实验日期 同组其他成员111602242 2011年 12 月07 日无一…

Markdown会干掉Html吗?

Markdown会干掉Html吗? 很明显,MarkDown正在已一种比病毒还快的速度传播着,量子的机器人语言也是深受其启发,当然了,在这个东西没搞出来之前,MarkDown就能干很多事情,比如在线编辑。 有了它&…

java动态变量名反射_Java动态性—反射 - Eclipse666的个人空间 - OSCHINA - 中文开源技术交流社区...

1.什么是动态语言?程序运行时,可以改变程序的结构或者变量类型;如Python,javaScriptfunction(){var s"var a3;var b4;" evals(s);}在执行javascript代码的的过程中,可以改变变量的值或插入语句改变结构。但J…

java中的module是什么意思_Angular - 组件中module.id的含义是什么?

Update for (2017-03-13) :删除了所有提及的moduleId . “组件相对路径”cookbook已删除我们在我们推荐的SystemJS配置中添加了一个新的SystemJS插件(systemjs-angular-loader.js) . 此插件动态地将templateUrl和styleUrls中的“组件相对”路径转换为“绝对路径” .…

HTML跳转

Window.location.href"http://www.baidu.com/"转载于:https://www.cnblogs.com/hucaihao/p/3514165.html

Spring注释,我从来没有机会使用第1部分:@primary

今天,我想起了我的一个老朋友(primary),我们从教程到教程都遇到了他。 您知道在Spring Autowired批注中按类型工作,也就是说,如果Spring找到符合类型的匹配的合格bean,则会将其注入。让我们在示…

mysql构建栋_【转载】这次拆库 应是微服务化的拆分方式

一、现状现状.png我们将一个大而全的系统一拆为三,容器,发布,测试都已经独立出去,但是原始的数据库还是一套,现在需要将数据库做一个拆分,A、B、C三个系统有各自的数据库之后,我们的微服务化在现…

使用SharePoint 2010新增的文档集内容类型来管理文档

使用SharePoint 2010新增的文档集内容类型来管理文档 SharePoint 2010新增加的文档集功能是作为内容类型存在的,使用范围在网站集中,需要激活“文档集”功能到网站集才可以正常使用。文档集其实就是一个SharePoint产品增强的文件夹和内容类型的综合体现。…

如何使用Java 8流快速替换列表中的元素

假设您有一个项目清单&#xff1a; List<String> books Arrays.asList("The Holy Cow: The Bovine Testament","True Hip Hop","Truth and Existence","The Big Book of Green Design" );&#xff08;不要判断我。此随机书生成…

db2和mysql性能优化_DB2数据库性能调优的十个办法

这篇文章主要是针对e-business OLTP的10个性能方面的Tips。10. Monitor Switches打开Monitor Switch,才能获得性能方面的信息,命令如下db2 "update monitor switches using lock ON sort ON bufferpool ON uow ON table ON statement ON"9. Agents要保证有足够的agen…

处理远程通知的方法

IOS的一大特点就是可以随时向客户端push相关的信息。那么在客户端收到这些信息时&#xff0c;如何处理呢&#xff1f; 有两种情景需要处理&#xff0c; 一是&#xff1a;从状态栏下拉&#xff0c;点击通知栏里的一项&#xff0c;启动应用 二是&#xff1a;在锁屏界面&#xff0…

java merge into_Oracle merge into的使用

最近项目上使用Oracle的Merge&#xff0c;所以找来一下资料学习了解。该命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据. ORACLE 9i 中&#xff0c;使用此命令必须同时指定UPDATE 和INSERT 关键词,ORACLE 10g 做了如下改动。特点&#xff1a;1、insert 和upd…

基于visual Studio2013解决算法导论之019栈实现(基于数组)

&#xfeff;&#xfeff;&#xfeff;题目用数组实现栈解决代码及点评#include <stdio.h> #include <stdlib.h> #include <time.h> #include <malloc.h> #include<assert.h>typedef struct Stack {int nTop;int nLen;int *pnArr; }Stack, *PSta…

关闭终端php就退出进程_解决windows下php-cgi进程经常自动关闭

php-cgi在linux中有fpm管理&#xff0c;Apache不是采用cgi这种模式&#xff0c;于是乎就出现了&#xff0c;在windows下&#xff0c;采用nginx时&#xff0c;开启的php-cgi监听非常不稳定&#xff0c;经常奔溃关闭。现在解决了这个问题。注意是win32位系统下解决的&#xff0c;…