SQL2K数据库开发三之收缩数据库

本文介绍了在 SQL Server 中手动及自动收缩数据库的方法,包括如何使用企业管理器进行操作、设置调度以及通过 T-SQL 语句实现。还讨论了文件级别的收缩限制。
        1.在SQL Server企业管理器中,右击要收缩的数据库,在弹出的菜单中选择"所有任务"子菜单下的"收缩数据库"项。
 
        2.在"收缩后文件中的最大可用空间"中输入收缩后数据库中剩余的可用空间量。选择“在收缩前将页移到文件起始位置”,使释放的文件空间保留在数据库文件中,并使包含数据的页移到数据库文件的起始位置。
        3.点击“调度”命令创建或更改自动收缩数据库的频率和时间。点击更改按钮对调度进行具体的设置。在弹出的窗口中选择调度发生的时机。选择“反复出现”,点击右侧的更改按钮,设定调度发生的频率和每日发生的频率以及持续时间。
 
         4.在步骤2中,还可以选择对单个的文件进行收缩。方法是点击“文件”,在“数据库文件”列表中选择一个要收缩的文件,在“收缩操作”中选择一种收缩文件的方式点击确定按钮。
         7.除了手工设置数据库的收缩外,还可以设置让数据库自动收缩。双击要收缩的数据库图标,在数据对话框的“选项”页面中选中“自动收缩”选项,点击“确定”按钮。
         8.通过本例我们学习了如何收缩数据库以及如何对数据库收缩进行调度设置。HOHO
 
       9.通过语句我们也可以来收缩数据库, AIS20071219151707 是数据库名,在查询分析器中执行。
DBCC SHRINKDATABASE(AIS20071219151707)
backup log AIS20071219151707 with no_log
 
注:
    SQL Server 2000允许收缩数据库的每个文件以除掉未使用的页面,数据文件和事务日志文件都能被收缩。收缩可以成组进行,也可以个别进行。可以指定时间间隔使得数据库在给定的时间自动收缩,这时收缩操作是在后台发生的,不会影响任何数据库用户的活动。当使用了ALTER DATABASE 的AUTO_SHRINK 选项设置数据库的自动收缩(或者是系统存储过程sp_dboption)时,每当数据库中有大量的空闲空间时,数据库就会收缩,然而如果要移除的空闲空间百分比不能被设置的话则空闲空间将会尽可能地被释放。
    不能收缩比其最初的规模小的完全的数据库,所以假定一个数据库在创建时的初始大小是10M,然后增长到了100M,如果此时数据库中所有的数据都被删除了,则它能收缩到的最小规模也是10M,不过使用DBCC SHRINKFILE语句可以将单个数据库文件收缩到小于初始规模的大小,如果使用这种方法就必须对每个文件进行操作而不能对整个数据库收缩。
    事务日志文件的收缩有固定的界线,虚拟日志的规模决定了可能的减少。因此日志文件决不能收缩到比虚拟日志文件更小的规模,收缩事务日志文件将删除未使用的虚拟日志文件,但会留下至少一个虚拟日志文件。
    SQL Server 2000中DBCC SHRINK DATABASE或DBCC SHRINKFILE操作会试图立即将事务日志文件收缩到要求的尺寸(在取整的条件下).应该在收缩文件之前就截取好日志文件已减少逻辑日志文件的大小,并且标记出不含有任何逻辑日志的虚拟日志。
 
---------------------------------------------------------------------------
数据库软件SQL2000和SP4补丁集成版本,可应用于数据库开发等应用。Microsoft SQL Server 2000 Service Pack 4 概述 更新信息:Microsoft 在 SP4 的最终内部版本中发现了一个问题,如果用户在运行 SQL Server 时启用了 AWE 支持功能,就会受到该问题的影响。此问题对 ia64 平台没有影响。在 x86 和 x64 系统上,该问题只会影响符合以下条件的用户:已经启用 AWE 并占用了超出 2 GB 的内存(仅适用于 Enterprise、Developer 和 Evaluation 版本);系统的一大半总内存分配给单个 SQL Server 实例。具有此配置的用户应在升级到 SP4 之后获取并应用 Microsoft 知识库的文章 899761 中指定的修补程序。 SP4 是一个累积的 Service Pack,包含以前各 Service Pack 版本中的所有修补程序,其中包括 MS03-031 安全公告。 SP4 包含以下 SQL Server 2000 组件的程序包: 数据库组件(67.1MB)(下载文件:SQL2000-KB884525-SP4-x86.EXE) 更新 SQL Server 2000 的 32数据库组件,包括数据库引擎、复制、客户端连接组件和工具。有关其他信息,请参阅ReadmeSql2k32Sp4.htm Analysis Services 组件(44.6 MB)(下载文件:SQL2000.AS-KB884525-SP4-x86.EXE): 更新 SQL Server 2000 的 32 位 Analysis Services 组件。有关其他信息,请参阅 ReadmeSql2k32ASp4.htm。 SQL Server 2000 Desktop Engine (MSDE) 组件(80.2 MB)(下载文件:SQL2000.MSDE-KB884525-SP4-x86.EXE): 对于 SQL Server 2000 的 32 位 MSDE 组件: 安装 MSDE 的新实例 升级 MSDE 的现有实例 更新已使用合并模块的应用程序 有关其他信息,请参阅 ReadmeSql2k32DeskSp4.htm SQL Server 2000 64 位组件(下载文件:SQL2000-KB884525-SP4-ia64.EXE): 更新 SQL Server 2000 的 64 位数据库组件和 64 位 Analysis Services 组件。有关其他信息,请参阅 ReadmeSql2k64Sp4.htm
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值