环境:
windows2003 mysql5.0我使用C API创建的连接。初始化连接后不是有个MYSQL的结构体如pmysql,在连续执行了很久之后,就无法再继续查询。我在trycatch里面竟然会捕捉到异常,这个异常不是mysql自己提示的sql语句异常。而是整个程序就出问题了。
后来我观察了MYSQL连接结构体,我打印出异常前的信息,发现那个时候MYSQL->Thread_id竟然变成0了。这个时候用这个链接进行所有查询,都会导致程序出错,报出异常。我还是尝试过,在执行mysql_init之后,thread_id的值的确是0,执行real_connect后就分配为大于0的值了。而且如果我不执行connect就用它来进行查询,也是不会导致程序出错的。完全不知道是什么原因导致的。求高手帮忙分析下啊。。
windows2003 mysql5.0我使用C API创建的连接。初始化连接后不是有个MYSQL的结构体如pmysql,在连续执行了很久之后,就无法再继续查询。我在trycatch里面竟然会捕捉到异常,这个异常不是mysql自己提示的sql语句异常。而是整个程序就出问题了。
后来我观察了MYSQL连接结构体,我打印出异常前的信息,发现那个时候MYSQL->Thread_id竟然变成0了。这个时候用这个链接进行所有查询,都会导致程序出错,报出异常。我还是尝试过,在执行mysql_init之后,thread_id的值的确是0,执行real_connect后就分配为大于0的值了。而且如果我不执行connect就用它来进行查询,也是不会导致程序出错的。完全不知道是什么原因导致的。求高手帮忙分析下啊。。
我就十分想知道这是为啥照成的。
嗯,那连接之前设置的reconnect那个东西,似乎在这种情况下是不管用了哦。
对于my.ini的配置,有没有方法提高点什么东西,像buffer的大小之类的,会不会减少这种出错的可能性。