mssql 收缩日志】的更多相关文章

--设置简单模式 USE[master] GO ALTER DATABASE mindeemes_spy SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE mindeemes_spy SET RECOVERY SIMPLE GO --设置压缩后的日志大小为2M,可自定义 USE mindeemes_spy GO DBCC SHRINKFILE (N'mindeemes_spy_log' , 2, TRUNCATEONLY) GO --还原完全模…
原文: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 数据库名,a…
事务同步是SQLServer做读写分离的一种常用的方式. 随着业务数据的不断增长,数据库积攒了大量的日志,为了腾出硬盘空间,需要对数据库日志进行清理 订阅数据库的日志清理 因为订阅数据库所有的数据都来自发布数据库,所以可以直接进行清理. 操作步骤: 1. 在数据库右击-属性-选项-恢复模式改为简单之后 2.进入数据库右击-任务-收缩-文件, 文件类型选择日志,收缩操作选择在释放未使用的空间前重新组织下页,在右边的文本框填入想要保留的日志文件的大小,点击确认即可,稍等就可以看了对应的ldf日志已经…
SQL Server无法收缩日志文件 2 因为逻辑日志文件的总数不能少于 2问题 最近服务器执行收缩日志文件大小的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…
SQL Server 2008 收缩日志 清空删除大日志文件 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:(SQL2005)Backup Log DNName with no_loggodump transaction DNName with no_loggoUSE DNNameDBCC SHRINKFILE (2)Go-----------------------------------------------------…
一般情况下,SQL数据库的收缩并不能很大程度上减小数据库大小,其主要作用是收缩日志大小,应当定期进行此操作以免数据库日志过大. 方法一:清空日志.1.设置数据库模式为简单模式:打开SQL企业管理器,在控制台根目录中依次点开Microsoft SQL Server-->SQL Server组-->双击打开你的服务器-->双击打开数据库目录-->选择你的数据库名称(如论坛数据库Forum)-->然后点击右键选择属性-->选择选项-->在故障还原的模式中选择“简单”,然…
一. SQL Server 2008 收缩日志 (1) 使用SQL管理器收缩日志 第一步执行如下命令 ALTER DATABASE platform SET RECOVERY SIMPLE GO 第二步使用SQL管理器:选择要收缩的数据库-->任务-->收缩-->文件 输入文件收缩到:* 大小,点击确认 第三步执行如下命令 ALTER DATABASE platform SET RECOVERY FULL GO 以上操作是以 platform数据库为示例,在操作的过程中替换数据库名即可…
MSSQL 清空日志 删除日志文件 最近的项目主要做数据的归档,把数据从一个数据库拉到另一个数据库,照成新数据库的日志文件非常大:于是想把日志文件删除.最简单就是先分离数据库->删除日志文件->最后附加数据,我这里需要在SSIS中调用,所以已sql脚本为主.首先我们需要获取数据库文件的路径: declare @logfilename varchar(100) declare @datafilename varchar(100)select @logfilename=physical_name…
事务日志记录着在相关数据库上的操作,同时还存储数据库恢复(recovery)的相关信息. 收缩日志的原因有很多种,有些是考虑空间不足,有些则是应用程序限制导致的. 下面介绍的是在简单模式下,进行收缩操作. #方法一:通过图形界面逐步操作 1.打开数据库属性窗口 2.更改数据库恢复模式,“完整”改成“简单” 3.收缩数据库日志,“任务”->“收缩” 4.收缩完,将数据库的恢复模式修改为“完整” #方法二:使用命令 ALTER DATABASE test SET RECOVERY SIMPLE --…
sqlserver收缩日志的几种方式   [sql] --参考    压缩日志及数据库文件大小      /*--特别注意       请按步骤进行,未进行前面的步骤,请不要做后面的步骤    否则可能损坏你的数据库.       一般不建议做第4,6两步    第4步不安全,有可能损坏数据库或丢失数据    第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.    --*/           --下面的所有库名都指你要处理的数据库的库名       1.清空日志   …
网站的一个数据库的日志文件已经到150个G的地步,数据文件才几十M,通过常规的操作去收缩日志: >数据库右键 → 任务 → 收缩 → 文件 , 在弹出的窗口中,文件类型选择"日志",收缩选项选择第二个,填一个小的数字 执行很快完成,但是日志文件大小并没有改变. 完成收缩有两种方式: * 分离数据库,删除日志文件,然后再附加数据库 * 修改数据库的恢复模式为**简单**,然后再重复最初的收缩数据库操作(因为事务并未截断,所以完整模式下收缩的大小有限),完成后再吧恢复模式改为**完整…
如果SQL SERVER 日志过大,比如,达到了几十个G,想一次性收缩的,直接执行下面命令即可: USE DATABASENAME; GO – Truncate the log by changing the database recovery model to SIMPLE. ALTER DATABASE DATABASENAME SET RECOVERY SIMPLE; GO – Shrink the truncated log file to 1 MB. DBCC SHRINKFILE (…
SQL2008 SQL2012 SQL2014 的收缩日志 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:(SQL2005)BackupLog DNName with no_loggodumptransaction DNName with no_loggoUSE DNName DBCC SHRINKFILE (2)Go-------------------------------------------------------…
SQL2008 的收缩日志 由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消: (SQL2005) BackupLog DNName with no_log go dump transaction DNName with no_log go USE DNName ) Go -------------------------------------------------------------- (SQL2008): 在SQL20…
SQL server2008无法收缩日志,错误信息为: 1:由于最小日志空间要求,无法收缩日志文件 2:无法收缩日志文件 2 (XXX_log),因为该文件结尾的逻辑日志文件正在使用 描述: 用的是网上普遍有的收缩代码USE [master]GOALTER DATABASE shujuku SET RECOVERY SIMPLE WITH NO_WAITGOALTER DATABASE shujuku SET RECOVERY SIMPLE --简单模式GOUSE shujukuGODBCC S…
原文:SQL Server 2008收缩日志文件--dbcc shrinkfile参数说明 DBCC SHRINKFILE 收缩相关数据库的指定数据文件或日志文件大小. 语法 DBCC SHRINKFILE     ( { file_name | file_id }         { [ ,target_size ]             | [ , { EMPTYFILE | NOTRUNCATE | TRUNCATEONLY } ]         }     ) 参数 file_nam…
问题描述: 今天看到user库日志备份方面很久,然后查看到user库这个log日志很大 图片是我已经解决了,然后现在可以收缩的大小 解决方法: 1.先备份user库日志,因为很大,所以要等很久,这个只能先等了 当时的LOG大小有500G,备份出来后167G左右,备份完了,发现还是无法收缩 2.再次执行一次收缩日志 3.再次收缩日志,就可以了…
一.准备知识 1.LSN LSN用来标识特定日志在日志文件中位置(详情请见什么是LSN:日志序列号),它由两部分组成:一部分用来标识VLF(虚拟日志文件)的序列号,剩下的用来标识该日志在VLF中的具体的位置. 根据LSN不同,日志一般分为两类:首日志(最新的活动日志序号)和尾日志(保留时间最长的活动日志序号).随着数据库的操作不断增加(如数据库中的update操作),首日志LSN序号不断变化.尾日志的序号只有在日志备份后才会变化. (图一)日志文件结构图 2.VLF 你可以通过DCC LOGIN…
查询状态语句: SELECT name,log_reuse_wait_desc FROM sys.databases where name='hrsystem'; 收缩日志文件: USE [master] GO ALTER DATABASE hrsystem SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE hrsystem SET RECOVERY SIMPLE GO USE hrsystem DBCC SHRINKFILE (N'NewSt…
首先解释一下数据库的版本是SQL Server 2012.清除的数据库800多G,磁盘空间就剩10多G,数据量最多的表有2亿.目的就是清楚去年的数据(2017年之前),遇到了一些问题,总结起来就是三方面问题: 1.如何清理日志文件. 2.删除千万级别的数据. 3.数据库的收缩操作. 一.清除日志文件 刚开始直接用delete语句删除给报了两次错误:“The transaction log for database 'DB' is full due to 'ACTIVE_TRANSACTION'.…
步骤1: 2005的sql 语句为:back up log 数据库名称 with no_log 目的:截断数据库日志 2008的sql 语句为:alter database 数据库名称 set recovery simple 目的:将数据设置为简单模式 步骤2:右键选中指定数据库,选择“任务”->“收缩”->“文件”. 步骤3:再打开的选项卡右侧“文件类型”下拉菜单中选择“日志”,在下面的“收缩操作”选项中选择“在释放未使用的空间前重新组织页”,“将文件收缩到”,填写0,点击“确定”按钮即可.…
---1.先备份数据库(含日志文件) use myhis go backup database myhis to disk='d:\myhis_rzbak' go ---2.设为简单恢复模式 use [master] go alter database myhis set recovery simple with no_wait go alter database myhis set recovery simple go ---3.收缩数据库日志文件为8M use myhis go dbcc s…
一,找到每个数据库的日志文件大小 SQL Server:查看SQL日志文件大小命令:dbcc sqlperf(logspace) DBA 日常管理工作中,很重要一项工作就是监视数据库文件大小,及日志文件大小.如果你管理数据库的有很多的话,每天一个一个数据库的去查看文件大小就太费神了,那就写个SQL脚本吧,放到 SQL Agent 中,每天自动去查看各个数据库文件及日志文件的大小,然后再通过数据库邮件,Email 到我们手中,岂不快哉!当然,可以把每天的记录存放到数据库中去,这样数据库及日志文件的…
DBCC SHRINKFILE 收缩相关数据库的指定数据文件或日志文件大小. 语法 DBCC SHRINKFILE    ( { file_name | file_id }        { [ ,target_size ]            | [ , { EMPTYFILE | NOTRUNCATE | TRUNCATEONLY } ]         }    ) 参数 file_name 是已收缩文件的逻辑名称.文件名必须符合标识符的规则.有关更多信息,请参见使用标识符. file_…
select log_reuse_wait_desc from sys.databases where name='tfs_CARDLANWEB' backup log tfs_CARDLANWEB to disk='D:\dbbackup\2014-08-24-2.log' GO DBCC SHRINKFILE (N'tfs_CARDLANWEB_log' , 1024, TRUNCATEONLY) GO --提示错误就重复操作 SELECT name ,size/128.0 - CAST(F…
错误如下图: 1.数据库 → 属性 → 选项 → 恢复模式 → 选择‘简单’:如下图: 2.任务 → 收缩 → 文件类型‘文件’ → 收缩模式‘在释放未使用的空间前重新组织页’,将文件收缩到K,大小填 0:如下图: 3.确定之后修改数据库属性中恢复模式为‘完整’.…
通过收缩的方法可以释放所占空间. 第一步:将数据库的模式调整为简单模式 右击数据库名->'属性'->'选项'->恢复模式改成'简单'->点'确定'按钮. 第二步:收缩文件 右键数据库-->任务-->收缩-->文件 第三步:将数据库恢复成完整模式…
解决方法有两种,现只用最简单的方法: 1.数据库属性----选项----恢复模式由完整改为简单--确定 2.右击数据库---任务---收缩 3.数据库属性----选项----恢复模式由简单改为完整--确定…
USE 数据库名称 GO ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT GO ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE GO USE 数据库名称 GO DBCC SHRINKFILE (N'数据库日志名称' , 1, TRUNCATEONLY)--清理为1M日志文件 “数据库日志名称”请查看以下图片中的日志逻辑名称 GO USE 数据库名称 GO ALTER DATABASE 数据库名称 SET…
USE [master]ALTER DATABASE RcBalance SET RECOVERY SIMPLE WITH NO_WAITALTER DATABASE RcBalance SET RECOVERY SIMPLE; USE RcBalanceSELECT * from sys.database_files; DBCC SHRINKFILE(N'Balance_Log' , 11, TRUNCATEONLY);USE [master]ALTER DATABASE RcBalance…