linux环境下使用C语言连接MySQL数据库

作者:庄朋龙 发布时间: 2015-12-28 阅读量:0
#include <stdio.h>
#include "mysql.h"   //使用MYSQL类库函数

int main(void)
{
    MYSQL *connp = mysql_init(NULL);
    if(!connp) {
        printf("error 1\n");
        return -1;
    }
    connp = mysql_real_connect(connp, "localhost", "root","", "test", 0, NULL, 0);   //数据库连接信息  ip  用户名 密码 数据库名
    if(connp) {
        printf("connect ok ...\n");
    } else {
        printf("connect error ...\n");
    }

    mysql_close(conn_ptr);
    return 0;
}
直接使用 gcc mysql.c  编译会提示找不到 mysql.h, 编译时需要指定 mysql.h 头文件和 mysql库的位置 先用 l 搜索一下你的linux上没有这两个文件
locate mysql.h      ##在你的lINUX系统里查找mysql.h头文件
locate libmysqlclient.so  #在你的lINUX系统里查找mysqlclient 库文件
要是找不到,那么就证明没有安装mysqlclient类库。  执行以下命令安装:
sudo apt-get install libmysqlclient-dev  #ubuntu、Debian等系统使用这条命令
sudo yum install libmysqlclient-dev   #Redhat、CentOS等系统使用这条命令
安装过后 然后在搜索一下 mysql.h 文件
updatedb   #先更新一下本地文件数据库
locate mysql.h  #然后重复第一步 在你的lINUX系统里查找 mysql.h
locate libmysqlclient.so  #在你的lINUX系统里查找mysqlclient 库文件
找到了 : /usr/include/mysql/mysql.h     mysql.h在/usr/include/mysql/目录下 /usr/lib/arm-linux-gnueabihf/libmysqlclient.so   libmysqlclient.so在/usr/lib/arm-linux-gnueabihf/目录下 然后编译的时候加上相应的参数即可:
gcc mysql.c -L/usr/lib/arm-linux-gnueabihf/ -I/usr/include/mysql -lmysqlclient