3 Ocak 2008 Perşembe

"A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, er

HATA MESAJI:
"A connection was successfully established with the server, but then an error occurred during the login process. (provider: Shared Memory Provider, error: 0 - No process is on the other end of the pipe.) (Microsoft SQL Server, Error: 233)"

AÇIKLAMA:
SQL Authentication modunda bir SQL Login ile SQL Server' ınıza giriş yapmaya çalıştığınızda bu hata ile karşılaşabilirsiniz.

ÇÖZÜM:
Ben bu hata ile iki kere karşılaştım şimdiye kadar ve ikisinde de ilgili kullanılar doğru sandıkları bir şifre ile ve SQL Login kullanarak SQL Server' a bağlanmaya çalışıyorlardı.

Misal olarak, kullanıcının bilgileri aslında aşağıdaki gibi:
Kullanıcı adı= sa
Kullanıcı şifresi = xxx

Ama kullanıcı aşağıdaki bilgilerle giriş yapmaya çalışıyor:
Kullanıcı adı= sa
Kullanıcı şifresi = xyx

Şifresinin doğru olduğundan emin, ama aslında değil. Yani demeye çalıştığım şu, eğer bu hata ile karşılaşıyorsanız şifrenizin doğru olduğundan emin olun.

Bu hata ile ilgili daha ayrıntılı bilgiye ilgili SQL Error Log' undan ulaşabilirsiniz. SQL Server' da doğrudan kullanıcıya verilen ve güvenlikle ilgili olan hata mesajlarının üzerleri güvenlik nedeniyle kapalıdır. Güvenlik konusunda SQL Server' ın verdiği hata mesajlarını daha iyi anlayabilmek için SQL Error Log' una bakmakta çok fayda vardır.

Meselâ yukarıdaki hatanın bahsettiğim iki gördüğüm örnekte de SQL Error Log' daki karşılığı şuydu:

"Login failed for user '...'. (Microsoft SQL Server, Error: 18456)

Bu da, '...' kullanıcısı için girilen şifre yanlış demektir.

Not:
Bu durumda hata mesajını mesaja göre değil, hata numarasna göre yorumluyorum. Başka durumlarda ve hata mesajı numaralarında hatanın sebebi daha farklı olabilir.

Ayrıca, bu hatayı bir hesabın durumunun (Status) kullanılamaz (Disabled) olması durumunda da alabilirsiniz.

SQL Server' da varsayılan olarak "sa" hesabının durumu kullanılamazdır (Disabled). Hesabınızı kullanılabilir (Enabled) yaptığınızda da bu sorunu çözebilirsiniz. Bunun için SSMS' i açın ve Security\Logins düğümüne gidin. Orada ilgili kullanıcıyı seçip özelliklerine gidin ve "Status" seçeneğini uygun şekilde ayarlayın.

3 yorum:

Emirhan Izmir dedi ki...

kullanıcı adı ve şifresi aslında doğru girilmiştir. az önce karşılaştığım problem ile ilgili olarak, kullanıcıya ait şifrenin değişmesi gerekiyor, sql yönetim penceresine bir kez login olup ilk şifre değiştirilmezse bağlantı kurulamıyor, dolayısıyla doğru girildiği halde bağlantı sonlandırılıyor.

Adsız dedi ki...

Merhaba ben Gülhan sa kullanıcısında default database silinmiş bir database ise de aynı hata ile karşılaştım... Teşekkür ederim...

Adsız dedi ki...

Merhaba bende aynı sorun ile karşılaştım fakat aynı hata numarasını vermesine rağmen benin sorunumu SQL ayarlar içinde bulunan "Server Authentication" altındaki "SQL Server and Windows Authentication mode" seçili olmadığından dolayı hata alıyormuşum.