1、变更数据库文件指向
--- 查到真实名称 可能和你的数据库名称不同
SELECT name ,
physical_name AS CurrentLocation ,
state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'你的数据库名称') ;
--- 修改数据库文件指向目录
USE master
GO
ALTER DATABASE [shsmu_studentaffair]
MODIFY FILE(NAME='上面查到的名称', FILENAME='D:\DataBase_Data\文件名称.mdf');
GO
ALTER DATABASE shsmu_studentaffair
MODIFY FILE(NAME='上面查到的名称', FILENAME='D:\DataBase_Log\文件名称_log.ldf');
GO
2、关闭数据库
> NET STOP MSSQLServer
3、移动数据库文件
4、给文件和目录添加NT Service\MSSQLSERVER用户的完全控制权限
5、启动数据库
> NET START MSSQLServer
6、注意事项
- 期间可能存在权限问题导致数据库状态为RECOVERY PENDING,多半是路径问题或者权限问题