Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
JDBC sürücüsünü indirin
JDBC sürücüsündeki zaman aşımı ayarları, uygulama yanıt hızını önceliklendirmek için kullanılabilir. Varsayılan olarak, sürücünün zaman aşımlarının çoğu veri tutarlılığını sağlamak için bir sonuç beklemeye öncelik vermektedir. Uygulamanızın ihtiyaçlarına uygun zaman aşımları seçtiğinizden emin olun.
Başlangıç bağlantısı için loginTimeout kullanılır.
-
loginTimeout, sürücünün sunucuyla bağlantı kurmak için beklediği saniye cinsinden süredir. Bu tutar aşılırsa bir hata döndürülür ve açık bağlantı kurulmaz. Sıfır değeri, zaman aşımının 11.2 ve üzeri sürümlerde 30 saniye olan varsayılan sistem zaman aşımı olduğunu gösterir. 10.2 ve altındaki sürümler için varsayılan zaman aşımı 15 saniyedir. Sıfır olmayan herhangi bir değer, başarısız bir bağlantının zaman aşımına uğraması için sürücünün beklemesi gereken saniye sayısıdır. JDBC sürücüsüyle sürekli bağlantı kurarken sorun yaşıyorsanız bu zaman aşımını 90, hatta 120 saniyeye çıkarmanız gerekebilir.
Bağlantı kurulduktan sonra, queryTimeout, cancelQueryTimeoutve lockTimeout deyim yürütmeleri sırasında kullanılır.
socketTimeout sunucuyla tüm sürücü iletişimleri için kullanılır.
-
queryTimeoutsaniye cinsinden, sürücünün, sunucuya yürütme komutu gönderdikten sonra sunucudan veri içeren bir yanıt almak için bekleyeceği süredir. Bu süre aşılırsa, komut iptal edilir. Bu zaman aşımının aşılması bağlantıyı kapatmaz. Varsayılan değer -1'dir ve bu da sonsuz zaman aşımı anlamına gelir. -
cancelQueryTimeoutsaniye süresince sürücü, bağlantıyı zorla sonlandırmadan/kapatmadan önce, sunucudanqueryTimeoutiptalin onayını bekler. Diğer bir ifadeyle, sürücü, bağlantı kapatılmadan öncecancelQueryTimeoutartıqueryTimeoutsaniye toplamı kadar bekler. Bu zaman aşımını sıfır olmayan bir değere ayarlamak, bir sorgu zaman aşımına uğradıklarında sunucuyla ağ veya iletişim hatası olduğunda uygulamaların yanıt vermeye devam etmesini sağlar. Bu özelliğin varsayılan değeri -1'dir ve bu da sonsuz bir bekleme süresidir. -
lockTimeout, bir kilit engelleme ifadesi yürütülürken kilidi serbest bırakmak için bekleme süresidir. Bu zaman aşımının aşılması bağlantının kapatılmasına neden olmaz. Bu özelliğin varsayılan değeri -1'dir ve bu da sonsuz bir bekleme süresidir. -
socketTimeoutsunucuyla tüm yuva iletişimleri için geçerlidir. Sunucu, verileri onaylamayarak veya yanıtlamayarak sürücüyle iletişimi durdurursa, sürücü bağlantıyı kapatmadan öncesocketTimeoutdeğerini bekler. Bu zaman aşımını sıfır olmayan bir değere ayarlamak, sunucuyla ağ veya iletişim hatası olduğunda uygulamaların yanıt vermeye devam etmesini sağlar. Varsayılan değer 0'dır ve bu da sonsuz bir zaman aşımı anlamına gelir.socketTimeout'ınqueryTimeout'den büyük olduğundan emin olun, pencere sırasında yuva zaman aşımı özel durumlarından kaçınmak içinqueryTimeout. Benzer şekilde,socketTimeoutdeğerinincancelQueryTimeoutdeğerinden büyük olduğundan emin olun,cancelQueryTimeoutpenceresi sırasında soket zaman aşımı istisnalarını önlemek için.
Uygulamanız için makul zaman aşımı değerleri, uygulamanın önceliklerine bağlıdır. Zaman aşımları için daha düşük değerlerin ayarlanması, veri tutarlılığına göre uygulama yanıt hızının önceliğini belirler. Zaman aşımlarına ulaşıldığında uygulamaların en uygun eylemi belirlemeleri gerekir. Bu karar, gerçekleştirilen veritabanı eylemini temel alır. Örneğin, bir SELECT deyim için karar kullanıcıya bir hata bildirmek veya yeniden bağlanmak ve yeniden denemek olabilir.
INSERT veya UPDATE ifadeleri için bu karar farklı olabilir.
Duyarlı bir uygulama loginTimeout için ve queryTimeout görece düşük değerlere ayarlanmalıdır. Benzer şekilde, cancelQueryTimeout de düşük bir değere ayarlanmalıdır ki, queryTimeout aşıldığında sunucunun sorgu iptalini kabul etmesi için sürücünün çok fazla beklememesi sağlansın. Son olarak, socketTimeout sunucu bağlantısının kesildiği herhangi bir senaryoda (ağ kesintisi, sunucu kilitlenmesi vb.) çok uzun süre bekleyen sürücüye karşı korunacak şekilde ayarlanmalıdır.
Özellik özeti
| Mülkiyet | Description | Varsayılan | Bağlantı sonucu |
|---|---|---|---|
loginTimeout |
Başarısız bir bağlantının zaman aşımına uğramasından önce sürücünün beklemesi gereken saniye sayısı. | 30 saniye [11.2+], aksi takdirde 15 saniye |
Kapalı bağlantı |
queryTimeout |
Sorgu iptal edilmeden önce beklenmesi gereken saniye sayısı. | -1 [Sonsuz zaman aşımı] | Bağlantıyı aç |
cancelQueryTimeout |
QueryTimeout iptalinin onaylanmasının beklenme saniye sayısı. | -1 [Sonsuz zaman aşımı] | Kapalı bağlantı |
lockTimeout |
Beklenilecek milisaniye sayısı, veritabanının bir kilit zaman aşımı hatası döndürmesinden öncedir. | -1 [Sonsuz zaman aşımı] | Bağlantıyı aç |
socketTimeout |
Bir soket okuma veya yazma işleminde beklemek için gereken milisaniye sayısı. | Sıfır [Sonsuz zaman aşımı] | Kapalı bağlantı |