Forum

Sql View Timeout Pr...
 
Bildirimler
Hepsini Temizle

Sql View Timeout Problemi

21 Yazılar
4 Üyeler
0 Reactions
6,326 Görüntüleme
(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Arkadaşlar Sql de Query olarak yazdığım viewleri çalıştırdığımda, çıkan sonuçlarda  sorun yok fakat daha sonra  open view olarak açtığımda viewler timeout hatası veriyor. Bunun sebebi ne olabilir.

 
Gönderildi : 21/03/2011 18:31

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 

Arkadaşlar Sql de Query olarak yazdığım viewleri çalıştırdığımda, çıkan sonuçlarda  sorun yok fakat daha sonra  open view olarak açtığımda viewler timeout hatası veriyor. Bunun sebebi ne olabilir.


peki başka bir bilgisayardan bu bilgisayara ssms aracılığıyla bağlanıp aynı işlemleri yaptığınızda neler oluyor?

 
Gönderildi : 21/03/2011 19:33

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Sonuç Aynı Değişen Bişey Olmuyor. Nedenini anlamadım bu aynı zamanda diğer projelerimide etkiliyor. Asp.net ile yaptığım projelerde de hata alıyorum bu sebebten dolayı. Projelerimde ki connection timeout satırlarımıda eksiksiz yaptığıma inanıyorum. Bu Timeout hatasını zaman zaman yapıyor. Fakat Sizde takdir Edersiniz ki iş Akışında pek de hoş karşılanmıyor.

 
Gönderildi : 21/03/2011 19:58

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 

Sonuç Aynı Değişen Bişey Olmuyor. Nedenini anlamadım bu aynı zamanda diğer projelerimide etkiliyor. Asp.net ile yaptığım projelerde de hata alıyorum bu sebebten dolayı. Projelerimde ki connection timeout satırlarımıda eksiksiz yaptığıma inanıyorum. Bu Timeout hatasını zaman zaman yapıyor. Fakat Sizde takdir Edersiniz ki iş Akışında pek de hoş karşılanmıyor.


Kesinlikle hoş karşılanacak bir durum değil. Mutlaka çözmeliyiz sorunu.


Yeni bir server 2008 r2 kurulumu yapıp (başka bir bilgisayara) sorun yaşadığınız veritabanını buraya kopyalayıp aynı işlemi dener misiniz? Bir de bir sorum olacak: sql server vmware tabanlı sanal bir sistem üzerinde mi?

 
Gönderildi : 22/03/2011 00:37

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Vmware tabanlı bir sistem üzerinde değil, normal bir  server üzerinde. 2008 r2 kurulumu yaptığım ve kullandığım başka yedek bir serverım var. Hiç Bir sorun olmadan 6 aya yakındır kullanıyorum. Benim sorunum 4 yıldır Kullanılan sql 2005 serverımda. Onu değiştiremem çünkü içinde 4 yıla yakındır biriken verilerim var. Bu veriler arasında ki sql sorgularında bu hatayı alıyorum. Mümkünse bu eski serverı hızlandırmak ve timeout a düşmemek için nasıl yol izleyebilirim. Sanallaştırmak mı lazım. Şu an için maliyetinden dolayı pek tercih edilceğini sanmıyorum.

 İlgilendiğiniz için çok Teşekkürler.

 
Gönderildi : 22/03/2011 11:55

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 


Vmware tabanlı bir sistem üzerinde değil, normal bir  server üzerinde. 2008 r2 kurulumu yaptığım ve kullandığım başka yedek bir serverım var. Hiç Bir sorun olmadan 6 aya yakındır kullanıyorum. Benim sorunum 4 yıldır Kullanılan sql 2005 serverımda. Onu değiştiremem çünkü içinde 4 yıla yakındır biriken verilerim var. Bu veriler arasında ki sql sorgularında bu hatayı alıyorum. Mümkünse bu eski serverı hızlandırmak ve timeout a düşmemek için nasıl yol izleyebilirim. Sanallaştırmak mı lazım. Şu an için maliyetinden dolayı pek tercih edilceğini sanmıyorum.


 İlgilendiğiniz için çok Teşekkürler.



Mevcut veritabanlarınızı yeni server'a taşımak, eğer özel bir yapılandırmanız yoksa, 1 saatinizi geçmeyecektir. Zaten yedek server'ınız olduğunu ve burada da çalışabildiğinizi söylüyorsunuz. SQL server ile ilgili program dosyalarında bozulma meydana gelmiş olabilir. Aslında bu beklemenin pek çok nedeni de olabilir (virüsler, bozuk dosyalar, güvenlik duvarı hatalı yapılandırması, sql server hatalı yapılandırması, aşırı dolu tampon alanları v.s.).


Bu yüzden, mevcut sunucunuzu da değiştirmeden, aynı sunucuya yeni bir instance olarak sql server kurun. Mutlaka tüm sp'lerini uygulayın. Ardından mevcut verilerinizi yeni sql server instance'ına taşıyın. Çalıştığından emin olduktan sonra; eğer yeni bir instance istemiyor, illa ki aynı instance ile çalışmak istiyorsanız o zaman eski instance'ı kaldırın, yeniden yükleme yapın, tüm sp'leri uygulayın ve verileri buraya aktarın. Herşey yolundaysa geçici sql server'ınızı kaldırın.


İyi çalışmakar

 
Gönderildi : 22/03/2011 13:35

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Vmware tabanlı bir sistem üzerinde değil, normal bir  server üzerinde. 2008 r2 kurulumu yaptığım ve kullandığım başka yedek bir serverım var. Hiç Bir sorun olmadan 6 aya yakındır kullanıyorum. Benim sorunum 4 yıldır Kullanılan sql 2005 serverımda. Onu değiştiremem çünkü içinde 4 yıla yakındır biriken verilerim var. Bu veriler arasında ki sql sorgularında bu hatayı alıyorum. Mümkünse bu eski serverı hızlandırmak ve timeout a düşmemek için nasıl yol izleyebilirim. Sanallaştırmak mı lazım. Şu an için maliyetinden dolayı pek tercih edilceğini sanmıyorum.

 İlgilendiğiniz için çok Teşekkürler.

Mevcut veritabanlarınızı yeni server'a taşımak, eğer özel bir yapılandırmanız yoksa, 1 saatinizi geçmeyecektir. Zaten yedek server'ınız olduğunu ve burada da çalışabildiğinizi söylüyorsunuz. SQL server ile ilgili program dosyalarında bozulma meydana gelmiş olabilir. Aslında bu beklemenin pek çok nedeni de olabilir (virüsler, bozuk dosyalar, güvenlik duvarı hatalı yapılandırması, sql server hatalı yapılandırması, aşırı dolu tampon alanları v.s.).

Bu yüzden, mevcut sunucunuzu da değiştirmeden, aynı sunucuya yeni bir instance olarak sql server kurun. Mutlaka tüm sp'lerini uygulayın. Ardından mevcut verilerinizi yeni sql server instance'ına taşıyın. Çalıştığından emin olduktan sonra; eğer yeni bir instance istemiyor, illa ki aynı instance ile çalışmak istiyorsanız o zaman eski instance'ı kaldırın, yeniden yükleme yapın, tüm sp'leri uygulayın ve verileri buraya aktarın. Herşey yolundaysa geçici sql server'ınızı kaldırın.

İyi çalışmalar

 

Sizin dediğiniz yöntemi network uzmanı ekip arkadaşımla beraber yaptık,  Sql açılışında, tablolar arası geçişlerde hızlanma oldu ama yine view çalıştırdığımızda timeout hatası vermeye devam ediyor.  Bunu zaman zaman yapıyor. bazen 30 dk boyunca hiç yapmıyor bazen yapıyor. sql serverın kendi timeout süresini 30 sn den 900 sn e ye çıkarmamıza rağmen yine aynı hatayı vermeye devam ediyor. Bunun kendi içinde başka bir sonucu olabilirmi? Detay ayarı olabilir,ufak bir kod parçası olabilir.

 İyi Çalışmalar; ilginize Çok Teşekkür ederim.

 
Gönderildi : 22/03/2011 16:17

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 

Aynı veritabanlarını başka bir sunucuda denediğinizde böyle beklemeler olmuyorsa işletim sistemini de yenilemeniz gerekiyor. Sistem dosyalarından bir ya da birkaçında problem oluşmuş olabilir.


Şu soruların yanıtı da bizi çözüme götürebilir: Veritabanlarımızı 1. adımdaki geçici instance'a taşıdığımızda sorun ne durumda oluyor; bence gün boyunca sistem burada çalışsın o şekilde veri toplayalım? Sunucu üzerinde firewall var mı; varsa geçici olarak disable edebilir miyiz? sunucu üzerinde anti-malware var mı; varsa geçici oalrak disable edebilir miyiz?

 
Gönderildi : 22/03/2011 17:42

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Aynı veritabanlarını başka bir sunucuda denediğinizde böyle beklemeler olmuyorsa işletim sistemini de yenilemeniz gerekiyor. Sistem dosyalarından bir ya da birkaçında problem oluşmuş olabilir.

Şu soruların yanıtı da bizi çözüme götürebilir: Veritabanlarımızı 1. adımdaki geçici instance'a taşıdığımızda sorun ne durumda oluyor; bence gün boyunca sistem burada çalışsın o şekilde veri toplayalım? Sunucu üzerinde firewall var mı; varsa geçici olarak disable edebilir miyiz? sunucu üzerinde anti-malware var mı; varsa geçici oalrak disable edebilir miyiz?

 

Sorularınızı yanıtlamaya başlıyayım:

 1. aynı değişen bişey yok sadece arayüzdeki menülerde hızlanmalar gerçekleşti(oda bizim işimize yaramaz)

 2.Sunucu üzerinde firewall var ama kapatamam network uzmanı arkadaşım da izin vermez bu duruma,

 3.anti malware yok ama temel 2 tane virüs programı var.

 Bu sonuçlar sorgu çekerken timeout süresine düşmeme neden olabilirmi? bazende düşmüyor acaba serverda çalışmalar çok olduğu için poolingler olabilirmi çünkü aynı anda 50 den fazla kişi kullanıyor serverı bu sebebten olabilirmi diye düşünüyorum.

 
Gönderildi : 22/03/2011 19:55

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 

Tabii ki neden bu olabilir. Zaten firewall kapatma önerisini de bu yüzden yapmıştım. Firewall'u kapattığınızda sorun yaşamasaydınız şunu önerecektim: "SQL Server sunucusu üzerinde yoğun trafiğe müsade eden rule oluşturun." Örneğin Forefront TMG kullanıyorsanız bir adet "None-Web Server Protocol Publishing Rule" oluşturacaktınız ve sorun düzelecekti.


Network uzmanından en azından bu sunucuya gelen sql bağlantıları için kontrolsüzlük tanımlaması isteyebilirsiniz.


İyi çalışmalar.

 
Gönderildi : 22/03/2011 21:18

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Tabii ki neden bu olabilir. Zaten firewall kapatma önerisini de bu yüzden yapmıştım. Firewall'u kapattığınızda sorun yaşamasaydınız şunu önerecektim: "SQL Server sunucusu üzerinde yoğun trafiğe müsade eden rule oluşturun." Örneğin Forefront TMG kullanıyorsanız bir adet "None-Web Server Protocol Publishing Rule" oluşturacaktınız ve sorun düzelecekti.

Network uzmanından en azından bu sunucuya gelen sql bağlantıları için kontrolsüzlük tanımlaması isteyebilirsiniz.

İyi çalışmalar.

 

Mert Bey server üzerinde ki firewall u kapatamam diyor arkadaşım,  acaba firewall u kapatmadan çözüme gidebilirmiyiz. Çünkü firewall kapanırsa birçok kötü sonuca neden olabileceğini düşünüyor. Bu sizin yukarıda bahsettiğiniz yöntemi firewall  kapanmadan da yapılabilir mi?

 
Gönderildi : 23/03/2011 11:57

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 

Network uzmanından en azından bu sunucuya gelen sql bağlantıları için kontrolsüzlük tanımlaması isteyebilirsiniz.

 
Gönderildi : 23/03/2011 12:04

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Network uzmanından en azından bu sunucuya gelen sql bağlantıları için kontrolsüzlük tanımlaması isteyebilirsiniz.

 

Mert Bey Kontrolsüzlük tanımlaması kavramını biraz açabilirmisiniz. daha önce böyle bir kavram duymadığını söyledi arkadaşım. Benim de  bilgim yok. 

 
Gönderildi : 23/03/2011 12:42

(@cozumpark)
Gönderiler: 16307
Illustrious Member Yönetici
 

Kavram değil bu; kısaca yazmıştım, açıklayayım:


Firewall üzerinden SQL server'a yönelen tüm sql sorgu isteklerini sorgulamadan geçireceksiniz. Ayrıca firewall üzerinde burada sql server yayını olduğunu belirten kural da oluştureacaksınız.


Kontrolsüzlük=Veri paketleri ve bağlantı girişimleri denetlenmeyecek

 
Gönderildi : 23/03/2011 13:08

(@orhanakdogan)
Gönderiler: 311
Reputable Member
 

Arkadaşlar Sql de Query olarak yazdığım viewleri çalıştırdığımda, çıkan sonuçlarda  sorun yok fakat daha sonra  open view olarak açtığımda viewler timeout hatası veriyor. Bunun sebebi ne olabilir.

Merhaba;
SqlConnection nesnesi için stringe Connect Timeout=120 ekleyelim.

Web uygulaması ise web.config'e
<httpRuntime executionTimeout="900" />
satırını ekleyin.

SSMS için;
HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\90\Tools\Shell\DataProject\SQLQueryTimeout
değerini 120 yapın.

 
Gönderildi : 23/03/2011 19:14

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Mert Bey  Çok Teşekkürler, Sorunum Orhan beyin sölediği şekildeymiş SSMS ayarlarını yaptıktan sonra şu ana kadar hata vermedi. Orhan Bey Sizede  Çok Teşekkürler.

 
Gönderildi : 23/03/2011 20:26

(@cecenonline)
Gönderiler: 13
Active Member
 

Mert Bey  Çok Teşekkürler, Sorunum Orhan beyin sölediği şekildeymiş SSMS ayarlarını yaptıktan sonra şu ana kadar hata vermedi. Orhan Bey Sizede  Çok Teşekkürler.

 

Merhaba,

Aynı çözümden 3 gündür muzdaribim.

Webconfig'de denemediğim ayar kalmadı. VPS kiralayıp aktaracağım, aynı şekilde sorun devam ederse [ HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\90\Tools\Shell\DataProject\SQLQueryTimeout  ] ayarını sunucu da mı yapmam gerekiyor bunu anlayamadım?

Ek olarak alttaki config ayarına eklemem gereken birşey var mı;
<add name="ConnectionString" connectionString="Data Source=databasename;User ID=USRNAME;Password=PASS;Connect Timeout=120"
     providerName="System.Data.SqlClient" />

 

 </connectionStrings>
  <httpruntime executiontimeout="900" />
  <system.web>
        <compilation debug="true" >

eklediğimde maalesef hata sayfası ile karşılaşıyorum..

Saygılarımla..

 
Gönderildi : 31/03/2011 20:36

(@Anonim)
Gönderiler: 0
Konu başlatıcı
 

Mert Bey  Çok Teşekkürler, Sorunum Orhan beyin sölediği şekildeymiş SSMS ayarlarını yaptıktan sonra şu ana kadar hata vermedi. Orhan Bey Sizede  Çok Teşekkürler.

 

Merhaba,

Aynı çözümden 3 gündür muzdaribim.

Webconfig'de denemediğim ayar kalmadı. VPS kiralayıp aktaracağım, aynı şekilde sorun devam ederse [ HKEY_CURRENT_USER\Software\Microsoft\Microsoft SQL Server\90\Tools\Shell\DataProject\SQLQueryTimeout  ] ayarını sunucu da mı yapmam gerekiyor bunu anlayamadım?

Ek olarak alttaki config ayarına eklemem gereken birşey var mı;
<add name="ConnectionString" connectionString="Data Source=databasename;User ID=USRNAME;Password=PASS;Connect Timeout=120"
     providerName="System.Data.SqlClient" />

 

 </connectionStrings>
  <httpruntime executiontimeout="900" />
  <system.web>
        <compilation debug="true" >

eklediğimde maalesef hata sayfası ile karşılaşıyorum..

Saygılarımla..

 

Arkadaşım, Yukarıda ki sorun beni de çok uğraştırmıştı gerçi ustalarımın yanında bunu söylemem pek doğru değil ama dediğin ayarı serverda yapınca düzeliyor. Asp.Net kısmından ise sadece connection stringine 0 vermen yada 200 ün üzerinde değer vermen yeterli.

Sorun Sql Serverın timeout ile ilgili anladığım kadarıyla bu tür sorunlar eski  serverlarda  kaynaklanabiliyor.

 İyi Çalışmalar.

 
Gönderildi : 01/04/2011 13:40

(@cecenonline)
Gönderiler: 13
Active Member
 

 Cevabınız için müteşekkirim.

...............

 connection stringine 0 vermen yada 200 ün üzerinde

bunu  timeouta mı yazayım?

 

3 gündür kiraladığım sunucuya ayarlarda sorun yok diyip duruyorlardı, TCP IP açmamışlar o yüzden DataSource 'ler görmüyordu.

 

Şuanda Time Out hatasına düşmüyor ama ilerde düşmemesi için yukarıdaki eylemi REGEDİT'te uygulasam iyi olur sanırım?

 

 

Saygılarımla.

 
Gönderildi : 01/04/2011 20:18

Sayfa 1 / 2
Paylaş: