参考链接
MySQL链接10天后自动断开解决方案:<https://blog.csdn.net/xiaoxiao133/article/details/123006881
方式一
QT中可以通过自动重连的方式进行配置,如下所示:
QSqlDatabase dbConnLocal = QSqlDatabase::addDatabase("QMYSQL", connNameLocal);
dbConnLocal.setConnectOptions("MYSQL_OPT_RECONNECT=1");
代码如下所示:
QSqlDatabase *db = QSqlDatabase::addDatabase(ServerConfig::SqlDrivetype, SqlName);
/* 当数据库断开后,自动重连 */
db->setConnectOptions("MYSQL_OPT_RECONNECT=1");
/* 设置数据库连接参数 */
db->setHostName(ServerConfig::SqlServerIp);
db->setDatabaseName(ServerConfig::SqlDatabaseName);
db->setUserName(ServerConfig::SqlUserName);
db->setPassword(ServerConfig::SqlPassword);
db->setPort(ServerConfig::SqlServerPort);
方式二
修改MySQL的配置文件 /mysql/mysql.conf.d/mysqld.cnf
, 在[mysqld]后面加上如下两句话
interactive_timeout=288000000
wait_timeout=288000000
注意:这样的方式比较占资源,一些不用的连接不会断开
标签:断开,db,ServerConfig,MySQL,QSqlDatabase,QT From: https://www.cnblogs.com/jzcn/p/16827355.html