Windows 2008 R2 Enterprise Server'da SQL Server Enterprise Edition 2012 SP1'e bağlanmak için SQL Authentication (bağlantı havuzlarının sayısını azaltmak için) ve .NET 4.0 bağlantı dizgilerini kullanıyoruz:
Microsoft SQL Server 2012 (SP1) - 11.0.3000.0 (X64)
Eki 19 2012 13:38:57
Telif Hakkı (c)
Windows NT 6.1'deki Microsoft Corporation Kurumsal Sürüm (64-bit) (Yapı 7601: Service Pack 1)
Bir web sitesinin 8 farklı gruba ayrılan yaklaşık 50 sunucusunu kullanıyoruz.
Web sitemiz ziyaret izleme verilerini günlüğe kaydetmek için bu SQL Server kullanıyor. Son birkaç gün içinde bağlantı havuzlarını sıfırlama hakkında aşağıdaki mesajları tükürdü:
İstemci SPID 1327 ile bağlantı havuzlaması için sıfırlanmış bir oturumu yeniden kullanamadı. Hata kimliği 46'dır. Bu hata, daha önceki bir işlem başarısızlığından kaynaklanmış olabilir. Bu hata iletisinden hemen önce hata işlemlerinde hata günlüklerini kontrol edin.
Hata günlüğü okur:
Hata: 18056, Önem derecesi: 20, Durum: 46.
İstemci, bağlantı havuzu için sıfırlanmış SPID 959 oturumunu yeniden kullanamadı. Hata kimliği 46'dır. Bu hata, daha önceki bir işlem başarısızlığından kaynaklanmış olabilir. Bu hata iletisinden hemen önce hata işlemlerinde hata günlüklerini kontrol edin.
'Xxxx' kullanıcısı için giriş başarısız oldu. Neden: Bağlantıdaki oturumu yeniden doğrularken, oturum açma nesnesinde yapılandırılmış olan 'xxxxxxxx' veritabanı açılamadı. [İSTEMCİ: 10.xx.xx.xxx]
Bazı araştırmalardan sonra, bu belgeyi CSS blogunda buldum: Nasıl Çalışıyor: Hata 18056 - İstemci, SPID ## ile bağlantı havuzlaması için sıfırlanan bir oturumu tekrar kullanamadı ve bunu Aaron Bertrand: Sorun Giderme Hatası 18456 . Hata numarasının farklı olduğunu biliyorum ama başarısızlık kimliği mesajların aynı olduğu ile aynı.
Hata ID 46, giriş bilgilerinin izinsiz olduğunu gösterir. Varsayılan olarak ana veritabanına giriş yapar ve db adı bağlantı dizesinde belirtilir.
Bağlantı dizgisi havuzları vb. Sayısını kontrol etmek istedim ve Perfmon'daki tüm sayaçları kontrol ettim .Net Data Provider for SqlServer
. Bana sadece defaultdomain9675
örnek seçeneği verdi , bu yüzden bunun bir veri merkezi ağımız için üretilen bir kimlik adı olduğunu farz ettim. Ne yazık ki tüm sayaçlar sıfır okuyor. Diğer ana sunuculardan birinde, bağlantı havuzları 10 civarında seyrediyor, bu da bu tür bir yükle sağlıklı bir sunucuda görmeyi beklediğim gibi.
Benim sorum 3 kat
Windows 2008 R2 Sunucusunun neden gösterilmediğini kimse söyleyebilir
.Net Data Provider for SqlServer
mi?Açıkçası izinsiz giriş yapmanın kırmızı bir ringa balığı olduğuna inandığım için kimse bunu tecrübe etti mi?
Farklı web sunucusu grupları aynı bağlantı dizesi sözdizimine sahipse ancak biraz farklı boşluklarla, bu, sunucunun başka bir bağlantı havuzu kullanmasına neden olur mu?
Minimum ve maksimum bellek ayarları sırasıyla 20GB ve 58GB'dir. Sunucu 64 GB RAM'e sahip özel bir veritabanı sunucusudur. Kutunun iyi bir sayfa beklentisine sahip gibi göründüğü için hafızanın bir sorun olduğunu sanmıyorum. Otomatik kapanma etkin değil. Sunucu her zaman çalışır durumda: Bu, yoğun kullanılan 24x7 bir web sitesidir.