Belirtiler
Microsoft ADO.NET 2.0 SqlConnection nesnesini kullanarak bir veritabanına bağlanmaya çalıştığınızda, veritabanı sunucusu gerçekte kullanılabilir olsa da bağlantı hatası bildirilebilir. Bu sorun, aşağıdaki koşullar doğru olduğunda en belirgin hale gelir:
-
Veritabanı sunucusu için en az bir dakika kullanılamaz edildi.
-
İstemci uygulaması, bu süre içinde veritabanı sunucusuna bağlanmak çalıştı.
Neden
Bu sorun, Microsoft SQL Server çalıştıran sunucu önceki bağlantı girişimleri başarısız olduğunda oluşan davranış nedeniyle oluşur. SqlClient bağlantı havuzu dahili sunucu için yeni bağlantı girişimleri sayısını azaltma. Bu işlem için kısa bir süre içindir. Bu süre boyunca, bağlantı havuzu otomatik olarak sunucuya bir bağlantı girişimi yapmak yerine oluşan son hatayı raporlar. İstemci uygulamasından sonraki bağlantı isteğini süre bitiminden sonra SQL Server çalıştıran sunucuya doğru bir bağlantı elde eder. Not: Bazı durumlarda, süre çok fazla büyüyebilir. Bu sorun, ne kadar veritabanı sunucusu kullanılamıyor üzerinde bağlıdır.
Çözüm
Bu sorunu gidermek için bilgisayarınız için uygun dosyayı karşıdan yükleyin:
X86 tabanlı bir bilgisayar için
Aşağıdaki dosya Microsoft Download Center indirilebilir:http://download.microsoft.com/download/2/C/5/2C5BCDC9-3241-443A-9F96-4E0B0EDFA727/NDP20-KB916002-x86.exe
X64 tabanlı bir bilgisayar için
Aşağıdaki dosya Microsoft Download Center indirilebilir:http://download.microsoft.com/download/D/3/9/D39C79DF-4158-45DF-9031-92C52AB0ED19/NDP20-KB916002-X64.exe
Itanium tabanlı bir bilgisayar için
Aşağıdaki dosya Microsoft Download Center indirilebilir: http://download.microsoft.com/download/0/0/3/00392DD3-5B4F-4D99-94E8-6827B8F8D7EF/NDP20-KB916002-IA64.exe Microsoft Destek dosyalarını karşıdan yükleme hakkında daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
119591 Microsoft destek dosyaları çevrimiçi hizmetlerden nasıl edinilir?Microsoft bu dosyada virüs taraması yapmıştır. Microsoft, dosyanın gönderildiği tarihte kullanılabilir en güncel virüs tarama yazılımını kullanmıştır. Dosya, üzerinde herhangi bir yetkisiz değişiklik yapılmasını engellemeye yardımcı olan geliştirilmiş güvenliğe sahip sunucularda depolanır.
Geçici Çözüm
Bu soruna geçici bir çözüm için bağlantı havuzu sıfırlamak için SqlConnection nesnesi ClearPool veya ClearAllPools yöntemlerini kullanın.
Durum
Microsoft bu sorunun "Aşağıdakilere Uygulanır" bölümünde listelenen Microsoft ürünlerinde bulunduğunu onaylamıştır.
Ek Bilgi
Bu düzeltmeyi uyguladıktan sonra istemci uygulaması bir kesinti veritabanı sunucusu beklemeden çıktığında başarıyla veritabanı sunucusuna bağlanmadan önce kısa bir gecikme oluyor hala ortaya çıkabilir. Genellikle, bu gecikme 60 ne kadar SQL Server daha önce kullanılabilir ne olursa olsun saniyeden fazla, son değil. Daha fazla bilgi için Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
824684 Microsoft yazılım güncelleştirmelerini açıklamak için kullanılan standart terminolojinin açıklamasıSqlConnection class hakkında daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection(VS.80).aspxBu düzeltmenin düzeltme aşağıdaki Microsoft Bilgi Bankası makalesindeki olarak aynı düzeltme paketinde bulunmaktadır:
912151 DÜZELT: bağlantıyı ADO.NET 2.0 tabanlı bir uygulama kullanarak bir SQL Server 2005 yansıtılmış veritabanına bağlanmaya çalıştığınızda yerine çalışma ortağı sunucuya bağlanmak için ilk denemede önce zaman aşımına uğrayabilir
912731 düzeltme: uygulama, bir ADO.NET bağlı kullanır System.Data.SqlClient ad, uygulama yanıt vermeyebilir ve yüksek CPU kullanımı karşılaşabilirsiniz
912732 düzeltme: bir SQL Server 2005 veritabanı için açık bir bağlantıda ADO.NET 2.0 yeni bir hareket başlatır bir hata oluşabilir
913177 düzeltme: ADO.NET bağlantılı bir uygulama kullandığında SqlBulkCopy sınıfı, bir hata iletisi alabilirsiniz
913764 düzeltme: UNION ALL sorguyu çalıştırmayı veya DeriveParameters yöntemini çağırmak için çalıştığınızda hata iletisi: "önemli iç bağlantı hatası"
913765 düzeltme: ADO.NET 2.0 uygulamada SqlCommand sınıfının örneği üzerinde Execute yöntem çağrısı sırasında bir SqlException özel durumu oluşabilir
913766 düzeltme: .NET Framework 2.0 DataSet nesnesi bir istemci bilgisayar üzerinde serisi, veri içermeyen bir DateTime sütun DateTime.MaxValue'dan alanı tarafından yanlış temsil