经常更新和优化的数据库可以以更快的速度运行。然而,将数据库直接从一个比较小的磁盘转移到另一个比较大的磁盘,这样的想法是不可能实现的。在转移数据库之前,你必须将数据库断开所有的操作。使用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:/anyfolder/mydatabase_data.mdf',
@filename2='d:/anyfolder/mydatabase_log.ldf'
新闻热点
疑难解答