[sybase] - ASA8/Lin/PB - jak =?ISO-8859-2?Q?diagnozowa=E6_w=B1?==?ISO-8859-2?Q?skie_gard=B3a=3F?=
pe3no@N05PAM.o2.pl - 04-06-2006 00:37
[sybase] - ASA8/Lin/PB - jak =?ISO-8859-2?Q?diagnozowa=E6_w=B1?==?ISO-8859-2?Q?skie_gard=B3a=3F?=
Witam,
Mam następujący problem: firma produkuje system. Baza to ASA8 na Linuksie, do której łączą się klienty windowsowe, zrobione w PBuilderze (ODBC). Działało to sobie bezproblemowo przez dłuuuugi czas. Dwa tygodnie temu była 1-sza blokada systemu, która sparaliżowała pracę całej firmy. Nie było restartu maszyny (tej, gdzie jest ASA8+Lin). Całość się odblokowała i działała dobrze, aż wczoraj znów blokada długi czas... :( i po jakimś czasie znów problem ustąpił.
PYTANIE 1: Jak interweniować podczas takiej blokady? Gdzie, w jakich tabelach systemowych (?), logach (?), jakimi poleceniami szukać informacji o wąskich gardłach, blokadach z powodu transakcji, najbardziej obciążających zadaniach dla bazy?
PYTANIE 2: Jeżeli jesteśmy W TRAKCIE AWARII, jak działać? Domyślam się, że jak już namierzę to, co wywołuje przeciążenie, mogę to (połączenie, zadanie) zakończyć? Jak?
PYTANIE 3: Jeżeli awaria BYŁA WCZORAJ, a dopiero dziś to badamy, wówczas jak i gdzie szukać informacji o "historycznych" przeciążeniach?
Rzeczy znalezione w help'ie to: EXEC sa_conn_info EXEC sa_locks
PYTANIE 4: Jak korzystać z powyższych dwóch poleceń? Teraz wykonuję je w domu, na ASA9 testowym, bez obciążenia i nie ma tu prawie żadnych informacji, więc nie wiem, na co zwrócić uwagę :)
PYTANIE 5: jak działa poniższe polecenie? connection_property('AppInfo') - nie potrafię go użyć :(
Z góry serdecznie dziękuję za wskazówki i serdecznie pozdrawiam~~Piotrek~~pe3no.
Wojciech Wysocki - 10-06-2006 00:02
> Mam następujący problem: firma produkuje system. > Baza to ASA8 na Linuksie, do której łączą się klienty windowsowe, > zrobione w PBuilderze (ODBC). > Działało to sobie bezproblemowo przez dłuuuugi czas. > Dwa tygodnie temu była 1-sza blokada systemu, która sparaliżowała > pracę całej firmy. Nie było restartu maszyny (tej, gdzie jest ASA8+Lin). > Całość się odblokowała i działała dobrze, aż wczoraj znów blokada > długi czas... :( i po jakimś czasie znów problem ustąpił. > Nie bardzo rozumiem, co tzn. blokada, że co serwer zrobił ?
> PYTANIE 1: Jak interweniować podczas takiej blokady? Gdzie, w jakich > tabelach systemowych (?), logach (?), jakimi poleceniami szukać > informacji o wąskich gardłach, blokadach z powodu transakcji, > najbardziej obciążających zadaniach dla bazy? > nie ma wielkich możliwości, jedyne co można sprawdzić to obiążenie procesora i sieci, blokady na transakcjach, ale to tylko stwarza chwilowe problemy. Jeśli to wasz system to najlepiej po prostu logować wszystkie żądania do serwera z czasem wykonania, jeśli dla przykładu jakieś zapytanie zabija serwer to wyjdzie od razu, jeśli to system na etapie tworzenia to nie jest to nic dziwnego że serwer się dławi, można zapuszczać tam testowo różne głupoty, które potrafią skutecznie odciąć od pracy wszystkich pozostałych użytkowników.
> PYTANIE 2: Jeżeli jesteśmy W TRAKCIE AWARII, jak działać? Domyślam się, > że jak już namierzę to, co wywołuje przeciążenie, mogę to (połączenie, > zadanie) zakończyć? Jak? > Jeśli znajdziesz, które połączenie (a to z reguły największy problem) to rozwiązanie jest banalne "drop connection", ale z reguły znalezienie winnego jest problematyczne, nie ma żadnych statystyk po userach niestety.
> PYTANIE 3: Jeżeli awaria BYŁA WCZORAJ, a dopiero dziś to badamy, wówczas > jak i gdzie szukać informacji o "historycznych" przeciążeniach? Musiałbyś to samodzielnie monitorować, np. napisać sobie event'a, który będzie logował takie informacje, historycznie z bazy nic nie wyciągniesz, jeśli nie będziesz kazał jej nic zapisywać.
> > Rzeczy znalezione w help'ie to: > EXEC sa_conn_info > EXEC sa_locks > > PYTANIE 4: Jak korzystać z powyższych dwóch poleceń? Teraz wykonuję je w > domu, na ASA9 testowym, bez obciążenia i nie ma tu prawie żadnych > informacji, więc nie wiem, na co zwrócić uwagę :)
sa_conn_info() to jedynie lista użytkowników, informacje które w tym wypadku byłyby przydatne to informacja o blokowaniu przez innego użytkownika i o niezatwierdzonych wpisach.
sa_locks() to tylko lista nałożonych lock'ów (rodzaje można znaleźć w dokumentacji).
> PYTANIE 5: jak działa poniższe polecenie? > connection_property('AppInfo') - nie potrafię go użyć :( > Po prostu zwraca informacje o podłączonym kliencie, nic więcej. (select connection_property('AppInfo'))
P.S. Sugeruję przejście na 9.ę, albo jeszcze poczekać i od razu na 10.ę. Różnice między kolejnymi wersjami są dość poważne.
woytas
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
=?UTF-8?Q?=5Bmysql=5D_jak_pobra=C4=87_warto=C5=9B=C4=87_ AUTO=5F?==?UTF-8?Q?INCREMENT=3F?=
[MS SQL 2005] =?windows-1250?Q?Ilo=9C=E6_wiersz=F3w_w_zbiorze_wynikowym?=
InterSystems =?windows-1250?Q?Cach=E9_-_uzywal_ktos=3F?=
Wydajność baz danych w zależności od poziomu izolacji ANSI/ISO
Czy zna (obsługuje) ktoś program Iso Draw ?
MYSQL - kodowanie w ISO-PL
strona plus baza w iso do utf-8
Kodowanie: z iso na utf
Sybase (ASE) str_replace zamiana spacji na puste znaki - nie działa
[sybase] migracja z SQL Aynwhere 9 na ASE 15 Express Edition - dasie?
zanotowane.pldoc.pisz.plpdf.pisz.plmisida.pev.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|