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

Gardez la connexion mysql ouverte

Si vous voulez garder la connexion ouverte, appelez simplement

mysql::ping $dbhandle

de temps en temps.

Cela peut être fait avec quelque chose comme ceci :

proc keepMySqlOpen {dbhandle} {
    mysql::ping $dbhandle
    after 2000 [list keepMySqlOpen $dbhandle]
}
....
    set dbh [mysql::open ...]
    keepMySqlOpen $dbh
...

Une autre option consiste simplement à utiliser mysql::ping avant d'accéder à la base de données, qui devrait selon le manuel mysqltcl reconnecter si nécessaire. Cela pourrait être le meilleur des deux mondes (laissez la connexion expirer s'il n'y a pas beaucoup d'activité, laissez-la ouverte sinon).