当前位置:天才代写 > tutorial > 数据库教程 > 如何在SQL2004软件中收缩数据库和文件

如何在SQL2004软件中收缩数据库和文件

2018-05-16 08:00 星期三 所属: 数据库教程 浏览:971

  当数据库随着使用时间而越来越大时,用户就可以考虑对数据库进行收缩操作。收缩数据文件通过将数据页从文件末尾移动到更靠近文件开头的未占用的空间来恢复空间,在文件末尾创建足够的可用空间后,可以取消对文件末尾的数据页的分配并将它们返回给文件系统。

  发挥自动收缩数据库

  SQLServer2014支持计算机系统自动收缩数据库和用户手动收缩数据库这两种方式。为提高数据库的使用空间,SQLServer2014会寻找可用的数据库并找出第一个配置为自动收缩的数据库,它将检查该数据库,并在需要时收缩该数据库待一个数据库收缩完成后,系统会等待几分钟再检査下一个配置为自动收缩的数据库。换句话说,SQLServer不会同时检查所有数据库,也不会同时收缩所有数据库。它将以循环方式处理各个数据库,以使负载在时间上错开如果用户需要SQLServer2014系统自动对数据库进行收缩,只需为该数据库设置自动收缩功能即可,其操作方式为:右击选择的数据库,选择【属性】/【选项】菜单项,在弹出的数据库属性界面中设置自动收缩为True。

如何在SQL2004软件中收缩数据库和文件_SQL_数据库_数据结构_课课家

  手动对指定的数据库进行收缩

  手动收缩数据库除了自动收缩外,用户也可以手动对指定的数据库进行收缩。但手动收缩数据库有一定的限制和局限,主要表现在如下几方面:据(1)收缩后的数据库不能小于数据库的最小大小。最小大小是在数据库最初创建时指定的大小,或是上一次使用文件大小更改操作(如DBCCSHRINKFILE)设置的显式大小。例如,如如果数据库最初创建时的大小为10MB,后来增长到100MB,则该数据库最小只能收缩到10MB,即使已经删除数据库的所有数据也是如此。库。(2)不能在备份数据库时收缩数据库。反之,也不能在数据库执行收缩操操作时备份数据(3)遇到内存优化的列存储索引时,DBCCSHRINKDATABASE操作将会失败。遇到columnstore索索引之前完成的工作将会成功,因此数据库可能会较小。若要完成成DBCCSHRINKDATABASE,需要在执行DBCCSHRINKDATABASE前禁用所有列存储索引,然后重新生成列存储索引。

手动收缩数据库除了自动收缩外,用户也可以手动对指定的数据库进行收缩。但手动收缩数据库有一定的限制和局限,主要表现在如下几方面:据(1)收缩后的数据库不能小于数据库的最小大小。最小大小是在数据库最初创建时指定的大小,或是上一次使用文件大小更改操作(如DBCCSHRINKFILE)设置的显式大小。例如,如如果数据库最初创建时的大小为10MB,后来增长到100MB,则该数据库最小只能收缩到10MB,即使已经删除数据库的所有数据也是如此。库。(2)不能在备份数据库时收缩数据库。反之,也不能在数据库执行收缩操操作时备份数据(3)遇到内存优化的列存储索引时,DBCCSHRINKDATABASE操作将会失败。遇到columnstore索索引之前完成的工作将会成功,因此数据库可能会较小。若要完成成DBCCSHRINKDATABASE,需要在执行DBCCSHRINKDATABASE前禁用所有列存储索引,然后重新生成列存储索引。

  小编结语:其实,对于手动收缩数据库可以在SQLServerManagementStudio工具的对象资源管理器中完成,其具体实现步骤如下(1)在对象资源管理器中,连接到SQLServer数据库引擎的实例,然后展开该实例。(2)展开“数据库”,再右击要收缩的数据库。(3)指向【任务】【收缩】,然然后单击【数据库】菜单项,弹出如图6.19所示的收缩数据库界面。

 

    关键字:

天才代写-代写联系方式