//删除大量数据
/***
*
* BEGIN TRANSACTION;
* SELECT * INTO #keep FROM Original WHERE CreateDate > '2011-12-31'
TRUNCATE TABLE Task_Questionnaire
INSERT Task_Questionnaire SELECT * FROM #keep
* COMMIT TRANSACTION;
*
* //TRUNCATE TABLE Task_Questionnaire 清空数据
*
* BEGIN TRANSACTION;
SELECT * INTO [Task_Questionnaire_1] FROM [dbo].[Task_Questionnaire] WHERE tq_time>'2016-07-01';
ALTER TABLE [dbo].[Task_Questionnaire_1] ADD PRIMARY KEY ([tq_id]);
DROP TABLE [dbo].[Task_Questionnaire];
EXEC sp_rename N'[dbo].[Task_Questionnaire_1]', N'Task_Questionnaire';
COMMIT TRANSACTION;
***/ select @@version --收缩数据库
USE DBName
GO
DBCC SHRINKDATABASE(N'DBName' )
GO
--收缩数据库文件
USE ZhszpjData
GO
DBCC SHRINKFILE (N'DBName' , 0, TRUNCATEONLY)
GO --1用dbcc命令,带不同的参数测试
--1.1收缩指定数据库中的数据文件和日志文件的大小
DBCC SHRINKDATABASE ( test )
DBCC SHRINKDATABASE ( test,TRUNCATEONLY )
DBCC SHRINKDATABASE ( test,NOTRUNCATE )
DBCC SHRINKDATABASE ( test ) WITH NO_INFOMSGS --1.2收缩当前数据库的指定数据或日志文件的大小,
DBCC SHRINKFILE (Test)
DBCC SHRINKFILE (Test_log)
DBCC SHRINKFILE (Test_log,EMPTYFILE)
DBCC SHRINKFILE (Test_log,TRUNCATEONLY) WITH NO_INFOMSGS
--2.用企业管理器
--选中数据库->右键->任务->数据库/文件->确定 1.清空日志: DUMP TRANSACTION [databasename] WITH NO_LOG 2.截断事务日志: BACKUPLOG [databasename] WITH NO_LOG 3.收缩数据库: DBCC SHRINKDATABASE([databasename]) SQLServer数据库日志清理 清除sqlserver2008日志 SQL2008 的收缩日志
由于SQL2008对文件和日志管理进行了优化,所以以下语句在SQL2005中可以运行但在SQL2008中已经被取消:
(SQL2005) 复制代码 代码如下: BackupLog DNName with no_log
go
dumptransaction DNName with no_log
go
USE DNName
DBCC SHRINKFILE (2)
Go (SQL2008):
在SQL2008中清除日志就必须在简单模式下进行,等清除动作完毕再调回到完全模式。 方案一:完全命令模式 复制代码 代码如下: USE[master]
GO
ALTERDATABASE DNName SET RECOVERY SIMPLE WITH NO_WAIT
GO
ALTERDATABASE DNName SET RECOVERY SIMPLE --简单模式
GO
USE DNName
GO
DBCC SHRINKFILE (N'DNName_Log' , 11, TRUNCATEONLY)
GO
USE[master]
GO
ALTERDATABASE DNName SET RECOVERY FULLWITH NO_WAIT
GO
ALTERDATABASE DNName SET RECOVERY FULL --还原为完全模式
GO 方案二:部分命令模式 + 任务-收缩-文件(单个数据库) ALTERDATABASE DNName SET RECOVERY SIMPLE --简单模式
GO 右键-任务-收缩-文件-确定 下来数据库的日志只保留了1M ALTERDATABASE DNName SET RECOVERY FULL --还原为完全模式 GO 优点:此清除日志所运行消耗的时间短,90GB的日志在分钟左右即可清除完毕,做完之后做个完全备份在分钟内
即可完成。
缺点: 不过此动作最好不要经常使用,因为它的运行会带来系统碎片。普通状态下LOG和DIFF的备份即可截断日志。

