sqlserver收缩日志的几种方式

 

[sql]

--参考   

压缩日志及数据库文件大小   

 

/*--特别注意   

  

请按步骤进行,未进行前面的步骤,请不要做后面的步骤   

否则可能损坏你的数据库.   

  

一般不建议做第4,6两步   

第4步不安全,有可能损坏数据库或丢失数据   

第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.   

--*/   

      

--下面的所有库名都指你要处理的数据库的库名   

  

1.清空日志   

DUMP TRANSACTION 库名 WITH NO_LOG   

  

2.截断事务日志:   

BACKUP LOG 库名 WITH NO_LOG   

  

3.收缩数据库文件(如果不压缩,数据库的文件不会减小   

企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件   

--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了   

--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了   

  

也可以用SQL语句来完成   

--收缩数据库   

DBCC SHRINKDATABASE(库名)   

  

--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles   

DBCC SHRINKFILE(1)   

      

4.为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行)   

a.分离数据库:   

企业管理器--服务器--数据库--右键--分离数据库   

  

b.在我的电脑中删除LOG文件   

  

c.附加数据库:   

企业管理器--服务器--数据库--右键--附加数据库   

  

此法将生成新的LOG,大小只有500多K   

  

或用代码:   

下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。   

  

a.分离   

EXEC sp_detach_db @dbname = '库名'   

  

b.删除日志文件   

  

c.再附加   

EXEC sp_attach_single_file_db @dbname = '库名',   

@physname = 'c:Program FilesMicrosoft SQL ServerMSSQLData库名.mdf'   

  

5.为了以后能自动收缩,做如下设置:   

企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"   

  

--SQL语句设置方式:   

EXEC sp_dboption '库名', 'autoshrink', 'TRUE'   

  

6.如果想以后不让它日志增长得太大   

企业管理器--服务器--右键数据库--属性--事务日志   

--将文件增长限制为xM(x是你允许的最大数据文件大小)   

 

我采用的方式是 分离数据库 将log文件改名字

 

然后附加

 

EXEC sp_attach_single_file_db @dbname = '库名', @physname = 'c:Program FilesMicrosoft SQL ServerMSSQLData库名.mdf'

 

生成的Log文件500k左右

 

在2008中 上面的程序可能会有问题

    

08采用下面模式

 

[sql] 

--数据库名称为 test  

USE test  

   GO  

   ALTER DATABASE test SET RECOVERY SIMPLE WITH NO_WAIT  

   GO  

   ALTER DATABASE test SET RECOVERY SIMPLE     

   GO  

   USE test   

   GO  

--这里的2根据 select * from sysfiles 来查询 一般数据位1 日志为2  

 

   DBCC SHRINKFILE (2 , 11, TRUNCATEONLY)  

   GO  

   USE test  

   GO  

   ALTER DATABASE test SET RECOVERY FULL WITH NO_WAIT  

   GO  

   ALTER DATABASE test SET RECOVERY FULL    

   GO

sqlserver收缩日志的几种方式的更多相关文章

  1. 【转】python之配置日志的几种方式

    [转]python之配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用 ...

  2. sqlserver实现分页的几种方式

    sqlserver实现分页的几种方式 第一种:使用org.springframework.data.domain.Page来进行分页 package com.cellstrain.icell.repo ...

  3. Python 配置日志的几种方式

    Python配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: (1)使用Python代码显式的创建loggers,handlers和formatters并分别调用它们的配 ...

  4. 通过filebeat、logstash、rsyslog采集nginx日志的几种方式

    由于nginx功能强大,性能突出,越来越多的web应用采用nginx作为http和反向代理的web服务器.而nginx的访问日志不管是做用户行为分析还是安全分析都是非常重要的数据源之一.如何有效便捷的 ...

  5. Log4Net日志记录两种方式

     简介 log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具.     log4net是Ap ...

  6. 【转载】Sqlserver数据库备份的几种方式

    在实际的数据库Sqlserver的运维的过程中,很多时候我们需要做到数据的备份操作,可以做到定时备份,也可以进行手动数据库备份.在实际的过程中,有时候因业务需要备份出完整数据库,而有时候又因为实际业务 ...

  7. python之配置日志的三种方式

    以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文件,然后使用fileCo ...

  8. Python之配置日志的几种方式(logging模块)

    原文:https://blog.csdn.net/WZ18810463869/article/details/81147167 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Py ...

  9. python之配置日志的几种方式

    作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文 ...

随机推荐

  1. 蒙特卡罗方法 python 实现

    蒙特卡罗(Monte Carlo)方法的精髓:用统计结果去计算频率,从而得到真实值的近似值. 一.求圆周率的近似值,采用 投点法 import numpy as np import matplotli ...

  2. 【Qt】QLabel之动态阴影边框

    效果如下: 实现思路参考了下面的文章: Qt 之 QPropertyAnimation 该文章是自定义属性alpha,原理类似,代码如下: //在头文件加入 Q_PROPERTY(int iBorde ...

  3. libgdx学习记录18——Box2d物理引擎

    libgdx封装了Box2D物理引擎,通过这个引擎能够模拟物理现实,使设计出的游戏更具有真实感. libgdx中,Box2d程序的大概过程: 1. 创建物理世界world,并设置重力加速度. 2. 创 ...

  4. centos 7 搭建开源堡垒机 Teleport 遇到的问题解决

    不得不说 centos7 的环境版本就是高,没有再出现6.5下那些依赖组件的版本支持过低的错误了,所以说现在个人用户还是推荐用7,企业生产环境的话,可能6.5适合一些,至少2年前是这样. 安装过程:  ...

  5. 【绝对给力】Android开发免豆资料(教程+工具+源码)地址汇总

    教程下载: [免费]android界面效果全汇总.pdf http://down.51cto.com/data/209179 Android终极开发教程[pdf高清版] http://down.51c ...

  6. Asp.Net_的传值跟存储值操作

    页面传值是学习asp.net初期都会面临的一个问题,总的来说有页面传值.存储对象传值.ajax.类.model.表单等.但是一般来说,常用的较简单有QueryString,Session,Cookie ...

  7. Hybrid APP基础篇(二)->Native、Hybrid、React Native、Web App方案的分析比较

    说明 Native.Hybrid.React.Web App方案的分析比较 目录 前言 参考来源 前置技术要求 楔子 几种APP开发模式 概述 Native App Web App Hybrid Ap ...

  8. oracle (+) 什么意思

    oracle中的(+)是一种特殊的用法,(+)表示外连接,并且总是放在非主表的一方. 例如左外连接:select A.a,B.a from A LEFT JOIN B ON A.b=B.b;等价于se ...

  9. 第二个spring冲刺第4天

    今天,我们团队参考了其他团队的四则运算的程序,发现很多地方可以学习. 1.别人的界面比较唯美,我们做的有点粗糙,所以这个必须要改善. 2.别人的具有较多的功能,比如计时器,我们要效仿. 3.还有难度选 ...

  10. DeepID人脸识别算法之三代

    DeepID人脸识别算法之三代 转载请注明:http://blog.csdn.net/stdcoutzyx/article/details/42091205 DeepID,眼下最强人脸识别算法.已经三 ...