Skocz do zawartości
sz3kla

Kilka błędów-co jest ich źródłem?

Polecane posty

Witajcie! :P

 

Nie jestem jakimś fachowcem w sprawach związanych z serwerami czy skryptami, dlatego też zakładam ten temat.

 

Posiadam forum oparte o silnik phpBB3.0.8 Premod. Forum hostowane jest w unixstorm.org.

 

Co jakiś czas (zbyt często niestety) ja i moi użytkownicy podczas przeglądania forum widzimy w przeglądarce błędy tego typu:

 

SQL ERROR [ mysql4 ] User sz3kla_nazwa_bazy already has more than 'max_user_connections' active connections [1203] An sql error occurred while fetching this page. Please contact an administrator if this problem persists.

 

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request

adres_forum.pl

 

General Error

SQL ERROR [ mysql4 ]

Zbyt wiele połączeń [1040]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.

 

I tu moje pytanie. Czy te błędy wynikają z wadliwego działania skryptu forum, czy może powstają z winy hostingu?

A jeżeli z winy skryptu forum, to jak mogę się ich pozbyć?

 

 

 

Z góry dziękuję za pomoc.

 

Pozdrawiam,

 

sz3kla

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość hdmagc

Kolego.

 

wszystkie 3 błedy są powiedzmy powiązane ze sobą.

 

SQL ERROR [ mysql4 ] User sz3kla_nazwa_bazy already has more than 'max_user_connections' active connections [1203] An sql error occurred while fetching this page. Please contact an administrator if this problem persists.

 

Musisz ustawić w pliku konfiguracyjnym ilość połączeń równoległych do sql

 

Drugi bład jest konsekwencją wielokrotnego występowania błędu pierwszego i samo w sobie nie ma przesłania merytorycznego.

 

W skrócie to samo dotyczy błędu trzeciego.

 

Reasumując musisz skupić się nad poprawa konfiguracji sql.

 

Pomijam, gdyż nie podałeś szczegółów, czy masz w ogóle możliwość ingerencji w konfigurację sql.

Jeśli jest to hosting, no to niestety pozostaje ci albo kontakt z administratorem, bądź przenosiny na własny kawałek maszyny, gdzie będziesz mógł samodzielnie skonfigurować usługi.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dziękuję za zainteresowanie tematem.

 

Niestety dostępu do konfiguracje sql nie mam, gdyż jest to serwer www wynajmowany, jak już napisałem w firmie unixstorm.org.

 

A całą sprawę cytując wszystkie trzy błędy zgłaszałem już administratorowi i została ona delikatnie mówiąc umorzona, poprzez zamknięcie ticketu.

 

Oto odpowiedź administratora w tej sprawie:

 

Jeśli otrzymuje Pan komunikat:

User sz3kla_nazwa_bazy already has more than 'max_user_connections' active connections

 

To znaczy, że Pana skrypt albo działa w sposób nieprawidłowy, albo Pana strona jest atakowana przez innych użytkowników.

 

Dla wszystkich klientów obowiązuje limit do max. 40 równoczesnych połączeń do bazy przez jednego użytkownika MySQL.

Limit ten jest przekraczany praktycznie tylko przez nieprawidłowo działające skrypty (niezamykające po sobie połączeń lub w wyniku ataków na stronę, nawiązujących bardzo szybko bardzo dużą liczbę niezamykanych połączeń).

 

Problem nie wynika z naszej strony.

Proszę sprawdzić dokładnie działanie swojej strony i skryptów, które na niej korzystają z bazy MySQL.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość

Napisałeś, że jest hostowane w unixstorm, a nie, że na koncie www...

chodzi o to, że dojrzałeś już do rozejrzenia się za VPSem... to też będzie "hostowanie", ale "zdeczko" inne, heh

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Napisałem przecież, że "jest to serwer www wynajmowany". :)

 

Jak mam rozumieć Twoją wypowiedź? Serwer www już nie nadaje się pod to forum, za słaby? Należy pomyśleć nad vps'em? Czy może źle zrozuzumiałem Twoją wypowiedź? :)

 

Serwer www ma takie oto parametry:

 

Max-2

Pojemność: 16 GB

Limit transferu: 75 GB

Bazy MySQL: bez limitu

Konta E-mail: bez limitu

 

 

Jakieś pomysły jak rozwiązać problem występowania tych błędów?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Jakieś pomysły jak rozwiązać problem występowania tych błędów?

