很少有微软KB文章一步一步地教你如何把SQL Server系统数据库从一个地方迁移到另一个地方。迁移SQL Server 2000系统数据库比迁移SQL Server 2005数据库要麻烦的多。我没有机会迁移SQL Server 2008,但是我的猜测是这个过程跟SQL Server 2005一样简单。
以下的KB文章告诉你如何一步一步地迁移数据库,但是这个过程不需要如下显示的那样详细。
如何通过使用 SQL Server 中的 Detach 和 Attach 函数将 SQL Server 数据库移到新位置
移动系统数据库
迁移所有的SQL Server 2005系统数据库
一旦你看了上面的KB文章,你可以立即按照下面的步骤迁移数据库。
1、 更新SQL Server的-d和-l启动参数到主数据和日志文件新的位置。
2、 执行ALTER DATABASE命令来更改这个model,msdb和tempdb数据库文件的文件位置。
3、 关掉SQL Server。
4、 把MDF和LDF文件移到步骤一和步骤二指定的主数据库、model和msdb数据库的新位置。
5、 启动SQL Server
6、 删除旧的tempdb文件
除了主数据库、model、msdb和tempdb数据库,SQL Server 2005还引进了mssqlsystemresource数据库。微软建议不要迁移数据库,但是如果你确实想迁移数据库,你也可以按照下面的步骤进行。
1、 更新SQL Server的-d和-l启动参数到主数据和日志文件新的位置。
迁移所有的SQL Server 2000系统数据库
一旦你看了上面的KB文章,你可以立即按照下面的步骤来迁移所有的系统数据库。
1、 更新SQL Server的-d和-l启动参数到主数据和日志文件新的位置。
2、 执行ALTER DATABASE命令来更改这个model,msdb和tempdb数据库文件的文件位置。
3、 关掉SQL Server
4、 把MDF和LDF文件迁移到步骤一中指定的主数据库新位置。
5、 通过增加三个启动参数-c,-m和-T3608把SQL Server放在一个单独的用户模式中,接着启动SQL Server。
6、 把msdb和model数据库分离。
7、 把MDF和LDF文件移到model和msdb数据库的新位置。
8、 从它本身的新位置附上model数据库。
9、 关掉SQL Server
10、 把在步骤五中增加的启动选项删除。
11、 启动SQL Server
12、 附加一个msdb数据库
13、 删除旧的tempdb文件
虽然看起来仍然会有很多步骤,但是如果你在一个时间段移动一个数据库,那么这会同样减少关掉和启动SQL Server的需要。正如你看到的,如果你不移动mssqlsystemresource数据库,那么迁移所有的SQL Server 2005数据库比迁移SQL Server 2000数据库更容易