MSSQL Server Tempdb Data File Ekleme

Bu makalede kurulum sırasında eklenmeyen veya herhangi bir tempdb contetion’dan dolayı tempdb data file sayısı ekleme konusunu görmüş olacağız. Tempdb ile ilgili detaylı bilgi almak için ilgili makale okunabilir.

Tempdb veritabanı properties ekranında Files bölümünde Add denilerek tempdb dosyalarımız eklenir. Sql server üzerinde herhangi bir contetion olduğu fark edilirse sayfamızdaki makaleden adımlar izlenerek manuel veya scriptlerle tempdb data file’lar oluşturulur.

Yeni oluşturulacak data file için gerekli bilgiler doldurulduktan sonra işlemin script’i alınır. Autogrowth bölümü diğer tempdb yapılarıyla aynı yapılmalıdır.

Yukarıdaki ekran resminin çıktısı:

USE [master]
GO
ALTER DATABASE [tempdb] ADD FILE ( NAME = N'temp7', FILENAME = N'C:\C1\Tempd\tempdb_mssql_7.ndf' , SIZE = 8192KB , FILEGROWTH = 65536KB )
GO

İlgili komut çalıştırıldıktan sonra 7. Temp dosyamızda oluşmuş durumdadır.

TempDB data file sayısını aşağıdaki script ile otomatik bir şekilde oluşturabilirsiniz.

USE master;
GO

-- tempdb data file'larının bulunduğu dizini belirtin
DECLARE @path NVARCHAR(500) = 'C:\Program Files\Microsoft SQL Server\MSSQL14.TEST23\MSSQL\DATA\tempdb_mssql_';
DECLARE @i INT = 2;
DECLARE @sql NVARCHAR(MAX);

WHILE @i <= 6
BEGIN
    SET @sql = '
    ALTER DATABASE tempdb ADD FILE (
        NAME = temp' + CAST(@i AS NVARCHAR) + ',
        FILENAME = ''' + @path + CAST(@i AS NVARCHAR) + '.ndf'',
        SIZE = 512MB,
        FILEGROWTH = 128MB
    )';
    
    PRINT @sql; -- İstersen önce sadece kontrol et
    EXEC(@sql);

    SET @i += 1;
END
GO

Dikkat ederseniz Path kısmında yukarıda uzantıda son kısma ne yapmışsak o geldi. Name kısmında NAME = temp kısmında ne isim vermişsek FileName kısmında ona göre temp2-temp3-temp4-temp5-temp6 şeklinde tempdb dosyalarımızı ekleyebiliriz.

Not: Gerçek sistemde Tempdb log dosyası tempdb diski altında diğer klasörlerle birlikte bulunmaktadır. Aşağıdaki resim 2 TB ram 192 CPU olan makina üzerinden alınmıştır.

Tempdb başlangıç boyutu maksimum tempdb kullanımın %25-30 kadar uygulanmalıdır. Bu dilim varsayılandır. İyi diskleriniz veya memory konusunda sıkıntı yaşamıyorsan bu boyut artırılabilir. Tempdb dosyalarının autogrowth değeri 512 MB veya 1 GB’lık büyütme adımlarıyla ayarlamamız gerekmektedir.

Gerçek sistem üzerinde tempdb başlangıç olarak initial size değeri tempdb sayısına bağlı 50-100 GB olarak yapılandırılabilir.

Bazen sorarlar tempdb dolduğu zaman kırmızı görünen disk neden sunucu kapanıp açıldığında kaybolur. Çünkü tempdb her açılıp kapanmada yeniden oluşmaktadır. Bu sadece sunucu seviyesinde değil sql servis seviyesinde de gerçekleşir.

Tempdb değişiklikleri yeniden restart sonrası geçerli olmaktadır.

Bu makalede Tempdb veritabanımızda data file ekleme işlemini ele almış olduk. Başka bir makalede görüşmek dileğiyle.

“Gurura kapılarak insanlara burun kıvırma, ortalıkta çalım satarak yürüme; unutma ki Allah gurura kapılıp kendini beğenen hiç kimseyi sevmez.”Lokman-18

Author: Yunus YÜCEL

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir