18456: Login Failed for User Hatası ve Çözüm Yolları
18456: Login failed for user hatası, SQL Server’a bağlanmaya çalışırken ortaya çıkan kimlik doğrulama sorunlarından kaynaklanır. Bu rehberde hatanın nedenlerini ve çözüm yollarını öğreneceksiniz. SQL Server bağlantı sorunlarını hızlıca çözmek için bu adımları uygulayabilirsiniz!

6 ay önce

Arkadaşlar, SQL Server üzerinde çalışırken karşılaşabileceğiniz en yaygın hatalardan biri 18456: Login failed for user hatasıdır. Bu hata, bir kullanıcının SQL Server’a bağlanmaya çalıştığında başarısız olduğunu ifade eder. Hata mesajı genellikle kimlik doğrulama sorunlarına işaret eder ve çeşitli nedenlerden kaynaklanabilir. Bu yazıda, hatanın nedenlerini ve çözüm yollarını adım adım öğreneceksiniz.
Hata Mesajının Detayları
Hata mesajı genellikle şu şekilde görünür:
Error: 18456, Severity: 14, State: [N]
Login failed for user '<kullanıcı adı>'.
Severity: Hatanın ciddiyet düzeyini belirtir.
State: Hataya neden olan spesifik sorunu ifade eder.
18456 Hatasının Olası Nedenleri
- Yanlış Kullanıcı Adı veya Parola
- Girilen kullanıcı adı veya parola yanlışsa bu hata oluşur.
- Kimlik Doğrulama Modu Sorunu
- SQL Server, yalnızca Windows Authentication modunda çalışıyorsa ve kullanıcı SQL Server Authentication kullanmaya çalışıyorsa hata oluşabilir.
- Yetkilendirme Sorunu
- Kullanıcı, bağlanmaya çalıştığı veritabanına erişim yetkisine sahip olmayabilir.
- Hedef Veritabanının Var Olmaması
- Bağlantı dizesinde belirtilen varsayılan veritabanı mevcut değilse hata alınır.
- Kilitli veya Devre Dışı Kullanıcı Hesabı
- Kullanıcı hesabı kilitli veya devre dışı bırakılmış olabilir.
- Firewall veya Ağ Sorunları
- Sunucuya erişim sırasında ağ bağlantısı engellenebilir.
- Parola Politikası Sorunları
- SQL Server’da parola politikasına uymayan bir parola kullanılmış olabilir.
Çözüm Yolları
1. Kullanıcı Adı ve Parolayı Kontrol Edin
- Girilen kullanıcı adı ve parolanın doğru olduğundan emin olun.
- Bağlantı dizesinde kullanıcı adı ve parolayı doğru şekilde yazdığınızdan emin olun:
Data Source=<server_name>;Initial Catalog=<database_name>;User ID=<username>;Password=<password>;
2. SQL Server Kimlik Doğrulama Modunu Kontrol Edin
- SQL Server’ın kimlik doğrulama modunu kontrol edin ve gerektiğinde Mixed Mode Authentication seçeneğini etkinleştirin.
- Adımlar:
- SQL Server Management Studio’yu (SSMS) açın.
- Sunucunuza sağ tıklayın ve Properties seçeneğine gidin.
- Security sekmesine tıklayın.
- SQL Server and Windows Authentication mode seçeneğini etkinleştirin.
3. Kullanıcının Yetkilerini Kontrol Edin
- Kullanıcının bağlanmaya çalıştığı veritabanına erişim yetkisi olduğundan emin olun.
- Adımlar:
- SSMS’yi açın ve bağlanın.
- Security > Logins sekmesine gidin.
- İlgili kullanıcıya sağ tıklayın ve Properties seçeneğine tıklayın.
- User Mapping sekmesinden, kullanıcının bağlanmaya çalıştığı veritabanına erişim yetkisini kontrol edin.
4. Varsayılan Veritabanını Kontrol Edin
- Kullanıcı için varsayılan veritabanın mevcut olduğundan emin olun.
- Adımlar:
- SSMS’de Security > Logins sekmesine gidin.
- Kullanıcıya sağ tıklayın ve Properties seçeneğine tıklayın.
- Default Database seçeneğini kontrol edin ve uygun bir veritabanı seçin.
5. Kullanıcı Hesabını Kontrol Edin
- Kullanıcı hesabının kilitli veya devre dışı olmadığından emin olun.
- Adımlar:
- Security > Logins sekmesinden kullanıcıyı seçin.
- Kullanıcı özelliklerinde Status sekmesine gidin.
- Login is locked out veya Disabled seçeneği işaretliyse bu durumu düzeltin.
6. Firewall Ayarlarını Kontrol Edin
- SQL Server’ın bağlanılabilir olduğundan emin olun.
- Adımlar:
- SQL Server’ın dinlediği portu (genellikle 1433) kontrol edin.
- Bu portun sunucuda ve ağ cihazlarında açık olduğundan emin olun.
7. SQL Server Hata Günlüğünü Kontrol Edin
- Hata günlüğünü kontrol ederek hatanın kaynağı hakkında daha fazla bilgi edinin. Adımlar:
- SSMS’de sunucunuza sağ tıklayın ve View SQL Server Logs seçeneğine gidin.
- Hata günlüğünde ilgili hata mesajını inceleyin.
State Kodlarına Göre Çözümler
Hata mesajında verilen State kodu, spesifik bir sorunu ifade eder. İşte bazı yaygın state kodları ve çözümleri:
- State 1: Genel bir hata. Yukarıdaki tüm adımları kontrol edin.
- State 2 veya 5: Kullanıcı adı yanlış.
- State 6: Kullanıcı için varsayılan veritabanı mevcut değil. Varsayılan veritabanını değiştirin.
- State 7: Kullanıcı parolası yanlış. Parolanın doğru olduğundan emin olun.
- State 8: Parola doğrulama başarısız. Parolayı yenileyin.
- State 11 veya 12: Kullanıcının bağlanmaya çalıştığı veritabanına erişim yetkisi yok. Kullanıcı yetkilerini kontrol edin.
18456: Login failed for user hatası, genellikle kullanıcı kimlik doğrulaması veya yetkilendirme sorunlarından kaynaklanır. Bu rehberle hatanın nedenlerini tespit edip çözüm yollarını uygulayabilirsiniz. Sorun devam ederse, sistem yöneticinizden veya teknik destek ekibinizden yardım almayı unutmayın. Eğer yazıyı faydalı bulduysanız, paylaşmayı ve yorum yapmayı unutmayın! 😊
Henüz yorum yapılmadı, ilk yorumu sen yapmak ister misin?