Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 32
  1. #1
    Utente di HTML.it L'avatar di pyotrex
    Registrato dal
    Feb 2003
    Messaggi
    554

    [Mysql] errore:MySQL server has gone away

    Ho letto l'articolo files dentro a Mysql, l'ho messo in pratica, il tutto sembra funzionare ma quando cerco di caricare file di discrete dimensioni (circa 1.4Mb, ma probabilmente anche + piccoli) mi esce questo errore:
    MySQL server has gone away
    Sono in una rete locale su Wxp pro ho PHP 4.3.4 Apache 1.3.29 e Mysql 3.23.49.
    Vivrò una vita intera e fortunatamente morirò una volta sola

  2. #2
    http://dev.mysql.com/doc/mysql/en/gone-away.html

    potrebbe essere un kill del processo, un restart di mysql, un timeout che lascia con un palmo di naso il CLIENT su php....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  3. #3
    Utente di HTML.it L'avatar di geko
    Registrato dal
    Dec 2004
    Messaggi
    104
    Questo errore si verifica quando viene persa la connessione a MySQL, generalmente effettuando operazioni che sfruttano per parecchio tempo la stessa connessione. Per evitarlo la prima cosa che puoi fare è verificare dopo quanto tempo compare l'errore, verificare il parametro che imposta il timeout di MySQL e capire se puoi fare qualcosa per ridurre i tempi di elaborazione, qualora fossero molto elevati. Tuttavia la soluzione reale è quella di intercettare l'errore e ripristinare la connessione caduta.


  4. #4
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Quasi sicuramente il problema è la dimensione del file che devi caricare.
    Dovrebbe dipendere dal parametro "max_allowed_packet" del server, che di default mi pare sia 1MB. Se vai oltre succede quello. Quindi o spezzi l'input, o riavvii il server cambiando quel parametro.

  5. #5
    Utente di HTML.it L'avatar di pyotrex
    Registrato dal
    Feb 2003
    Messaggi
    554
    Per prima cosa grazie a tutti, a titolo di feedback vi dico che on-line 800K sono andati lisci, mentre un paio di files che superavano 1Mb mi generano l'errore.
    Per questo lavoro sono in hosting esterno quindi farò delle prove, su questo server.

    Quasi sicuramente il problema è la dimensione del file che devi caricare.
    Dovrebbe dipendere dal parametro "max_allowed_packet" del server, che di default mi pare sia 1MB. Se vai oltre succede quello. Quindi o spezzi l'input, o riavvii il server cambiando quel parametro.
    Dovrebbe essere nel php.ini? ho controllato ma non lo trovo.

    Questo errore si verifica quando viene persa la connessione a MySQL, generalmente effettuando operazioni che sfruttano per parecchio tempo la stessa connessione. Per evitarlo la prima cosa che puoi fare è verificare dopo quanto tempo compare l'errore, verificare il parametro che imposta il timeout di MySQL e capire se puoi fare qualcosa per ridurre i tempi di elaborazione, qualora fossero molto elevati. Tuttavia la soluzione reale è quella di intercettare l'errore e ripristinare la connessione caduta.
    Faccio delle prove, il parametro è questo mysql.connect_timeout?
    Vivrò una vita intera e fortunatamente morirò una volta sola

  6. #6
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    [supersaibal]Originariamente inviato da pyotrex
    Dovrebbe essere nel php.ini? ho controllato ma non lo trovo.
    [/supersaibal]
    Ovviamente non lo trovi, visto che non c'entra nulla col php.
    E' un parametro di avvio del server MySql.
    Dovresti cercare un file di nome my.ini o my.conf (se hai win2000 è facile che si trovi sotto c:/winnt, in ogni caso è in una directory di sistema).
    Scrivici dentro una riga come questa:

    max_allowed_packet=16777216

    con questa imposti il limite a 16M.
    Naturalmente poi devi riavviare il server

  7. #7
    Utente di HTML.it L'avatar di geko
    Registrato dal
    Dec 2004
    Messaggi
    104
    Per vedere tutte le impostazioni di MySQL esegui questa istruzione SQL:

    > show variables;

  8. #8
    [supersaibal]Originariamente inviato da luca200
    Ovviamente non lo trovi, visto che non c'entra nulla col php.
    E' un parametro di avvio del server MySql.
    Dovresti cercare un file di nome my.ini o my.conf (se hai win2000 è facile che si trovi sotto c:/winnt, in ogni caso è in una directory di sistema).
    Scrivici dentro una riga come questa:

    max_allowed_packet=16777216

    con questa imposti il limite a 16M.
    Naturalmente poi devi riavviare il server [/supersaibal]
    no...se fosse quello l'errore sarebbe diverso...

    il parametro è wait_timeout
    ·.·´¯`·)»Davide«(·´¯`·.·
    edivad82:~#/etc/init.d/brain restart
    Brain is a Network

  9. #9
    [supersaibal]Originariamente inviato da edivad82
    no...se fosse quello l'errore sarebbe diverso...

    il parametro è wait_timeout [/supersaibal]
    il wait_timeout e' il tempo max che puo' trascorrere il server in attesa di una connessione e di query. In altre parole e' il tempo di inattivita' che puo' avere una connessione che di default e' 28800 secondi.... cioe' 8 ore. dopo di che la connessione viene abbattuta da parte del server. Quando si omette mysql_close() il client chiude lo stesso, mentre su mysql la connessione persiste fino ad 8 ore se nessuno la richiede nuovamente.

    http://dev.mysql.com/doc/mysql/en/co...on-errors.html

    http://dev.mysql.com/doc/mysql/en/gone-away.html


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  10. #10
    [supersaibal]Originariamente inviato da piero.mac
    il wait_timeout e' il tempo max che puo' trascorrere il server in attesa di una connessione e di query. In altre parole e' il tempo di inattivita' che puo' avere una connessione che di default e' 28800 secondi.... cioe' 8 ore. dopo di che la connessione viene abbattuta da parte del server. Quando si omette mysql_close() il client chiude lo stesso, mentre su mysql la connessione persiste fino ad 8 ore se nessuno la richiede nuovamente.

    http://dev.mysql.com/doc/mysql/en/co...on-errors.html

    http://dev.mysql.com/doc/mysql/en/gone-away.html

    [/supersaibal]
    appunto...ma se è impostato su un valore più basso del default ...quello è l'errore...
    ·.·´¯`·)»Davide«(·´¯`·.·
    edivad82:~#/etc/init.d/brain restart
    Brain is a Network

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.