错误:

#warning This file should not be included by clients, include only <mysql.h>
^
In file included from _mysql.c:46:0:
/usr/include/mysql/mysql.h:440:3: warning: function declaration isn’t a prototype [-Wstrict-prototypes]
MYSQL_CLIENT_PLUGIN_HEADER
^
_mysql.c: In function ‘_mysql_ConnectionObject_ping’:
_mysql.c:2005:41: error: ‘MYSQL’ has no member named ‘reconnect’
if ( reconnect != -1 ) self->connection.reconnect = reconnect;
^
error: command 'gcc' failed with exit status 1

错误原因是 MariaDB 10.2 、10.3 的 MySQL 版本时没有 reconnect

解决:

vim /usr/include/mysql/mysql.h​

搜索 st_mysql 定义结构,添加 reconnect 声明如下:

unsigned int reconnect; / matt hacking mysql by mimvp.com /

my_bool reconnect; / set to 1 if automatic reconnect by mimvp.com /

参考 https://blog.mimvp.com/article/5488.html