Errore di connessione al database mysql

La mia applicazione deve fare molto frequente connette a un database mysql su un'altra macchina. Tuttavia ho frequenti errori di connessione; Di solito si può connettersi, ma dopo molti tentativi. Il messaggio di errore che ho ricevuto è:

Mysql.mysql(): Couldn't connect to SQL-server: Lost connection to MySQL server at 'reading authorization packet', system error: 2

  • Accesso al server MySQL tramite VirtualBox
  • mysqldump: Errore di errore: 1066: Tabella / alias non univoco: 'foo' quando si utilizzano tabelle LOCK quando lower_case_table_names = 1
  • Possibile creare server mysql sia master che slave?
  • Diagnosi di problemi di replica Mysql
  • Mysql tmp_table_size e max_heap_table_size non funzionano
  • Qualcuno ha alcuna esperienza quando si tratta di velocità di Amazon RDS vs MySQL su un piccolo server?
  • Ho letto le informazioni qui: http://dev.mysql.com/doc/refman/5.0/en/error-lost-connection.html e anche i commenti al bug http://bugs.mysql.com/bug .php? id = 28359 .

    Ci sono un certo numero di connessioni abortite come si può vedere:

      mysql> SHOW STATUS GLOBALE COME 'Aborted_connects';
     + ------------------ + ------- +
     |  Nome variabile |  Valore |
     + ------------------ + ------- +
     |  Aborted_connects |  2540 | 
     + ------------------ + ------- + 

    Ho aumentato il timeout da 5 a 15 secondi:

      mysql> mostra variables come 'connect_timeout';
     + ----------------- + ------- +
     |  Nome variabile |  Valore |
     + ----------------- + ------- +
     |  connect_timeout |  15 | 
     + ----------------- + ------- + 

    ma questo non ha aiutato. Quali suggerimenti su come eseguire il debug di questo? Rende l'interazione del database orribilmente lento quando deve in media provare a connettersi 5 volte prima di funzionare.

    Non ho ancora cercato di mantenere la connessione aperta per tutta la durata dell'applicazione, sarebbe meglio? Come faccio a impedire la chiusura della connessione?

    Se aiuta il computer con i problemi è Windows 7 a 32 bit, mentre il server mysql è su Debian Linux.

  • Codice sorgente di download di Nginx Password Protect Directory
  • Gestione semplice e centralizzata degli utenti su una piccola LAN - NIS o LDAP?
  • La password amministrativa di MariaDb non sembra funzionare
  • Qual è la differenza tra l'authentication e l'authorization?
  • 2 Solutions collect form web for “Errore di connessione al database mysql”

    Guardando su tutti i dettagli di un bug, i rapporti che sospetto vi sia un problema di networking o di lato client. Qualcosa è danneggiato o aggiunge troppa latenza ai dati mysql.

    In una networking chiara, fai una traccia di wireshark e controlla quale sia la conversazione. Assicurarsi che nessuna forma di traffico sia in corso. Sembra un problema di 64bit solo in modo da controllare una build di 32bit solo per assicurarsi che sia lo stesso problema. Verifica su una casella di Windows XP – M $ ha fatto qualche roba funky allo stack di networking su Vista che lo ha fatto aspirare – bit tempo! Non abbiamo problemi di networking con Vista e Win7!

    Se gestisci una traccia di wireshark please pastebin e metta il link come ci piacerebbe come uno sguardo che penso.

    Alla fine questo si è rivelato dovuto ad un problema di networking generale sulla macchina. La soluzione è stata trovata in: Problemi relativi alle performance di networking in Windows 7

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.