当前位置:  数据库>sqlserver

sql server事务日志压缩与删除的三种方法

    来源: 互联网  发布时间:2014-08-29

    本文导语:  本节内容: 压缩与删除sql server事务日志。 方法一: step1:   代码示例: backup log database_name with no_log 或者 backup log database_name with truncate_only -- no_log和truncate_only是在这里是同义的,执行哪句都可以。 step2: 1.收缩特定数据库...

本节内容:
压缩与删除sql server事务日志。

方法一:
step1:
 

代码示例:
backup log database_name with no_log
或者 backup log database_name with truncate_only
-- no_log和truncate_only是在这里是同义的,执行哪句都可以。

step2:
1.收缩特定数据库的所有数据和日志文件,执行:
 

代码示例:
dbcc shrinkdatabase (database_name,[,target_percent])
-- database_name是要收缩的数据库名称;target_percent是数据库收缩后的数据库文件中所要的剩余可用空间百分比。

2.收缩一次一个特定数据库中的数据或日志文件,执行
 

代码示例:
dbcc shrinkfile(file_id,[,target_size])
 

-- file_id是要收缩的文件的标识 (ID) 号,若要获得文件 ID,请使用 FILE_ID 函数或在当前数据库中搜索 sysfiles;target_size是用兆字节表示的所要的文件大小(用整数表示)。如果没有指定,dbcc shrinkfile 将文件大小减少到默认文件大小。两个dbcc都可以带上参数notruncate或truncateonly,具体意思查看联机帮助.

方法二:

step1:
先备份整个数据库以备不测 。

step2:
备份结束后,在Query Analyzer中执行如下的语句:
 

代码示例:
exec sp_detach_db yourDBName,true
--卸除这个DB在MSSQL中的注册信息

step3:
到日志的物理文件所在的目录中去删除该日志文件或者将该日志文件移出该目录

step4:
在Query Analyzer中执行如下的语句:
 

代码示例:
exec sp_attach_single_file_db yourDBName,'d:mssqldatayourDBName_data.mdf '
--以单文件的方式注册该DB,如果成功则MSSQL将自动为这个DB生成一个500K的日志文件。

方法三:
1,进入企业管理器,选中数据库,比如demo。
2,所有任务->分离数据库。
3,到数据库文件的存放目录,将MuOnline_log.LDF文件删除,以防万一,可以拷出去。
4,企业管理器->附加数据库,选muonline,此时会看见日志文件这项是一个叉。继续操作,此时数据库就会提示该数据库无日志是否创建一个新的,确定即可。
5,数据库重新附加后,重新设置下用户映射。

修改故障恢复模型为简单型,减少日志的增长量:
在数据库上点右键->属性->选项->故障恢复-模型-选择-简单模型。

也可以用SQL语句实现:
 

代码示例:
alter database 数据库名 set recovery simple

    
 
 

您可能感兴趣的文章:

  • MS SQL SERVER 数据库日志压缩方法与代码
  • SQL Server 压缩日志与减少SQL Server 文件大小的方法
  • 压缩技术给SQL Server备份文件瘦身
  • sql server 删除表1某些数据的同时自动删除表2的相关数据的sql代码
  • 安装SQL2008时提示删除SQL2005Express工具的解决方法
  • sql server 2005删除用户时“数据库主体在该数据库中拥有架构,无法删除”错误的解决办法
  • SQLServer用t-sql命令批量删除数据库中指定表(游标循环删除)
  • sql语言中delete删除命令语句详解
  • 重装MS SQL Server 2000前必须彻底删除原安装文件的方法
  • Sql Server 2000删除数据库备份文件
  • sql 存储过程批量删除数据的语句
  • Sql Server 删除主键与重建主键的例子
  • jsp+SQL删除记录出错,请指教!
  • SQL Server 不删除信息重新恢复自动编号列的序号的方法
  • oracle数据库添加或删除一列的sql语句
  • sql server临时表删除方法
  • sql2005 数据表存在与否及删除的判断语句
  • sql server 临时表的删除示例
  • MySQL中批量删除指定前缀表的sql语句
  • sql server 2005维护计划无法删除怎么办呢?
  • sql 插入单引号、添加、删除字段的例子
  • 使用SQL Server判断文件是否存在后再删除(详解)
  • sql级联删除的方法介绍
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 浅析SQL Server中包含事务的存储过程
  • 浅析SQL存储过程和事务处理
  • jsp与sql中的事务问题。。。
  • SQL Server的事务操作隔离模式介绍
  • SQL Server重温 事务
  • SQL2000 事务回滚问题探讨
  • SQL Server误区30日谈 第1天 正在运行的事务在服务器故障转移后继续执行
  • SQL Server误区30日谈 第28天 有关大容量事务日志恢复模式的误区
  • sql不常用函数总结以及事务,增加,删除触发器
  • oracle 合并查询 事务 sql函数小知识学习
  • SQL Server误区30日谈 第26天 SQL Server中存在真正的“事务嵌套”
  • SQL Server误区30日谈 第15天 CheckPoint只会将已提交的事务写入磁盘
  • SQL事务用法begin tran,commit tran和rollback tran的用法
  • 经常用到的SQL Server事务处理
  • sql server 存储过程中使用事务
  • 详解 sql server 的事务与锁
  • sql server存储过程带事务并拼接id返回值的代码
  • SQL Server触发器及触发器中的事务学习
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3