SQL Server 清除数据库日志脚本

SQL Server 清除数据库日志脚本

清除mssql数据库日志的代码:

Use master
go

declare @dbname varchar(50)
declare temp_cur cursor scroll for select name from sysdatabases
open temp_cur
fetch first from temp_cur into @dbname
while @@fetch_status =0 
begin
  exec ('backup log ['+@dbname+'] with no_log')
  exec ('dbcc shrinkdatabase(['+@dbname+'])')
  exec ('dbcc checkcatalog (['+@dbname+'])')
  exec ('dump transaction ['+@dbname+'] with no_log')
  fetch next from temp_cur into @dbname
end
close temp_cur
deallocate temp_cur

时间: 2024-09-30 02:19:36

SQL Server 清除数据库日志脚本的相关文章

ms sql server 2005数据库日志文件过大,需要清除或者清空

数据库:ms sql server 2005 任务:ms sql server 2005数据库日志文件过大,需要清除. 方法: backup log [你的数据库名称] WITH NO_LOGbackup log [你的数据库名称] WITH TRUNCATE_ONLYDBCC SHRINKDATABASE([你的数据库名称]) 说明: backup log 指定仅备份事务日志.该日志是从上一次成功执行的 LOG 备份到当前日志的末尾.备份日志之后,可能会截断事务复制或活动事务不再需要的空间.

SQL Server 2000 清理日志精品图文教程

SQL Server 2000 清理日志精品教程 SQL Server 2000 数据库日志太大!如何清理SQL Server 2000的日志呢?如何压缩SQL Server 2000的日志呢?如何让SQL Server 2000的日志变小呢? 据小编所知,办法有很多很多,总结起来算有3类吧: 1.点几下鼠标,用SQL Server 2000管理工具中的企业管理器即可实现,待会儿详解:2.用SQL语句,在SQL Server 2000管理工具中的查询分析器可以实现,此法高级人士喜欢用:3.用第三

数据库-sql server 2005 事务日志删除问题

问题描述 sql server 2005 事务日志删除问题 sql server 2005 事务日志 删除对数据库有多大影响? 如何删除sql server 2005 事务日志 如何做到定期删除半年前的,保留半年的事务日志? 解决方案 如果你的数据库是full模式,那需要先做完整备份,再定期做日志备份,这样才能截断日志 如果数据库是simple模式,就不存在截断日志的问题

SQL Server 2000之日志传送功能

server SQL Server 2000之日志传送功能 - 描述 (1) 角色变更.角色互换.以及监控服务器所在位置     当线上数据库停摆时(可能是计划内维护工作,或是预期外的状况),如果还有备援服务器上的数据库可供存取,您可能会比较安心一点.一个设计良好的日志传送系统(将数据库交易日志文件从主要服务器传送到备援服务器)即可给予您这样的自信心.内建于 SQL Serve 2000 企业板与开发版的 Enterprise Manager 工具程序即支持日志传送功能. 角色变更     将日

SQL Server 2000之日志传送功能 - 设定(3)

server SQL Server 2000之日志传送功能 - 设定(3) 更改日志传送之组态设定         您可以使用数据库维护计划之[属性]对话盒来更改日志传送相关设定.在[交易记录文件备份]设定页提供的选项可更改日志传送过程中交易日志文件备份的组态.         [记录传送]设定页显示出您先前在维护计划内设定的日志传送配对服务器:如果您设定了其它组日志传送配对服务器,也会列在此处.本设定页也包含下列选项:新增目的数据库(用以建立新的日志传送配对服务器).删除既有日志传送配对服务器

SQL Server 2000之日志传送功能 - 问题解决

server|解决|问题 SQL Server 2000之日志传送功能可能發生的錯誤 一.残余数据    当您进行SQL Server 2000日志传送的实验时,也许偶而会中断设定过程.如果真是如此,那么某些资料仍然会存入每台服务器的日志传送资料表,并且影响到后续的日志传送设定动作.为了保证这些剩余资料都会被清除,请确实删除每台服务器msdb数据库内日志传送资料表之相关资料. 错误信息:Error 14261: The specified primary_server_name.primary_

SQL Server 2000之日志传送功能-设定

   日志传送功能可自动复制数据库的交易日志文件,并回存到备援服务器 (standby server) 的另外一个数据库.因此可大幅提高SQL Server数据库之可用性.因为备援数据库完整地接收来源数据库的异动情况,所以它就是一份来源数据库的复本 - 差别仅在于资料复制与加载过程所产生的时间差.然而,当主要服务器停摆时,您就可以将备援服务器更改为新的主要服务器.如果原来的主要服务器可重新上线使用,那么您可以将其设定为新的备援服务器 - 事实上就是对调两台服务器的角色.        在SQL

SQL Server中In-Flight日志究竟是多少

在SQL Server中,利用日志的WAL来保证关系数据库的持久性,但由于硬盘的特性,不可能使得每生成一条日志,就 直接向磁盘写一次,因此日志会被缓存起来,到一定数据量才会写入磁盘.这部分已经生成的,却没有写入磁盘的日志 ,就是所谓的In-Flight日志. 在SQL Server中,In-Flight的日志的大小取决于两个因素,根据Paul Randal的说法,In-Flight日志不能超过60K, 因此In-Flight的日志最大是60K,此外,如果In-Flight日志没有到60K,如果发

SQL Server 2005删除日志文件的几种方法

  使用MS数据库的朋友就会知道一个问题,C盘的空间很容易被占满了.因为本来系统盘就分区比较小,这是由于数据库在使用过程中会使日志文件不断增加,使得数据库的性能下降,并且占用大量的磁盘空间.SQL Server数据库都有log文件,log文件记录用户对数据库修改的操作.可以通过直接删除log文件和清空日志在清除数据库日志. 一.删除LOG 1.分离数据库.分离数据库之前一定要做好数据库的全备份,选择数据库--右键--任务--分离. 勾选删除连接 分离后在数据库列表将看不到已分离的数据库. 2.删