Prowadzimy stronę internetową na serwerze vps z serwerem sql 2008 x64 r2. Jesteśmy bombardowani 17886
błędów - a mianowicie:Błąd 17886 - Serwer zerwie połączenie
Serwer spadnie połączenia, ponieważ kierowca klient wysłał wielu żądań, gdy sesja jest w trybie pojedynczego użytkownika. Ten błąd o błędzie występuje, gdy klient wysyła żądanie zresetowania połączenia , gdy partie nadal działają w sesji lub gdy klient wysyła żądanie, podczas gdy sesja resetuje połączenie. Proszę skontaktować się ze sprzedawcą klienta.
Powoduje to, że instrukcje sql zwracają uszkodzone wyniki. Próbowałem prawie wszystkie sugestie, które znalazłem w sieci, w tym:
- z marsa i bez.
- z łączenia i bez
- z async = true i bez
mamy tylko jedną bazę danych i jest absolutnie dla wielu użytkowników.
Wszystko zostało niedawno zainstalowane, więc jest aktualne. Mogą być skorelowane z high cpu
(choć nie wyłącznie według monitorów, które widziałem). Również korelował z high request rates
z wyszukiwarek. Jednak wysokie cpu/żądania nie powinny powodować zerowania połączeń sql - w najgorszym wypadku powinniśmy mieć wysokie czasy odpowiedzi lub odmówić wysłania odpowiedzi.
Wszelkie sugestie? Jestem tylko programistą, a nie dba - czy potrzebuję dba, aby rozwiązać ten problem?
trudno złapać serwera w momencie wystąpienia błędów. czy muszę przechwytywać te dane w tym samym momencie błędu? Jeśli tak, nie jestem pewien, kiedy nadejdzie następne okno możliwości. Są dni w czasie bez błędów, a potem wszystkie nagłe setki błędów. Czy istnieje inne rozwiązanie, aby spróbować w międzyczasie? – nomadsolo
Sprawdź pliki w tym katalogu: "C: \ Program Files \ Microsoft SQL Server \\ [YourSQLInstanceName] \ MSSQL \ Log" i sprawdź swój dziennik zdarzeń. Spróbuj znaleźć więcej informacji i jeśli uważasz, że znalazłeś coś użytecznego, dodaj to do swojego pytania. – erichste
Wiadomość, którą napisałem powyżej ("Serwer zrzuci połączenie ...") jest błędem, który widzę w dzienniku błędów sql, tam są setki z nich – nomadsolo