在CentOS里使用MySQL Connector/C++
操作系统版本:CentOS6 64位
1,安装boost库。因为MySQL Connector/C++使用了boost库,所以必须先安装boost库,我们才能使用MySQL Connector/C++。
点“系统”->"管理"->"添加删除软件",在查询文本框里输入"boost",然后查找。查找完毕后,在右面的查找结果列表中选择"The Boost C++ headers and shared development libraries ",随后安装它,这样boost库就安装完毕了。
2,准备MySQL Connector/C++的头文件和库文件。到mysql官方网站(http://www.mysql.com/downloads/connector/cpp/)选择和自己操作系统对应的MySQL Connector/C++下载下来。
CentOS6 64位下载链接:http://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-1.1.1-linux-glibc2.3-x86-64bit.tar.gz
CentOS6 32位下载链接:http://cdn.mysql.com/Downloads/Connector-C++/mysql-connector-c++-1.1.1-linux-glibc2.3-x86-32bit.tar.gz
3,把MySQL Connector/C++的头文件和库文件拷贝到正确位置。解压缩我们下载的MySQL Connector/C++压缩包,里面有文件和目录,我们只需要“include”和"lib"目录中的文件。
a,拷贝解压缩包中的“include”目录中所有文件到“/usr/include”。
b,拷贝解压缩包中的“lib”目录中所有文件到“/usr/lib”。
4,编写测试C++程序代码。建立一个名称为“mysqlcpp.cpp”的文件,在里面输入下面代码:
#include <iostream>
#include <sstream>
#include <memory>
#include <string>
#include <stdexcept>
using namespace std;
#include <mysql_connection.h>
#include <mysql_driver.h>
#include <cppconn/driver.h>
using namespace sql;
#define DBHOST "tcp://localhost:3306"
#define USER "root"
#define PASSWORD ""
int main() {
Driver *driver;
Connection *conn;
driver = get_driver_instance();
conn = driver->connect(DBHOST, USER, PASSWORD);
conn->setAutoCommit(0);
cout<<"DataBase connection autocommit mode = "<<conn->getAutoCommit()<<endl;
delete conn;
driver = NULL;
conn = NULL;
return 0;
}
5,编译源代码。在终端中进入上面程序源文件所在目录,随后输入:g++ -o mysqlcpp -lmysqlcppconn mysqlcpp.cpp ,如果一切顺利,那么应该没有任何错误提示,随后终端等待下一次输入命令。这个时候我们在源文件目录中会发现已经顺利编译出来一个名字为"mysqlcpp"的可执行文件。我们在终端中输入:./mysqlcpp ,如果我们的MySQL服务器正常工作,那么应该可以看到这个测试程序的正确输出内容了。如果不能连接到MySQL ,请检查MySQL数据库是否工作正常,在确认正常工作后,重新在终端中执行这个编译出来的可执行文件。
6,在Eclipse CDT中使用MySQL Connector/C++。我们在CDT中新建一个C++工程,随后创建一个C++源文件,把上面代码拷贝到这个刚刚创建的源文件中。我们设置一下CDT的参数。
“properties”->"C/C++ Build"->"settings",随后在右侧的“Tools Settings”下面选择“GCC C++ Linker”里选择“libraries”,在右侧上面的“libraries”中增加一项“mysqlcppconn”,随后保存退出就可以了。
上面配置完毕后,我们就能够顺利编译测试程序了,编译完毕后,我们在“Run”菜单下的“Run Configurations”里加上我们刚刚编译出来的可执行文件,随后运行就能够在控制台里看到我们程序的输出了。
在CentOS里使用MySQL Connector/C++的更多相关文章
- 设置CentOS里的Mysql开启客户端远程连接
CentOS系统安装好MySQL后,默认情况下不支持用户通过非本机连接上数据库服务器,下面是解决方法: 1.在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的 ...
- 【菜鸟玩Linux开发】在C++里操作MySQL
MySQL是一个的开源关系型数据库,对于服务端开发来说是一个优秀的选择.本篇内容将介绍如何在C++程序里操作MySQL数据库. ———————————————————————————————————— ...
- Centos下安装mysql 总结
一.MySQL安装 Centos下安装mysql 请点开:http://www.centoscn.com/CentosServer/sql/2013/0817/1285.html 二.MySQL的几个 ...
- 关于MySQL Connector/C++那点事儿
如果从官方直接下载的库使用时遇到类似如下的问题: 原因是官方提供的库文件版本与需要的库版本不匹配,提供的debug版本使用的是MT版本,在debug模式下会出现内存错误,导致crash. TestC. ...
- python使用mysql的三个模块:mysql.connector、sqlalchemy、MySQLdb
在python中使用mysql其实很简单,只要先安装对应的模块即可,那么对应的模块都有什么?官方也没指定也没提供,pcat就推荐自己遇到的3个模块:mysql.connector.sqlalchemy ...
- 1分钟完美安装最新CentOS+Nginx+PHP-FPM+MySQL
PHP 5.3.1 MySQL 5.0.89 Nginx 0.8.33 或 0.7.65 (可选) 现在,我们可以快速全自动搞定 CentOS + Nginx + PHP-FPM + MySQL 的安 ...
- 第11月第20天 sqlite3_open xcode mysql connector
1. sqlite3_open 死锁 * thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP frame ...
- (转)CentOS 7 下 MySQL 5.7 配置 Percona Xtrabackup
CentOS 7 下 MySQL 5.7 配置 Percona Xtrabackup 原文:http://qizhanming.com/blog/2017/05/10/install-percona- ...
- mysql Connector C++ 操作数据库 vs2012
最近想写一个应用程序,要连接和操作mysql数据库,以前只是用c++ builder 操作过mysql数据库,那是用控件操作的,感觉比较弱智,但是c++ builder vcl控件感觉在多线程里比较坑 ...
随机推荐
- Linux内核-模块编译和安装
我安装Ubuntu的时候是没有安装源码的,在没有安装源码前 /usr/src/ 目录下是只有两个包含内核的头文件的文件夹的: 我的内核版本是: 所以接下来就是先安装内核源码: 执行后,/usr/src ...
- joinfetch之意义
既然被join的对象早晚都要用到,为什么要先从A表取这边的独享,再根据关联关系取B表中的对象,分两次或者多次进行,增加数据库的负载呢? 为什么不把A表和B表join成一张表,从这个组合表中把要取的对象 ...
- MySQL表的增删改查和列的修改(二)
一.使用Like模糊查找搜索前缀为以“exam_”开头的表名 show tables like 'exam_%' ; 语句结束符号是:也是用\G来表示 二.MySQL表的CRUD 2.1 创建表: C ...
- linux下磁盘进行分区、文件系统创建、挂载和卸载
任务的原因:由于,刚购买来的服务器需要将磁盘挂载到操作系统上,为了挂载磁盘首先要对磁盘进行分区,然后进行文件系统的创建,最后将磁盘挂载到操作系统上的某个目录. MBR(Master Boot Reco ...
- objectARX判断当前坐标系
判断当前坐标系是WCS还是UCS 使用系统变量 WORLDUCS 请参见 用户坐标系 (UCS) 概述 (只读) 类型: 整数 保存位置: 未保存 初始值: 1 指示 UCS 是否与 WCS 相同 ...
- Camel routes in Spring config file
The normal spring bean definition configuration file, the xsi:schemaLocation only has two: beans and ...
- 前序/中序--->后序
参考:http://www.cnblogs.com/rain-lei/p/3576796.html !!由前序和后序序列无法确定二叉树 preOrder 5 3 2 4 8 6 9 midOrde ...
- HTTP Live Streaming直播(iOS直播)技术分析与实现
前些日子,也是项目需要,花了一些时间研究了HTTP Live Streaming(HLS)技术,并实现了一个HLS编码器HLSLiveEncoder,当然,C++写的.其功能是采集摄像头与麦克风,实时 ...
- HDU 1721
http://acm.hdu.edu.cn/showproblem.php?pid=1721 非常有趣的一道水题,注意到相隔一个点的粒子数是可以相互转移的,所以只要判红点的和与蓝点的和是否相等 #in ...
- static 静态代码块 动态代码块 单例
1. 共享,不属于对象,属于类,类成员变量,任何一个类的对象都有该属性,一旦被修改,则其他对象中的该属性也被更改. 2. 类中方法是static的,可以通过类名直接访问,不用new一个该类的对象. 3 ...