验证 SQL Server 数据库引擎 的服务帐户是否对文件的新位置具有完全权限。 如果 数据库引擎 服务帐户无法控制其新位置中的文件,则 SQL Server 实例将不会启动。
对于要移动的每个数据库文件,请运行以下语句。
ALTER DATABASE database_name MODIFY FILE ( NAME = logical_name , FILENAME = 'new_path\os_file_name' );在重新启动服务之前,数据库将继续使用现有位置中的数据和日志文件。
停止 SQL Server 实例以执行维护。
将数据库文件或文件复制到新位置。 请注意,这不是 tempdb 系统数据库的必要步骤,将自动在新位置创建这些文件。
重新启动 SQL Server 实例或服务器。
通过运行以下查询来验证文件更改。 系统数据库应报告新的物理文件位置。
SELECT name, physical_name AS CurrentLocation, state_desc FROM sys.master_files WHERE database_id = DB_ID(N'<database_name>');由于在步骤 5 中复制了数据库文件而不是移动它们,因此,现在可以从以前的位置安全删除未使用的数据库文件。