在移动数据库文件之前使用sp_detach_db / sp_attach_db

ZDNet软件频道 时间:2003-08-20 作者:ZDNet China |  我要评论()
本文关键词:sqltips
经常更新和优化的数据库可以以更快的速度运行。然而,将数据库直接从一个比较小的磁盘转移到另一个比较大的磁盘,这样的想法是不可能实现的。
本文译自Builder.com,未经许可请勿转载经常更新和优化的数据库可以以更快的速度运行。然而,将数据库直接从一个比较小的磁盘转移到另一个比较大的磁盘,这样的想法是不可能实现的。

在转移数据库之前,你必须将数据库断开所有的操作。使用sp_detach_db存储程序可以将数据库从SQL Server 2000分离开来,从而达到数据库的离线操作。同样可以运行另一个存储程序sp_attach_db将数据库重新连接。

Sp_detach_db是一个功能强大的存储程序,它只能由系统管理人员运行。除了具备“分离”功能之外,这一程序在分离数据库之前也自动运行所有表的UPDATE STATISTICS。

以下的范例分离了MyDatabase数据库:

EXEC sp_detach_db 'MyDatabase'

现在可以转移我们的数据库到一个新的磁盘并重新连接它们。连接数据库操作可能比较复杂,除了提供数据库名称,你可以选择SQL Server数据库文件的位置。

在以下的范例中,我们可以从一个新位置D:AnyFolder:重新连接数据库。

execsp_attach_db 'MyDatabase',
@filename1='D:AnyFolderMyDatabase_Data.MDF',
@filename2='D:AnyFolderMyDatabase_Log.LDF'



责任编辑:炒饭

欢迎评论投稿


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134