如何移动SQL SERVER的系统数据库

以下链接有完整的说明

http://msdn.microsoft.com/zh-cn/library/ms345408.aspx

 

特别提一下的是,在做性能调优的时候,其中一般都有一条是:要把tempdb移动到单独的磁盘上去,又因为tempdb的特殊性。所以下面专门整理了一段代码供参考

 

/*
由于每次启动 SQL Server 实例时都将重新创建 tempdb,所以不必实际移动数据和日志文件。当服务在步骤 3 中重新启动时,将在新位置中创建这些文件。在重新启动服务之前,tempdb 将继续使用现有位置中的数据和日志文件。
*/
--1.确定 tempdb 数据库的逻辑文件名称以及在磁盘上的当前位置。
SELECT name, physical_name AS CurrentLocation
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');
GO

--2.使用 ALTER DATABASE 更改每个文件的位置
USE master;
GO
ALTER DATABASE tempdb
MODIFY FILE (NAME = tempdev, FILENAME = 'E:\SQLData\tempdb.mdf');
GO
ALTER DATABASE tempdb
MODIFY FILE (NAME = templog, FILENAME = 'F:\SQLLog\templog.ldf');
GO

--3.停止再重新启动 SQL Server 的实例。

--4.验证文件更改。
SELECT name, physical_name AS CurrentLocation, state_desc
FROM sys.master_files
WHERE database_id = DB_ID(N'tempdb');

--5.将 tempdb.mdf 和 templog.ldf 文件从其原始位置中删除。

posted @ 2008-07-29 16:09  陈希章  阅读(631)  评论(0编辑  收藏  举报