Tempdb veritabanını başka bir diske taşımak
“Veritabanı file(dosya)’larının disklerini değiştirmek” isimli makalemde normal bir veritabanının disklerini nasıl değiştireceğimizi anlattım. Aynı yöntemle tempdb’yi taşıyamazsınız. Çünkü tempdb servis her başladığında sql server tarafından yeniden oluşturulur. Bu yüzden aşağıdaki script yardımıyla servis bir daha açıldığında tempdb file’larını şu disklerde oluştur anlamına gelen aşağıdaki script’i çalıştırabilirsiniz. Öncelikle script’i makalenin devamında anlattığım gibi düzenlemelisiniz.
use master go alter database tempdb modify file (name = tempdev, filename = 'H:\Disk01\Tempdb\tempdb.mdf') go alter database tempdb modify file (name = tempdev10, filename = 'H:\Disk01\Tempdb\tempdev10.ndf') go alter database tempdb modify file (name = tempdev11, filename = 'H:\Disk01\Tempdb\tempdev11.ndf') go alter database tempdb modify file (name = tempdev12, filename = 'H:\Disk01\Tempdb\tempdev12.ndf') go alter database tempdb modify file (name = tempdev13, filename = 'H:\Disk01\Tempdb\tempdev13.ndf') go alter database tempdb modify file (name = tempdev14, filename = 'H:\Disk01\Tempdb\tempdev14.ndf') go alter database tempdb modify file (name = tempdev2, filename = 'H:\Disk01\Tempdb\tempdev2.ndf') go alter database tempdb modify file (name = tempdev3, filename = 'H:\Disk01\Tempdb\tempdev3.ndf') go alter database tempdb modify file (name = tempdev4, filename = 'H:\Disk01\Tempdb\tempdev4.ndf') go alter database tempdb modify file (name = tempdev5, filename = 'H:\Disk01\Tempdb\tempdev5.ndf') go alter database tempdb modify file (name = tempdev6, filename = 'H:\Disk01\Tempdb\tempdev6.ndf') go alter database tempdb modify file (name = tempdev7, filename = 'H:\Disk01\Tempdb\tempdev7.ndf') go alter database tempdb modify file (name = tempdev8, filename = 'H:\Disk01\Tempdb\tempdev8.ndf') go alter database tempdb modify file (name = tempdev9, filename = 'H:\Disk01\Tempdb\tempdev9.ndf') go alter database tempdb modify file (name = tempdev15, filename = 'H:\Disk01\Tempdb\tempdev15.ndf') go alter database tempdb modify file (name = tempdev16, filename = 'H:\Disk01\Tempdb\tempdev16.ndf') go alter database tempdb modify file (name = templog, filename = 'H:\Disk01\Tempdb\templog.ldf') Go
Yukardaki scriptte 16 tane file’a sahip olan tempdb’mizi H drive’ının altına mount edilmiş Disk01 isimli diskimize yerleştiriyoruz. Mount etmek kavramını “Mounted Drive Nedir ve Nasıl Oluşturulur” isimli makalemde bulabilirsiniz. Sizin tempdb file sayınıza ve file’larınızın isimlerine göre yukarıdaki script’i düzenlemeniz gerekecektir. Tempdb file sayısı ve isimlerini aşağıdaki script yardımıyla görebilirsiniz.
select * from sys.sysaltfiles where dbid=DB_ID('tempdb')