SQL Server 收缩数据库的更多相关文章

  1. SQL SERVER 收缩数据库的命令

    --备份数据库 BACKUP DATABASE testdb TO DISK='d:\data\testdb20070906.bak' --清空日志 DUMP TRANSACTION testdb W ...

  2. SQL Server收缩数据库

    USE[master]GOALTER DATABASE CCPG_SFY SET RECOVERY SIMPLE WITH NO_WAITGOALTER DATABASE CCPG_SFY SET R ...

  3. Data Base sql server 备份数据库

    sql server 备份数据库 1.维护计划向导: 右键维护计划-维护计划向导-然后安装提示: 勾选自己要干的事,比如:完整备份数据库.差异备份数据库等等 2.作业计划: 如下图: SQL Serv ...

  4. 让PDF.NET支持不同版本的SQL Server Compact数据库

    最近项目中需要用到嵌入式数据库,我们选用的数据开发框架是PDF.NET(http://www.pwmis.com/SqlMap/),之前的博文已经总结了让PDF.NET支持最新的SQLite,今天我们 ...

  5. Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码)

    Linux下使用FreeTDS访问MS SQL Server 2005数据库(包含C测试源码) http://blog.csdn.net/helonsy/article/details/7207497 ...

  6. 如何转换SQL Server 2008数据库到SQL Server 2005

        背景介绍: 公司一套系统使用的是SQL SERVER 2008数据库,突然一天收到邮件,需要将这套系统部署到各个不同地方(海外)的工厂,需要在各个工厂部署该数据库,等我将准备工作做好,整理文档 ...

  7. SQL SERVER 2008数据库各版本功能对比

    微软SQL SERVER 2008数据库有6个版本,分别是数据中心版.企业版.标准版.Web版.工作组版.简易版,有时候购买的时候或需要使用某项功能时,需要了解各个版本的区别,功能差异,很多时候,大部 ...

  8. SQL Server附加数据库时报1813错误的解决方案

    SQL Server附加数据库时报1813错误的解决方案   无法打开新数据库 'ASR'.CREATE DATABASE 中止. 文件激活失败.物理文件名称'E:\SqlServer\MSSQL\D ...

  9. SQL Server附加数据库问题

    SQL Server附加数据库时,遇到如下问题:“如果升级全文目录,请单加“添加目录”,然后找到它并选择它.基于全文升级选项,全文索引将为“已导入”.” 解决方法: 选择数据库文件所在目录,右键-&g ...

随机推荐

  1. 【转】Python 代码调试技巧

    转载自:http://www.ibm.com/developerworks/cn/linux/l-cn-pythondebugger/ Debug 对于任何开发人员都是一项非常重要的技能,它能够帮助我 ...

  2. Ubuntu的一些常用快捷键

    Ubuntu操作基本快捷键 * 打开主菜单 = Alt + F1 * 运行 = Alt + F2 * 显示桌面 = Ctrl + Alt + d * 最小化当前窗口 = Alt + F9 * 最大化当 ...

  3. Servlet、JSP选择题

    Java EE软件工程师认证考试 试题库-选择题   一.    选择题(包括单选和双选) 1.A 对于B/S架构的工作流程,以下说法正确的是(   )(选择一项) A. 浏览器接受用户的输入--&g ...

  4. ListView配合CheckBox出现position位置错误的解决

    最近做checkBox和ListView配合使用,想把position的位置传入到 checkBox的onCheckedChanged,于是我就在getView的时候, 把position通过chec ...

  5. Codeigniter CRUD代码快速构建

    一个与数据库操作打交道的应用,必然涉及到数据的添加.修改.删除等操作.因此CRUD操作几乎成为每个后台管理站点的必备功能.数据库的复杂性,导致PHP操作代码也会有不少的冗余,因此,如果可以有工具自动生 ...

  6. 计数排序算法——时间复杂度O(n+k)

    计数排序 计数排序是一个非基于比较的排序算法,该算法于1954年由 Harold H. Seward 提出.它的优势在于在对一定范围内的整数排序时,它的复杂度为Ο(n+k)(其中k是整数的范围),快于 ...

  7. android获取string.xml的值(转)

    为什么需要把应用中出现的文字单独存放在string.xml文件中呢? 一:是为了国际化,当需要国际化时,只需要再提供一个string.xml文件,把里面的汉子信息都修改为对应的语言(如,English ...

  8. JS如何实现点击页面内任意的链接均加参数跳转?

    1.JS跳转页面参考代码 第一种: <script language="javascript" type="text/javascript"> wi ...

  9. 使用github上的开源框架SlidingMenu环境的搭建,以及getSupportActionBar方法不能找到的问题

    http://blog.csdn.net/lovexieyuan520/article/details/9814273 使用github上的开源框架SlidingMenu环境的搭建,以及getSupp ...

  10. android中sharedPreferences的用法

    SharedPreferences介绍:   做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库来存放并不划算,因为数据库连接跟操作等 ...