Mysql
 sql >> Base de données >  >> RDS >> Mysql

java.net.SocketException :canal cassé

Je vais spéculer un peu mais si cela se produit tous les matins (c'est-à-dire après une nuit d'inactivité), cela pourrait être lié au fait que MySQL ferme les connexions inactives après 8 heures par défaut (le wait_timeout ).

Si tel est le cas, soit :

  • configurer tomcat pour tester les connexions lors de l'emprunt à l'aide d'un validationQuery dans la configuration de la source de données :

    <parameter>
      <name>validationQuery</name>
      <value>select 1</value>
    </parameter>
    
  • augmenter le wait_timeout de MySQL via my.cnf/my.ini , ou en vous connectant à un client SQL en ligne de commande et en saisissant SET GLOBAL wait_timeout=86400 , ou un autre nombre de secondes approprié.

Je ne connais pas toutes les conséquences de la deuxième option et ne la recommande pas vraiment, du moins pas sans avoir reçu plus de commentaires d'experts MySQL.