1、用BACKUP LOG database WITH NO_LOG清除日志
把数据库属性中的故障还原模型改为“简单”可以大大减慢日志增长的速度。
如果把还原模型调到简单,这样就不支持时间点还原了,但是日志文件会很小,如果数据比较重要
推荐还是把数据库的还原模型调为完全
用BACKUP LOG database WITH NO_LOG命名后,会截断不活动日志,不减小物理日志文件的大小,
但逻辑日志会减小,收缩数据库后会把不活动虚拟日志删除来释放空间,不会损坏数据。
如果日志被截断并收缩数据库后,就不能直接用最近的一个全库备份做时间点还原,建议立即备份
数据库,以防万一。
2、sql server运行中,是否能删除主数据库事务日志文件
步骤如下:(1)、分离数据库
企业管理器--数据库--右击你要删除日志的数据库--所有任务--分离数据库
(2)、然后删除日志文件
(3)、然后再附加数据库
企业管理器--数据库--右击数据库--所有任务--附加数据库
这时候只附加。mdf就可以了。
3、压缩SQL数据库及日志的详细方法
SQL Server 2000基础教程——压缩数据库
数据库在使用一段时间后,时常会出现因数据删除而造成数据库中空闲空间太多的情况,这时就需要减少分配给数据库文件和事务日志文件的磁盘空间,以免浪费磁盘空间。当数据库中没有数据时,可以修改数据库文件属性直接改变其占用空间,但当数据库中有数据时,这样做会破坏数据库中的数据,因此需要使用压缩的方式来缩减数据库空间。可以在数据库属性选项中选择“Auto shrink”选项,让系统自动压缩数据库,也可以用人工的方法来压缩。人工压缩数据库有以下两种方式:
1、用Enterprise Manager 压缩数据库
在Enterprise Manager 中在所要压缩的数据库上单击右键,从快捷菜单中的“所有任务(All Tasks)”中选择“Shrink Database(压缩数据库)”选项,就会出现如图6-10 所示的对话框。可以在图6-10 所示的对话框中选择数据库的压缩方式,也可以选择使用压缩计划或压缩单个文件
单击图6-10 中的“Files”按钮,会出现如图6-11 所示的压缩数据库文件对话框,可以针对每个数据库文件进行不同的压缩设置。
单击图6-10 中的“Change” 按钮,会出现如图6-12 所示的压缩计划编辑对话框,可以指定压缩计划的执行方式。单击图6-12 中的“Change” 按钮,会出现如图6-13 所示的循环工作计划编辑对话框,可以编辑计划执行的周期或时间点。设置完成后单击“OK” 按钮就开始压缩数据库,在压缩结束后会显示一个压缩情况信息框。
2、用Transact-SQL 命令压缩数据库
可以使用DBCC SHRINKDATABASE 和DBCC SHRINKFILE 命令来压缩数据库。其中DBCC SHRINKDATABASE 命令对数据库进行压缩,DBCC SHRINKFILE 命令对数据库中指定的文件进行压缩。
(1) DBCC SHRINKDATABASE
DBCC SHRINKDATABASE 命令语法如下:
DBCC SHRINKDATABASE (database_name [, target_percent]
[, {NOTRUNCATE | TRUNCATEONLY}] )
各参数说明如下:
·target_percent 指定将数据库压缩后,未使用的空间占数据库大小的百分之几。如果指定的百分比过大,超过了压缩前未使用空间所占的比例,则数据库不会被压缩。并且压缩后的数据库不能比数据库初始设定的容量小。
·NOTRUECATE
将数据库缩减后剩余的空间保留在数据库,中不返还给操作系统。如果不选择此选项,则剩余的空间返还给操作系统。
·TRUNCATEONLY
将数据库缩减后剩余的空间返还给操作系统。使用此命令时SQL Server 将文件缩减到最后一个文件分配,区域但不移动任何数据文件。选择此项后,target_percent 选项就无效了。
例6-14: 压缩数据库mytest 的未使用空间为数据库大小的20%。
dbcc shrinkdatabase (mytest, 20)
运行结果如下:
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
(2) DBCC SHRINKFILE
DBCC SHRINKFILE 命令压缩当前数据库中的文件。其语法如下:
DBCC SHRINKFILE ( {file_name | file_id }
{ [, target_size] |
[, {EMPTYFILE | NOTRUNCATE | TRUNCATEONLY}] } )
各参数说明如下:
·file_id
指定要压缩的文件的鉴别号(Identification number, 即ID)。文件的ID 号可以通过 FILE_ID()函数或如本章前面所讲述的Sp_helpdb 系统存储过程来得到。
·target_size
指定文件压缩后的大小。以MB 为单位。如果不指定此选项,SQL Server 就会尽最大可能地缩减文件。
·EMPTYFILE
指明此文件不再使用,将移动所有在此文件中的数据到同一文件组中的其它文件中去。执行带此参数的命令后,此文件就可以用ALTER DATABASE 命令来删除了。
其余参数NOTRUNCATE 和TRUNCATEONLY 与DBCC SHRINKDATABASE 命令中的含义相同。
例6-15: 压缩数据库mydb 中的数据库文件mydb_data2 的大小到1MB。 use mydb dbcc shrinkfile (mydb_data2, 1)
企业管理器里面的方法:
1、打开企业管理器
2、打开要处理的数据库
3、点击最上面菜单>工具>SQL查询分析器,打开SQL查询分析器
4、在输入窗口里面输入:
Code:
DUMP TRANSACTION [数据库名] WITH NO_LOG
BACKUP LOG [数据库名] WITH NO_LOG
DBCC SHRINKDATABASE([数据库名])
点击绿色的小三角(或按F5)执行查询,等状态栏提示处理完成即可!
程序里面的方法:
压缩数据库日志
--1.清空日志
exec('DUMP TRANSACTION ['+@dbname+'] WITH NO_LOG')
--2.截断事务日志:
exec('BACKUP LOG ['+@dbname+'] WITH NO_LOG')
--3.收缩数据库文件(如果不压缩,数据库的文件不会减小
exec('DBCC SHRINKDATABASE(['+@dbname+'])')
4、减小日志的方法:
一、用如下步做了:
1、DUMP TRANSACTION 庫名 WITH no_log
2、dbcc shrinkfile(logfilename)
3、收縮數據庫
4、設定自動收縮。
二、
分离数据库,删除日志文件,再附加,OK!
右击数据库--所有任务--分离or 附加
三、
1、backup log 庫名 WITH no_log
2、dbcc shrinkfile(logfilename)
3、收縮數據庫
4、設定自動收縮。
分享到:
相关推荐
关于SQLServer事务日志的问题汇总
SQLServer事务与锁的基础概念总结 - 小麦的日志 - 网易博客.mht
总结的如何解决SQL数据库日志已满的方法,希望对大家有帮助
3. 企业级数据库功能:SQL Server 2000关系数据库引擎支持当今苛刻的数据处理环境所需的功能,具有数据完整性保护、分布式查询、分布式事务支持、复制等特性。 4. 易于安装、部署和使用:SQL Server 2000中包括一...
通过《SQL Server 数据库备份和还原认识和总结(一)》,相信您对数据备份和还原有了一个更深入的认识,在上文中我没有对事务日志做剖析,在此推荐宋沄剑的文章,对事务日志做了比较详细的讲解://...
本书不但融合了作者在使用SQL Server 2000过程中遇到的各种常见问题和应用案例,还总结了作者几年来在CSDN 社区SQL Server版所解决的大量问题,面向实际项目需求,涉及不同类型的应用,能够多角度地引导读者学习相关...
同时,对事务日志进行备份也只会截断不活动事务的那部分事务日志,所以打开的事务会导致日志变多(甚至达到物理限制),直到事务被提交或回滚。 要找到最早的活动事务,可以使用 DBCC OPENTRAN 命令。DBCC OPENTRAN...
本书深入浅出地介绍了目前世界上最受欢迎的数据库管理系统之一——SQL Server。全书共分三个部分:第一部分阐释了数据库的基本概念,讲解了数据库建模语言;第二部分展示了从概念建模到在SQL Server 2008上真正实现...
15.3.2 从事务日志中删除日志记录 472 15.3.3 日志文件处理中的误区 472 15.3.4 合理解决日志文件增长 473 15.4 错误处理疑难解答 474 15.4.1 错误处理概述 474 15.4.2 错误处理严重程度 475 15.4.3 ...
SQL Server数据库技术试卷知识点总结 一、选择题 1. SQL Server 2000 属于关系模型数据库系统。 知识点:SQL Server版本、数据库模型 2. 关键字可由一个或多个字段组成。 知识点:关系数据表、关键字 3. 字符...
SQL Server 数据库模拟试题知识点总结 本文档总结了 SQL Server 数据库模拟试题的知识点,包括选择题和填空题两部分, 涵盖了数据库管理、性能优化、安全控制、数据备份、索引管理、视图管理、存储过程管理、数据库...
查询速度慢的原因很多,常见如下几种:1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)2.I/O...把数据、日志、索引放到不同的I/O设备上,增加读取速度,以前可以将Tempdb应放在RAID0上,SQL200
今天阿猪和大家正式进入SQL Server的第二次学习,所有的学习笔记阿猪都是跟着《大型数据库管理系统 技术、应用于实例分析》和结合(百度文库)总结归纳出来的,在今后的讲解中阿猪只使用SQL命令来编写,好的接下来...
作者通过实训,了解到了数据备份的重要性,了解到了数据备份的步骤,包括数据库完整备份、差异备份、事务日志备份、文件及文件组备份等。 最后,作者通过实训,了解到了团队合作的重要性,了解到了在学习和探究中...
在SQL Server中,事务控制语句包括BEGIN TRANSACTION、COMMIT TRANSACTION、ROLLBACK TRANSACTION等。BEGIN TRANSACTION语句用于开始一个事务,COMMIT TRANSACTION语句用于提交事务,ROLLBACK TRANSACTION语句用于回...
下边是我对部分内容的总结,里边偏向了T-SQL语句实现的总结,对于SQL Server Management Studio中对象管理器的操作并没有太多的总结,因为这些都有一些向导,而且,大部分都是在对应的节点,右击找相应的操作,相应...
MSDTC服务用于管理多个服务器,并且是Microsoft Personal Web Server和Microsoft SQL Server的重要组件。 MSDTC服务的主要功能是管理分布式事务,对于需要跨多个资源的事务处理非常重要。例如,在电子商务网站中,...
5. 数据库逻辑结构设计:设计数据库的逻辑结构,包括学生信息管理系统的逻辑结构设计,包括数据库名、数据文件和事务日志文件的设计。 6. 数据库物理结构设计:设计数据库的物理结构,包括学生信息管理系统的物理...
数据文件用于存储数据库的数据,而日志文件用于存储数据库的事务日志。数据文件和日志文件的大小可以根据需要进行调整。 五、实验结论 通过本实验,我们了解了 SQL Server 数据库的存储结构,掌握了数据库的创建、...
3. SQL Server 2005 支持事务处理、锁机制和日志记录等。 七、数据库开发技术 数据库开发技术是指使用数据库管理系统来设计、开发和实现数据库应用程序的技术。 1. 数据库开发技术需要考虑到数据的存储、检索和...