inux 下c/c++ 连接mysql数据库全过程-----已经通过验证
安装Mysql(还可以下载 .gz包,解压安装,再此只介绍此法,其实都一样了,或百度一下。。。重点在下下下下面)
1.首先安装Mysql服务器
sudo apt-get install mysql-server
2.然后安装客户程序
sudo apt-get install mysql-client
3.启动服务器
sudo /etc/init.d/mysql restart
4.当服务器启动之后,你可以使用netstat命令来查看服务器的运行情况
sudo netstat -tap | grep mysql
5.既然服务器已经启动了,我们登录进去看看吧
mysql -u root -p
其中,root为默认的Mysql数据库管理员账户,回车之后应该输入密码,相信密码在安装时你已经设置过了,如果你没设置的话,默认密码为空,因此直接敲回车就可以了,或者还有一个默认密码是db_user_password.
重点:
在装好mysql-server和mysql-client后,就来装类似windows 下的驱动;
方法一:
1.安装必需的开发包
sudo apt-get install gcc g++ libgcc1 libg++ make gdb
2.安装Mysql的C语言开发包(放心,C++一样用的)
sudo apt-get install libmysql++2c2a libmysqlclient15-dev libmysqlclient15off libmysql++-dev
3.把lib文件复制到库里
sudo cp /usr/lib/mysql/* /usr/lib/
现在,你已经可以使用C/C++链接Mysql了,但是,接下来你必须接受一个残酷的事实,以后编写C/C++程序时,你必须包含mysql.h文件
#include “/usr/include/mysql/mysql.h”
注意:上面的方法在执行第一个 sudo 命令时,有可能报错,
什么什么未满足依赖关系,各种冲突,等等,我就是卡在这的。。。。后来各种查资料。。。。无意间,另一种方法出现。。。
方法二:那就是下载(mysql-connector-c++-1.1.3-linux-glibc2.3-x86-64bit.tar.gz),(选取适合自己平台版本的,我的是这个。。。)
网址:
http://dev.mysql.com/downloads/connector/cpp/
解压:tar -zxvf mysql-connector-c++-1.1.3-linux-glibc2.3-x86-64bit.tar.gz
然后将解压得到的文件里对应的库,头文件拷贝到系统能找到的位置,就像上面做的那样。
sudo cp mysql-connector-c ????/lib/* /usr/lib
sudo cp mysql-connector-c????/include/* /usr/include/
ok,然后,测试程序:
//test.cpp
#include
#include "mysql/mysql.h"
int main()
{
const char *host = "localhost";
const char *user = "root";
const char *pass = "123456";
const char *db = "test";
MYSQL mysql;
mysql_init(&mysql);
if (!mysql_real_connect(&mysql, host, user, pass, db, 0, NULL, 0)) {
printf("%s", mysql_error(&mysql));
}
else {
printf("YES, Conected succeed!");
}
mysql_close(&mysql);
return 0;
}
编译:
gcc test.c -lmysqlclient
执行: ./a.out
inux 下c/c++ 连接mysql数据库全过程-----已经通过验证的更多相关文章
- Windows下C/C++连接mysql数据库的方法
步骤 安装MySQL数据库 项目属性页->C/C++->常规->附加包含目录:xxx\mysql Server 5.6\include 项目属性页->链接器->常规-&g ...
- CentOS7 (64位) 下QT5.5 连接MySQL数据库(driver not loaded)
用qt连接MySQL需要共享库 libqsqlmysql.so的驱动,路径在plugin/sqldrivers目录下,乍看已经可用了,其实不然. 用ldd命令分析一下,libmysqlclient_r ...
- Linux系统下实现远程连接MySQL数据库的方法教程
1.在服务器端开启远程访问首先进入mysql数据库,然后输入下面两个命令: grant all privileges on *.* to 'root'@'%' identified by 'passw ...
- VS2010下C/C++连接MySql数据库的方法
1. 新建一个C++控制台程序 2. 选择项目 CMySql属性 3. 选择配置属性 C/C++ 常规 附加包含目录 4. 添加包含目录C:\Program Files\MySQL\Connector ...
- Linux下的C#连接Mysql数据库
今天在尝试在 Linux 系统下使用C#连接数据库,发现网上这方面的信息很少,所以就写一篇博客记录一下. Linux下这里使用的是mono. 首先是缺少Mysql.Data.dll这个库的,所以需要安 ...
- Linux系统下 解决Qt5无法连接MySQL数据库的方法
Linux平台下解决Qt5连接mysql数据库的问题:输入sudo apt-get install libqt5sql5-mysql解决,这种方法只能解决Qt是用sudo apt-get instal ...
- MATLAB连接MySQL数据库
今天开始看<MATLAB数据分析与挖掘实战>,学习了下用MATLAB连接MySQL数据库,环境win7,32bit,MySQL5.7.12,MATLAB2013B 首先,从这里下载驱动的压 ...
- 转载:Java连接MySQL 数据库的正确操作流程
转载网址:http://www.bitscn.com/pdb/mysql/201005/186551.html 以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例 ...
- Windows操作系统下远程连接MySQL数据库
用Eclipse做一个后台项目,但是数据库不想放在本地电脑,于是买了一个腾讯云服务器(学生有优惠,挺便宜的),装上MySQL数据库,但是测试连接的时候,发现总是连接不是上,但是本地数据库可以连接,于是 ...
随机推荐
- 另5个你不知道的HTML5接口API
原文地址: 5 More HTML5 APIs You Didn’t Know Existed 演示地址: 全屏API Demo 原文日期: 2012年11月08日 翻译日期: 2013年08月13日 ...
- SQL Server手工插入标识列
如果我们在标识列中插入值,例如: insert member(id,username) values(10,'admin') 则在查询分析器里面会返回错误信息: 引用内容 服务器: 消息 544,级别 ...
- iOS--inputView和inputAccessoryView
iOS–inputView和inputAccessoryView 什么是inputView和inputAccessoryView? 如果是UITextField和UITextView,下面是声明文件源 ...
- SA密钥长度、明文长度和密文长度
本文介绍RSA加解密中必须考虑到的密钥长度.明文长度和密文长度问题,对第一次接触RSA的开发人员来说,RSA算是比较复杂的算法,RSA的复杂度是因为数学家把效率和安全也考虑进去的缘故. 本文先只谈密钥 ...
- Java多线程编程<一>
怎样做到线程安全? 1.不要跨线程共享变量: 2.使状态变量为不可变的: 3.或者在任何访问状态变量的时候使用同步 同步synchronized //静态的synchronized方法从Class对象 ...
- Length 和 Width在矩形中的定义.
Length is the longer or longest dimension of a rectangle (or even an object). Ref:http://mathforum.o ...
- Android Parcelable Trans byte[]
思路: http://stackoverflow.com/questions/10898116/make-custom-parcelable-containing-byte-array 谢谢, 这位外 ...
- VMware复制Centos6虚拟机要改的地方
1.删除文件 /etc/udev/rules.d/70-persistent-net.rules (它会绑定你网卡信息) 2.重新配置 # vi /etc/sysconfig/network-scr ...
- maven发布的资源文件到tomcat项目下
问题:项目中有hibernate的资源文件,src/main/java和src/main/resources都有这些文件,当启动项目时发现出错.但是src/main/java已经修改好了, 经查tom ...
- webServices 执行流程,(我是菜鸟,我怕谁,仅代表个人理解,欢迎各位大神们指导,不和您的胃口,请默默离开!!)
二.上图仅仅代表个人理解,下面以代码方式解释一下. (1) strtus.xml <?xml version="1.0" encoding="UTF-8" ...