清理SQL Server 2008日志文件Cannot shrink log file 2 的解决方案
SQL 2008日志文件占了23G硬盘空间,而事务日志已经截断(Truncate),实际日志内容很小,1G都不到,想要释放日志文件霸占的多余空间。
但是,无论怎么收缩(Shrink)日志文件,空间就是不能释放,总是出现错误:
Cannot shrink log file 2 (CNBlogsText_log) because of minimum log space required.
之前解决过类似的问题,也写过一篇博客-SQL Server 2008事务日志清理,当时采用的最终解决方法是:
将恢复模式由完整(Full)改为简单(Simple)
收缩(Shrink)日志文件
将恢复模式由简单(Simple)改为完整(Full)
一直以为这就是终极方法,但是竟然没能终结这次遇到的问题。
经过不懈的努力,终于找到真正的终极方法:
1. Detach数据库(Detach之前一定要屏蔽所有对这个数据库的写入操作)
2. 删除或重命名日志文件
3. Attach数据库,这时会提示找不到日志文件
4. 移除(Remove)这个找不到的日志文件,然后点击Ok进行Attach,SQL Server会在数据文件所在的文件夹自动创建一个新的日志文件完成Attach。
5. 如果日志文件需要存放在另外的路径,要再通过Detach/Attach进行日志文件的移动操作。
Detach数据库
将日志文件移动至新的位置
Attach数据库,修改日志文件的路径并完成Attach
该终极方法的弊端是在操作期间,被操作的数据库不能被正常访问。
相关推荐
-
SQLServer2005 没有日志文件(*.ldf) 只有数据文件(*.mdf) 恢复数据库的方法
复制代码 代码如下: exec sp_attach_db exun,'d:\exun2.mdf' 一句话就可以了. 网上看了那些比较繁琐的,都是sql server 2000版本的. (可能执行一次不能成功,测试了下,有时候需要执行2次以上命令才行) 执行了之后,记得刷新数据库,不然是不会显示的
-
SQL Server 2008 清空删除日志文件(瞬间日志变几M)
SQL2008清空删除日志: 方法一: USE [master] GO ALTER DATABASE AFMS SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE AFMS SET RECOVERY SIMPLE GO USE AFMS GO DBCC SHRINKFILE (N'AFMS_Log' , 11, TRUNCATEONLY) GO USE [master] GO ALTER DATABASE AFMS SET RECOVERY FU
-
Win2008中SqlServer2008 无法打开错误日志文件导致无法启动的解决方法
今天早上一个客户的SqlServer 2008的服务器应为重新修改配置导致网站打不开,链接到远程服务器之后,在服务器的事件查看器,发现如下错误, 错误描述: 日志名称: Application 来源: MSSQLSERVER 日期: 2011/10/25 11:30:49 事件 ID: 17058 任务类别: 服务器 级别: 错误 关键字: 经典 用户: 暂缺 计算机: WIN-VPS-SERVER 描述: initerrlog: 无法打开错误日志文件 'D:\WWW\Services\SQLD
-
SQL Server 2005删除日志文件的几种方法小结
使用MS数据库的朋友就会知道一个问题,C盘的空间很容易被占满了.因为本来系统盘就分区比较小,这是由于数据库在使用过程中会使日志文件不断增加,使得数据库的性能下降,并且占用大量的磁盘空间.SQL Server数据库都有log文件,log文件记录用户对数据库修改的操作.可以通过直接删除log文件和清空日志在清除数据库日志. 一.删除LOG1.分离数据库.分离数据库之前一定要做好数据库的全备份,选择数据库--右键--任务--分离. 勾选删除连接 分离后在数据库列表将看不到已分离的数据库. 2.删除LO
-
SQL Server无法收缩日志文件的原因分析及解决办法
最近服务器执行收缩日志文件大小的job老是报错 我所用的一个批量收缩日志脚本 USE [master] GO /****** Object: StoredProcedure [dbo].[ShrinkUser_DATABASESLogFile] Script Date: 01/05/2016 09:52:39 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROC [dbo].[ShrinkUser_DATABASE
-
SQL SERVER 2008数据库日志文件收缩的方法
最近公司的数据库随着业务量的增多,日志文件巨大(超过300G),造成磁盘空间不够用,进而后来的访问数据库请求无法访问. 网上类似的方法也很多,但不可行,如下是我实践过,可行的,将日志文件收缩至任意指定大小的方法: 第一步: 在SQL SERVER Management Studio 中右击数据库选择"属性"--->"选项",将恢复模式由默认的"完整"改为"简单". 第二步:再次右键选择数据库的"任务"
-
Sqlserver2005日志文件太大如何减小
Sqlserver2005日志文件太大,使其减小的方法如下所示: 运行下面的三行 dbName为数据库名: backup log dbNamewith NO_LOG backup log dbNamewith TRUNCATE_ONLY DBCC SHRINKDATABASE(dbName) 日志文件减小到1MB sql server清空日志文件2011-04-06 23:05 1: 删除LOG 1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库 2:删除LOG文
-
SqlServer修改数据库文件及日志文件存放位置
--查看当前的存放位置 select database_id,name,physical_name AS CurrentLocation,state_desc,size from sys.master_files where database_id=db_id(N'数据库名'); --修改文件的存放位置下次启动生效 --testDb为数据库名, alter database 数据库名 modify file ( name = 文件名(不包含后缀), filename = '文件存储路径'); a
-
清理SQL Server 2008日志文件Cannot shrink log file 2 的解决方案
SQL 2008日志文件占了23G硬盘空间,而事务日志已经截断(Truncate),实际日志内容很小,1G都不到,想要释放日志文件霸占的多余空间. 但是,无论怎么收缩(Shrink)日志文件,空间就是不能释放,总是出现错误: Cannot shrink log file 2 (CNBlogsText_log) because of minimum log space required. 之前解决过类似的问题,也写过一篇博客-SQL Server 2008事务日志清理,当时采用的最终解决方法是:
-
清除SQL SERVER错误日志出现操作系统错误的解决方法
之前在UAT环境搭建的SQL SERVER 2008 R2数据库一直用得比较正常,但最近发现在Sharepoint中不能进行任何操作了,开始以为是什么配置出了问题(因为一直在研究一些新的应用和集成,需要不断地测试),但后来发现是数据库硬盘没用一点空间了,那么自然是不能存任何数据了,所以最先开始清理一些无用的数据库日志,磁盘空间多了几个G的容量,但是等到第二天情况依然如此,数据库硬盘还是满了,问题依旧存在,后台仔细检查了一下所有数据库的容量(因为最初以为是数据库空间每天增长太快了把硬盘占满了),发
-
SQL Server 2008数据库误删数据如何进行数据恢复
有个朋友很着急地打电话给我,他用delete语句误删除了SQL Server 2008数据库中两个表中的所有记录,而这个数据库之前没有任何备份.让我帮他解决一下,不然他要赔偿客户很多钱. SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是"完整(Full)". 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在
-
SQL SERVER 2008 64位系统无法导入ACCESS/EXCEL怎么办
操作系统Windows Server 2008 X64,数据库SQL Server 2008 X64,Office 2007(好像只有32位),在存储过程执行OpenDatasource导入Access数据的时候遇到问题了,Oledb 4.0已经不被支持,以下是遇到的若干错误提示: 因为 OLE DB 访问接口 'Microsoft.Jet.OLEDB.4.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询. 无法创建链接服务器 "(null)" 的 OLE DB 访
-
SQL Server 2008 R2 应用及多服务器管理
SQL Server 2008 R2推出了管理SQL服务器数据库引擎的多个实例的SQL服务器工具,使用这些工具可以通过中央服务器对多个SQL Server服务器进行快速.高效的管理. 管理SQL引擎多实例的工具 使用SQL Server Management Studio中的工具浏览器可以把现有的SQL Server 2008 R2数据层应用程序和数据库引擎实例加入到SQL服务器工具中进行集中的管理. 另外还推出了一个称作数据层应用(DAC)的管理单元,这个管理单元提供了用于管理SQL服务器工具
-
清除SQL Server数据库日志(ldf文件)的方法汇总
目录 解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 解决方案2 -收缩数据库日志文件(最靠谱方案!) 解决方案3 - 采用SQL脚本删除. 清除SQL Server数据库日志(ldf文件)的几种方法 随着系统运行时间的推移,数据库日志文件会变得越来越大,这时我们需要对日志文件进行备份或清理. 解决方案1 - 直接删除本地ldf日志文件:(比较靠谱方案!) 1. 在SQL管理器分离数据库. 2. 对数据库日志文件进行压缩备份(rar, zip) 3. 直接删除ldf文件. 附加数
-
SQL SERVER 2008 r2 数据压缩的两种方法
在压缩数据之前建议大家看下这篇文章:http://www.jb51.net/article/136522.htm 一般情况下不建议压缩数据,如果压缩数据建议先备份 第一种方法:通过sql server management studio 首先我们要下载能操作 2008的工具 sql server management studio 这个工具在sql server 2008 r2 安装后就会有! 一起安装妥当,我们就可以开始选择了看图! 所有的都是单击右键,凡在你需要压缩的表上面,依次选择到数据库
-
SQL SERVER 2008 r2 数据压缩的两种方法第1/2页
有时候sql server 2008 数据库日志文件太大,需要收缩释放硬盘内存.如果ldb文件过大会导致数据库运行缓慢,甚至系统都会卡住. 1.登陆项目平台数据库服务器.双击SQL Server Management Studio打开数据库管理.登陆数据库 2.如下图,打开数据库属性窗口 3.如下图,更改数据库恢复模式 4.如下图,收缩数据库日志 到这里已经完成了,数据库的日志收缩 5.如下图,数据库恢复模式修改为完整 经过我们小编测试,完美解决,我们成功的把一个84G的文件,压缩到1M. 下面
-
SQL Server 2008 R2安装配置方法图文教程
Microsoft SQL Server 2008 R2安装图解 工具: SQL Server 2008 R2安装光盘或镜像ISO 安装的准备过程: 插入2008 R2安装光盘或加载镜像ISO文件,进入SQL Server安装中心后跳过"计划"内容,直接选择界面左侧列表中的"安装" 之后进入"安装程序支持规则"安装界面,安装程序将自动检测安装环境基本支持情况,需要保证通过所有条件后才能进行下面的安装,如图所示.当完成所有检测后,点击"确
-
安装sql server 2008时的4个常见错误和解决方法
可能由于操作系统不同,或者在安装SQL 2008的时候已经安装SQL其他版本,因此可能会遇到问题,那么这时我们的实际经验和动手测试的能力也是非常重要的,这样才能少走弯路. 问题1:安装sql server 2008 R2,安装过程中提示错误:此计算机上安装了 Microsoft Visual Studio 2008 的早期版本.请在安装 SQL Server 2008 前将 Microsoft Visual Studio 2008 升级到 SP1. 之前我的电脑上确实装了vs2008,于是我准
随机推荐
- C#实现EXCEL数据到TXT文档的转换
- jQuery ajax中使用serialize()方法提交表单数据示例
- Python 列表排序方法reverse、sort、sorted详解
- js设计模式之结构型享元模式详解
- asp.net中“从客户端中检测到有潜在危险的Request.Form值”错误的解决办法
- php使用Image Magick将PDF文件转换为JPG文件的方法
- javascript Array.remove() 数组删除
- Linux下SVN服务器自动更新文件到Web目录的方法
- PHP数组循环操作详细介绍 附实例代码
- 将CKfinder 整合进 CKEditor3.0的方法
- android编程之XML文件解析方法详解(附源码)
- 在PostgreSQL的基础上创建一个MongoDB的副本的教程
- MySQL学习第二天 安装和配置mysql winx64
- Activiti流程图查看实例
- Oracle MERGE INTO的用法示例介绍
- JS、HTML代码运行工具
- 新年贺岁短信 祝福畅通无阻
- java实现的二级联动菜单效果
- 详解Spring MVC CORS 跨域
- PHP框架Laravel学习心得体会