Greška “MySQL server has gone away“ može javiti zbog različith razloga, ali najčešći je kada veza sa MySql serverom prestane da radi. Ovde možete pronaći razloge zašto se to dešava i šta možete učiniti povodmo toga.
Ukoliko pošaljete prevelik fajl na server
MySql server ima ograničenje za veličinu fajla koji može da primi. Tačnu vrednost može da postavi administrator servera baze podataka. Kod nas je to 10MB.
Na većinu korisnika ovo ne utiče, ali korisnici koji čuvaju fajlove u bazi mogu da imaju ovaj problem. Ipak nemojte čuvati regularne fajlove u bazi podataka. Njih možete čuvati zajedno sa web fajlovima.
Ovo se takodje možete desiti ukoliko postavite velike INSERT ili REPLACE upite, umesto tga probajte da ih podelite na više manih delova umesto sve odjednom.
Server timeout
Ovo se dešava kada serever stigne do vremenskog ograničenja za uspostavljanje veze i prekine konekciju sa klijentom. Ovo se na primer može desiti kada šaljete njuzleter. Ovakve skripte se obično izvršavaju dugo i ponekad dodje do prekida konekcije iz ovog razloga.
Timeout takodje može postaviti administrator na MySql serveru, Kod nas je to 60 sekundi, nakon 60 sekundi neaktivnosti, server će zatvoriti konekciju.
Manje uobičajeni razlozi
Postoje i drugi razlozi zbog kojih se javlja greška ali su retki.
Možete dobiti grešku ukoliko administrator servera baze prekine upit za KILL komandu. Ovo se dešava veoma retko, ali kada se desi obavestićemo korisnika i dati uputsvo za uklanjanje ovog problema.
Postavljanje upita bazi kada je zatvorena konekcija, naravno neće raditi i izbaciće grešku “MySQL server has gone away“.
Greška se takodje može javiti ukoliko dodje do poremećaja rada osnovne mreže, mada je malo verovatno da se desi kod nas. Mi imamo veliki kapacitet i konstantni monitoring cele mreže.