티스토리 뷰

DataBase/MySQL

MYSQL_OPT_RECONNECT (mysql_options) for Linux

군자동꽃미남 2016. 9. 29. 19:52

MYSQL_OPT_RECONNECT

: MySQL Connect가 끊겼을 때, 자동으로 다시 접속 될 수 있도록 설정해주는 옵션.

1
2
my_bool        bReconnect = 1;
mysql_options(&mysql, MYSQL_OPT_RECONNECT, &bReconnect);

cs




기존 mysql_ping(...) 함수는 DB서버와 연결이 되어있는지 확인을 하고 그 결과를 리턴하는 함수이다.
그러나, 해당 옵션을 사용하게 되면 mysql_ping(...) 함수 자체적으로 연결을 확인 하고 연결이 안되어 있으면 자동으로 Reconnect 해주는 함수로 바뀌게 된다.
1
2
3
4
5
if (mysql_ping(&mysql) != 0)
{
    printf("[%d] %s \n", mysql_errno(&mysql), mysql_error(&mysql));
    continue;
}
cs

TIME OUT으로 mysql 커넥트 변수가 close되면, 해당 변수를 참조하면 Segmentation Fault를 일으키기 때문에 mysql_ping(...)의 반환값이 연결이 끊어진 상태일 때이면 mysql_real_query(...)등의 함수 사용에서 mysql 커넥트 변수를 참조하지 않도록 조치를 취해야 한다.


MYSQL_OPT_RECONNECT.c


http://dev.mysql.com/doc/refman/5.7/en/mysql-ping.html

http://dev.mysql.com/doc/refman/5.7/en/auto-reconnect.html

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함