Zoptymalizować skrypt. Bo 40 wiszących połączeń równoczesnych to nie jest normalna sytuacja.

Druga ewentualna sprawa - czy z tego loginu mysql nie korzysta jakaś jeszcze inna aplikacja, oprócz samego forum? Może po prostu jakiś inny "zamulacz" ci to produkuje...

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Jakieś pomysły jak rozwiązać problem występowania tych błędów?

 

Najlepszym rozwiązaniem byłoby przejście na VPS, wtedy masz możliwość edycji plików konfiguracyjnych serwera.

Niestety jak każda firma Unixstorm ma limity (My także mamy takie limity nałożone na hosting współdzielony), nigdzie tego nie obejdziesz.

Jedynie możesz zrobić jeszcze to co napisał kafi, czyli optymalizacja i modlić się aby pomogło.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Dołożę jeszcze coś od siebie...

 

Nadal twierdzę, że problem jest z jakimś Twoim (mam nadzieję, że mogę na "Ty"?) skryptem. Na serwer VPS w mojej opinii nie musisz się przeprowadzać, bo generowane przez to konto obciążenie jest bardzo małe. W tej chwili nawiązane jednocześnie połączenia do Twojej bazy oscylują w granicach 0-2. Fakt, niektóre są baaardzo długie (z tego co widzę to chyba wyszukiwarka forum), ale nie jest to raczej przyczyna tych problemów.

 

Z tego co widzę, korzystasz też ze skryptu, którego autorzy nie grzeszą wyobraźnią - amxbans. Jeśli ten skrypt (lub pluginy amxbans z Twoich serwerów gier) łączy się z bazą, na której jest postawiona ta strona/forum to radzę tutaj zacząć szukać problemów. Skrypty amxbans mają właśnie to do siebie, że otwierają dużo połączeń do bazy i nie zamykają ich po sobie. W efekcie bardzo łatwo wykorzystać limity.

 

Jeśli amxbans i forum/strona są na tej samej bazie to zacznij od rozdzielenia ich na dwie osobne. Wtedy jedno nie będzie kolidowało z drugim.

 

******

DOPISANE: właśnie przypadkiem zauważyłem...

 

32 nawiązane połączenia do Twojej bazy z zapytaniami trwającymi nawet po 30 sekund, prawdopodobnie na wyszukiwarce (SELECT l.word_text, COUNT(*) AS word_count FROM phpbb_search_wordlist AS l, phpbb_search_wordmatc...).

 

Spróbuj wyłączyć wyszukiwarkę dla niezarejestrowanych osób albo sprawdzić w logach strony, czy ktoś Ci tego nie robi celowo. To dość częste zachowanie wśród małolatów z kręgów "Counter-Strike'a".

Edytowano przez UnixStorm.org (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Witam.

 

Dziękuję wszystkim za odpowiedzi, szczególnie Panu Michałowi który w największym stopniu rozwiał moje wątpliwości a zarazem zasugerował co jest nie tak.

 

Jeśli o bazę danych chodzi to sprawa wygląda tak, że na całym koncie www mam założone 3 bazy danych, jednak każda baza zawiera tabele tylko jednego skryptu. Precyzując, baza danych forum zawiera jedynie tabele skryptu forum, nic więcej. AMXBans owszem, posiadam również zhostowane na tym koncie, aczkolwiek na zupełnie osobnej bazie danych.

 

Aktualnie pracuje nad optymalizacją forum. Kilka czynności, m.in. tą dotyczącą wyszukiwarki już wykonałem. Zmieniłem również kilka innych ustawień skryptu. Wykonałem pewien zabieg na bazie danych. Od około trzech dni (czyli od czasu wykonania tych zabiegów) nie ujrzałem jak narazie żadnego błędu. Także to już jest coś, już jest jakiś postęp. Nie mniej jednak nadal zdarza się że forum ładuje się długo. Dlatego też na dniach zmieniam jego szatę na możliwie jak najlżejszą i jak najprostszą.

 

Jeżeli po skończeniu tych wszystkich zabiegów forum nadal będzie chodziło wolno, skontaktuje się z Panem, Panie Michale.

 

Tymczasem dziękuję za podppowiedzi i zainteresowanie tematem. ;)

 

Prosze o niezamykanie tematu, na wypadek gdybym chciał jeszcze o coś dopytać.

 

 

 

 

Pozdrawiam serdecznie,

 

sz3kla.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×