日期:2014-05-16  浏览次数:20428 次

SQL Server 使用Detach和Attach 方式 移动数据库位置

数据库备份和权限等云云的概念就不介绍了, 直接进入主题操作了


环境:

1. 服务器 SQL Server 2005

2.  客户端工具: SQL Server Management Studio

3. 需要移动的数据库名是: oscardb


步骤

1.  查看并记录当前数据库的数据文件和日志文件的名称以及位置。

方式有两种:

  • 界面直接操作, 选中需要移动的数据库, 右键点击选”属性“, 在“文件”选择页就能看到。
  • 在SQL Server Management Studio 点击“新建查询", 进入SQL查询,输入

use oscardb
go 
sp_helpfile
go

2. 以独占方式访问数据库, 防止有其他人在使用

use master
go
alter database oscardb
set single_user
go


3. 分离数据库

也是两种方式:

界面操作, 右键点击数据库-> 任务--> 分离

SQL语句

use master
go 
sp_detach_db 'oscardb'
go

4. 将数据和日志文件移动到新位置(我这边是 D:\sqlserverdata)


5. 附件指定文件的数据库

页面操作在数据库上右键 -- attach.

SQL语句是:

use master
go 
sp_attach_db 'xuemingdb','D:\sqlserverdata\oscardb.mdf','D:\sqlserverdata\oscardb_log.ldf'
go