linux c++ 安装mysql,linux安装mysql和使用c语言操作数据库的方法 c语言连接mysql

1. MySQL的安装与配置:

在Ubuntu下安装MySQL方法很简单,使用如下命令:

复制代码 代码如下:

sudo apt-get install mysql-server

安装的过程中系统会提示设置root密码,此过程可以跳过,但是建议在安装时提示设置root密码的时候自行设置,免得后面设置麻烦。安装结束之后,系统会启动mysql服务,可以使用命令去查看来验证mysql服务是否已经安装成功:

复制代码 代码如下:

ps -el | grep mysql

如果mysql服务没有正常的运行,可以使用下面指令对mysql服务进行重启:

复制代码 代码如下:

sudo service mysql restart

喜欢使用Workbench界面的,还需要安装Workbench:

复制代码 代码如下:

sudo apt-get install mysql-workbench

Workbench的启动使用如下命令:

复制代码 代码如下:

mysql-workbench --log-level=debug3 --verbose

2. MySQL命令行:

我们使用root去登录MySQL,然后做相关的操作:

复制代码 代码如下:

mysql -u root -p

在此,系统会提示输入密码,只需要输入之前设置的MySQL密码即可,然后程序会进入mysql命令行模式下,假设我们需要查看user信息,我们使用如下命令:

复制代码 代码如下:

use mysql

SELECT host, user, password FROM user;

MySQL会返回所有host,user和password等信息。其他比较复杂的操作,诸如添加数据库,添加表等和普通的数据操作命令一致,后面会以一个实例来说明。让我们赶快进入Linux下C操作MySQL的实践吧!

3. 使用C语言管理MySQL数据库:

首先,我们需要安装在Linux下操作MySQL多依赖的库,安装命令如下:

复制代码 代码如下:

sudo apt-get install libmysqlclient-dev

安装了这个之后,我们编程所需要的头文件,库文件等就齐全了,让我们开始C编程之旅吧!

首先,让我们准备一个我们用来折腾的空间,也就是准备一个折腾专属账户,一个折腾专属数据库和数据表等:

复制代码 代码如下:

#添加账户

GRANT ALL ON *.* TO rick@localhost IDENTIFIED BY 'secret'

\q

#使用新创建的rick账户登录

mysql -u rick -p

#创建数据库

CREATE DATABASE foo;

然后,我们使用一个sql文件插入数据表和测试数据:

复制代码 代码如下:

--

-- Create the table children

--

CREATE TABLE children (

childno int(11) NOT NULL auto_increment,

fname varchar(30),

age int(11),

PRIMARY KEY (childno)

);

--

-- Populate the table 'children'

--

INSERT INTO children(childno, fname, age) VALUES (1, 'Jenny', 21);

INSERT INTO children(childno, fname, age) VALUES (2, 'Andrew', 17);

INSERT INTO children(childno, fname, age) VALUES (3, 'Gavin', 8);

INSERT INTO children(childno, fname, age) VALUES (4, 'Duncan', 6);

INSERT INTO children(childno, fname, age) VALUES (5, 'Emma', 4);

INSERT INTO children(childno, fname, age) VALUES (6, 'Alex', 15);

INSERT INTO children(childno, fname, age) VALUES (7, 'Adrian', 9);

将上述sql语句存为create_children.sql,然后使用下列命令导入MySQL数据库foo:

复制代码 代码如下:

mysql -u rick --password=secret foo

\. create_children.sql

好了,写个demo进行测试吧:

复制代码 代码如下:

#include

#include

#include "mysql.h"

int main(int argc, char *argv[]) {

MYSQL my_connection;

int res;

mysql_init(&my_connection);

if (mysql_real_connect(&my_connection, "localhost",

"rick", "secret", "foo", 0, NULL, 0)) {

printf("Connection success\n");

res = mysql_query(&my_connection, "INSERT INTO children(fname, age) VALUES('Ann', 3)");

if (!res) {

printf("Inserted %lu rows\n",

(unsigned long)mysql_affected_rows(&my_connection));

} else {

fprintf(stderr, "Insert error %d: %s\n", mysql_errno(&my_connection), mysql_error(&my_connection));

}

mysql_close(&my_connection);

} else {

fprintf(stderr, "Connection failed\n");

if (mysql_error(&my_connection)) {

fprintf(stderr, "Connection error %d: %s\n", mysql_errno(&my_connection), mysql_error(&my_connection));

}

}

return EXIT_SUCCESS;

}

将上述代码保存为demo.c。上述代码中,我们需要包含mysql.h头文件来使用mysql提供的API对MySQL进行操作。程序写好了,编译过程需要加入需要的链接信息:

复制代码 代码如下:

gcc -I/usr/include/mysql demo.c -L/usr/lib/mysql -lmysqlclient -o demo

好了,程序成功编译,运行一下试试吧:

复制代码 代码如下:

./demo

#结果如下

Connection success

Inserted 1 rows

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值