问候,我有一个无限期运行的C ++脚本。有时(很少),MySQL连接丢失,所以我想实现一些逻辑重新连接,如果发生的话。我知道这很容易,但我只是想确保它是正确的,因为我是C ++的新手。
这是建立连接的方式:
const char* mysql_server = argv[argcounter++];
const char* mysql_database = argv[argcounter++];
const char* mysql_user = argv[argcounter++];
const char* mysql_password = argv[argcounter++];
mysql_conn = mysql_init(NULL);
// connect to database
if (!mysql_real_connect(mysql_conn, mysql_server,
mysql_user, mysql_password, mysql_database, 0, NULL, 0))
{
fprintf(stderr, "%s\n", mysql_error(mysql_conn));
exit(1);
}
我想知道如何检查连接是否不再存在。循环每1500秒运行一次。
谢谢
答案 0 :(得分:1)
为什么不使用mysql_options的MYSQL重新连接选项?
来自http://dev.mysql.com/doc/refman/5.0/en/mysql-options.html): -
“MYSQL_OPT_RECONNECT(参数类型:my_bool *)
如果发现连接丢失,则启用或禁用自动重新连接到服务器。自MySQL 5.0.3起,默认情况下重新连接已关闭;此选项是5.0.13中的新选项,它提供了一种显式设置重新连接行为的方法。“