MSSQL 2022 Veritabanı Oluşturma & C# Connection String Rehberi

Plesk Obsidian panelden Microsoft SQL Server 2022 veritabanı oluşturma, yetkilendirme, C# appsettings.json connection string ve SSMS bağlantı rehberi.

MSSQL 2022 Veritabanı Oluşturma & C# Connection String Rehberi

Microsoft SQL Server 2022 (MSSQL), kurumsal C# ve ASP.NET Core projelerinde en yüksek veri işleme performansını, transaction güvenliğini ve JSON/Spatial veri desteğini sunar. Bu rehberde Windows Plesk Hosting paneli üzerinden yeni MSSQL 2022 veritabanı açmayı, C# appsettings.json bağlantı cümlelerini ve SSMS uzaktan bağlantısını öğreneceksiniz.

Adım 1 — Plesk Panelden Yeni MSSQL 2022 Veritabanı Açın

  1. Plesk Obsidian paneline giriş yapın ve sol menüden Databases (Veritabanları) sekmesini açın.
  2. Add Database (Veritabanı Ekle) butonuna tıklayın.
  3. Veritabanı türünü Microsoft SQL Server 2022 olarak seçin.
  4. Veritabanı adı (örn. siteniz_db), veritabanı kullanıcı adı ve en az 10 karakterli güçlü bir parola belirleyin.
  5. User Access (Kullanıcı Erişimi) kısmından 'Allow remote connections from any host' seçeneğini işaretleyerek OK butonuna basın.

Adım 2 — C# appsettings.json Connection String Yapılandırması

.NET 8 ve Entity Framework Core 8 sürümlerinde Microsoft.Data.SqlClient kütüphanesi varsayılan olarak SSL sertifika doğrulaması ister. Sunucunuzda self-signed SSL varsa bağlantı hatası almamak için TrustServerCertificate=True parametresi şarttır.

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=localhost;Database=siteniz_db;User Id=siteniz_dbuser;Password=GuvliSifreniz123!;TrustServerCertificate=True;MultipleActiveResultSets=True;"
  }
}
🔒 Güvenlik Notu (Production Best Practice): Üretim ortamlarında hassas veritabanı şifrenizi canlı projedeki appsettings.json içinde düz metin tutmak yerine ortam değişkenleri (Environment Variables: ConnectionStrings__DefaultConnection) veya Secret Manager kullanmanız önerilir.

Adım 3 — Program.cs İçinde DbContext Servis Kaydı

Entity Framework Core DbContext sınıfınızı Program.cs içerisinde aşağıdaki gibi servislere ekleyin:

// Entity Framework Core SQL Server Servis Kaydı
builder.Services.AddDbContext<ApplicationDbContext>(options =>
    options.UseSqlServer(
        builder.Configuration.GetConnectionString("DefaultConnection"),
        sqlOptions => sqlOptions.EnableRetryOnFailure(maxRetryCount: 5, maxRetryDelay: TimeSpan.FromSeconds(30), errorNumbersToAdd: null)
    ));

Adım 4 — SQL Server Management Studio (SSMS) İle Uzaktan Bağlantı & Firewall

Yerel bilgisayarınızdaki SSMS programı ile sunucu veritabanına uzaktan bağlanmak için Port 1433 güvenlik duvarı izninin açık olması gerekir (Skyversal Windows sunucularında Port 1433 önceden açık olarak gelir).

  • Server name: Sunucu IP Adresi (örn. sunucu-ip-adresi,1433 veya varsayılan instance kullanılıyorsa mssql.siteniz.com). Named Instance kullanılıyorsa SunucuIP\SQLEXPRESS formatını yazın.
  • Authentication: SQL Server Authentication
  • Login: Plesk'te oluşturduğunuz veritabanı kullanıcı adı (siteniz_dbuser)
  • Password: Belirlediğiniz veritabanı şifresi
  • Encryption Options: SSMS 19+ sürümlerinde Trust server certificate kutucuğunu işaretleyin.

🛠️ Sorun Giderme (MSSQL Bağlantı Hataları)

🔴 SqlException Error 26 — Error Locating Server/Instance Specified

Sebebi: Sunucu IP/Port adresi yanlış yazılmış, Port 1433 sunucu güvenlik duvarında (Windows Firewall) engellenmiş veya Named Instance ismi yanlış yazılmış.

Çözümü: Bağlantı cümlesinde portu IP,1433 olarak açıkça belirtin. Kendi sunucunuzu yönetiyorsanız Windows Firewall Inbound Rules kısmından Port 1433 TCP izni verin ve SQL Server Browser servisinin çalıştığını doğrulayın.

🟡 SqlException: A connection was successfully established with the server, but error during login

Sebebi: SSL sertifika doğrulama hatası (.NET 8 varsayılan güvenli bağlantı zorunluluğu).

Çözümü: Connection string sonuna TrustServerCertificate=True; parametresini ekleyin.

🔵 SqlException (0x80131904): Cannot open database requested by the login

Sebebi: Veritabanı adı yazım hatası veya kullanıcının o veritabanına erişim yetkisinin olmaması.

Çözümü: Plesk panelden kullanıcı yetkilerini ve veritabanı ismini kontrol edin.

Son güncelleme: 10 Ağustos 2026
Bu sayfayı GitHub'da düzenle