Microsoft SQL server da veri tabanımızı taşımanın birçok yöntemi vardır. Bunlar yedek alma ve yedekten geri dönme, copy database, attach/deattach, veri tabanının scriptini alıp aktarma vb. yöntemlerdir.
Veri tabanlarımız diğer bir sql sunucuya ya da aynı sql sunucudaki farklı bir disk alanına bu yöntemler ile taşınabilir.
Sistem veri tabanları ise bu yöntemler ile taşınamaz. Bunun sebebi de çalıştıkları dizin yani lokasyon bilgisi yapılandırma ayarlarının içerisinde tutulur.
Model, tempdb ve msdb veri tabanı aynı yöntem ile taşınırken master veritabanı farklı bir yöntem ile taşınmaktadır. Taşınma işlemleri kesintisiz yapılamamaktadır. Bu yüzden taşıma işlemlerini gün içerisinde yapmamalısınız.
Model, tempdb ve msdb aynı yöntem ile taşındığından sadece MSDB nin taşınması uygulamasına değineceğim. Diğer ikisi içinde aynı işlemler aynı sıra ile uygulanabilir.
Veri tabanını taşımak için öncelikle aşağıdaki sorgu ile şimdiki yerini kontrol ediyoruz.
1 2 3 4 5 6 7 |
-- SELECT name, physical_name AS CurrentLocation, state_desc FROM sys.master_files WHERE database_id = DB_ID(N'model'); |