Linux下C++/C连接MySQL数据库

虚拟机的版本:redhat7.0  64bit

数据库的版本:MySQL5.7

1、将解压得到的文件里对应的库,头文件拷贝到系统能找到的位置

例如:我当时安装数据库的文件都在:/usr/local/下

执行:cp /usr/local/include/* /usr/include/

注意,拷贝时,如果*里含有文件夹,则需要用:

cp -r /usr/local/include/* /usr/include/

(cp将递归复制该目录下所有的子目录和文件)

随意写一段测试文件:1.cpp

# include <iostream>

# include <mysql/mysql.h>

using namespace std;

int main()

{

MYSQL * connection;

connection = mysql_init(NULL);

return 0;

}

然后用 g++ -o 1 1.cpp -lmysqlcient 编译文件

很不幸,又是意料之中的出现了一个问题:

找不到库文件导致的。

终端输入命令:mysql_config --libs

现在我们编译时加上路径,执行:g++ -L/usr/local/lib/mysql -lmysqlclient -o 1 1.cpp

编译通过。

链接时默认路径为 /usr/local/lib,多了一层目录,我们将mysql下的文件拷贝到lib下

执行:cp /usr/local/lib/mysql/* /usr/local/lib/

此时删不删lib下的mysql文件夹都无碍了。

再次执行 g++ -o 1 1.cpp -lmysqlclient 编译通过。

时间: 2024-10-13 02:56:37

Linux下C++/C连接MySQL数据库的相关文章

MySQL学习笔记_12_Linux下C++/C连接MySQL数据库(二) --返回数据的SQL

 Linux下C++/C连接MySQL数据库(二) --返回数据的SQL 引: 返回数据的SQL是指通过查询语句从数据库中取出满足条件的数据记录 从MySQL数据库值哦功能检索数据有4个步骤: 1)发出查询 2)检索数据 3)处理数据 4)整理所需要的数据 用mysql_query()发出查询,检索数据可以使用mysql_store_result()或mysql_use_result(),取决与怎样检索数据,接着是调用mysql_fetch_row()来处理数据,最后,还必须调用mysql_

MySQL学习笔记_13_Linux下C++/C连接MySQL数据库(三) --处理返回数据

 Linux下C++/C连接MySQL数据库(三) --处理返回数据 一.通过返回结果集中的字段数 [cpp] view plaincopyprint? unsigned int mysql_field_count(MYSQL * connection); //将MYSQL_ROW的值作为一个存储了一行数据的数组... unsigned int mysql_field_count(MYSQL * connection); //将MYSQL_ROW的值作为一个存储了一行数据的数组... 示例:

MySQL学习笔记_11_Linux下C++/C连接MySQL数据库(一)

 Linux 下 C++/C 连接 MySQL 数据库(一) 一.连接前准备 原材料:Ubuntu12.04LTS (已经安装了MySQL5.5或者更高级版本,新立得软件包,gcc/g++或者CodeBlosks编译器) 安装了以上的软件包后,我们可以正常使用MySQL完成数据管理工作,但是很多时候我们需要通过编写程序访问MySQL.此时,在程序中需要加载MySQL驱动头文件,但是默认这些驱动包是没有安装的,因此我们需要在新立得中找到"libmysqld-dev"包并安装. 安装完

Linux下使用Python操作MySQL数据库

安装mysql-python 1.下载mysql-python 打开终端: cd /usr/local sudo wget http://nchc.dl.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.2.tar.gz 官网地址:http://sourceforge.net/projects/mysql-python/ 2.解压 sudo tar -zxvf MySQL-python-1.2.2.tar.gz cd MySQL-

Linux系统下实现远程连接MySQL数据库的方法教程

1.在服务器端开启远程访问首先进入mysql数据库,然后输入下面两个命令: grant all privileges on *.* to 'root'@'%' identified by 'password';flush privileges;第一个*是数据库,可以改成允许访问的数据库名称第二个 是数据库的表名称,代表允许访问任意的表root代表远程登录使用的用户名,可以自定义%代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了password代表远程登录时使用的密码,可以自定

Linux下安装以及使用MySQL数据库

1.官网下载mysql数据库:https://dev.mysql.com/downloads/mysql/ 2.linux 下可直接下载:wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz 3.解压缩到 /usr/local/mysql 下 4.进入到mysql的根目录     安装:bin/mysqld --initialize --user=mysql --bas

CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)

用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r.so.16 => not found ,后明显libmysqlclient_r.so.16 缺少另一个共享库,他们是依赖关系,解决了这个问题qt才能真的连接到mysql数据库.而我的/usr/lib64/下的共享库版本比较高是libmysqlclient.so.18,想到了一个比较投机的想法ln创

Win系统下使用命令连接MySQL数据库

方法一: 1:打开[开始]->[运行]输入[cmd]单击[确定]后出现CMD命令黑色窗口,这就是我们说的CMD命令行 2:默认进入C盘,于是我们可以进入E盘,点击回车.因为我的数据库是存放在E盘的.以我的电脑为例,方法如下:输入E:进入E盘,如下图所示: 3:在CMD命令窗口敲入命令 mysql -h localhost -u root -p 后按回车(注意这里的"-h"."-u"."-p"不能省略) 进入mysql数据库,其中"

在linux下安装并配置mysql数据库

工具/原料 MySql5.6 CentOS 方法/步骤 1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql 如果显示有如下包则说明已安装mysql mysql-4.1.12-3.RHEL4.1 mysqlclient10-3.23.58-4.RHEL4.1 2 如果已安装,则需要删除已安装的数据库,使用以下命令来删除数据库 删除命令:rpm -e --nodeps 包名 ( rpm -ev mysql-4.1.12-3.RHEL4.1 ) 删除老版本my