Tuesday, May 1, 2012

Moving System Databases (Change location of system databases)


How to move MSDB database into other drive?

use master
select * from msdb..sysfiles

use master
alter database msdb modify file (name=msdbdata, filename='c:\temp\msdbdata.mdf')
go
alter database msdb modify file (name=msdblog, filename='c:\temp\msdblog.ldf')

How to move MODEL database into other drive

use master
select * from model..sysfiles

use master
alter database model modify file (name=modeldev, filename='c:\temp\model.mdf')
go
alter database model modify file (name=modellog, filename='c:\temp\modellog.ldf')

Run select * from sysaltfiles query and verify whether path has been changed in the metadata or not, Once it is changed we need to perform the below steps to move databases.

1. Stop the services
2. Copy physical files into new path
3. Start the SQL Service

How to move Temp Db database into other drive?

use master
select * from tempdb..sysfiles

use master
alter database tempdb modify file (name=tempdev, filename = 'c:\temp\tempdb.mdf')
go
alter database tempdb modify file (name=templog, filename = 'c:\temp\templog.ldf')

Only difference with tempdb is we need not to copy this database into new location, because whenever we start the SQL Service tempdb database will automatically created by SQL Engine.

No comments: