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

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 <stdlib.h>
#include <stdio.h>

#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

时间: 2024-09-22 03:35:11

linux安装mysql和使用c语言操作数据库的方法 c语言连接mysql_C 语言的相关文章

linux内核-linux安装mysql问题~~~~~

问题描述 linux安装mysql问题~~~~~ 有root权限 #rpm -ivh mysql-server-5.6.13.i386.rpm 然后就出现这些 Preparing... ########################################### [100%] file /usr/share/mysql/charsets/README from install of MySQL-server-5.6.1 3-1.linux_glibc2.5.i386 conflicts

PHP入门教程之使用Mysqli操作数据库的方法(连接,查询,事务回滚等)_php技巧

本文实例讲述了PHP入门教程之使用Mysqli操作数据库的方法.分享给大家供大家参考,具体如下: Demo1.php <?php //使用 mysqli 对象操作数据库 //创建 mysqli 对象(资源句柄) $_mysqli = new mysqli(); //连接数据库 1.主机名(ip) 2.账户 3.密码 4.数据库 //mysqli_connect 函数 == $_mysqli -> connect(); $_mysqli -> connect('localhost','ro

SQLServer 2008以上误操作数据库恢复方法——日志尾部备份

原文:SQLServer 2008以上误操作数据库恢复方法--日志尾部备份 原文出处:http://blog.csdn.net/dba_huangzj/article/details/8491327 问题:          经常看到有人误删数据,或者误操作,特别是update和delete的时候没有加where,然后就喊爹喊娘了.人非圣贤孰能无过,做错可以理解,但不能纵容,这个以后再说,现在先来解决问题.         遇到这种情况,一般都是没有做备份,不然也不会来发问了.首先要冷静,否则会

Linux 安装 MySQL 以及 一些常见问题解决方案

一.下载MySql浏览器打开 http://www.mysql.com/downloads/mysql/#downloads 下载 我下载的版本是Red Hat 5 版本的 http://www.mysql.com/downloads/mirror.php?id=407552 上传至服务器,或在服务器上直接 wget 下载方式下载.(我在服务器上存放在目录/opt/tools 下) 二.解压tar文件执行命令:tar -xvf MySQL-5.5.23-1.rhel5.x86_64.tar 三.

Linux 安装 MySQL 到mysql_install_db --user=mysql执行出错

问题描述 linux 手动编译安装 mysql 完成后 执行 /usr/local/mysql/bin/mysql_install_db --user=mysql 出错..以下是错误信息.. 我还是没太明白... 帮忙看下...Installing MySQL system tables...110823 20:55:57 [Warning] '--skip-locking' is deprecated and will be removed in a future release. Pleas

linux安装mysql

Linux服务器yum安装(CentOS6 64位) 所有在服务器上执行的命令,都在 # 后面 1.命令安装mysql # yum install mysql mysql-server mysql-devel -y 最后提示 Complete!  表示安装成功 2.查看是否生成了mysqld服务, 并设置随机启动 # chkconfig --list |grep mysql 数字代码服务器启动级别,off  代表不随机启动mysqld服务,on代表随机启动服务 我们需要设置mysqld随机启动,

Linux 安装 MySQL / MySQL 主从备份

!! 假定所有安装包均在 /share目录,安装目录为 /opt !! $ ll /share -rw-r--r-- 1 root root  129041873 Nov 29 21:06 mysql-5.1.54-linux-i686-glibc23.tar.gz ============================================================== ========================= 安装 MySQL ==================

Linux下 mysql oracle 简单使用手册_数据库其它

安装好mysql后,配置好环境变量,然后 敲入 mysql 进入mysql 然后可以 Use mysql; Select * from user; 来查看所有的用户: Mysql 下执行脚本文件: Mysql > source xxx.sql; 1.1 两种方式增加用户:(转) 有2个不同的方法增加用户:通过使用GRANT语句或通过直接操作MySQL授权表.比较好的方法是使用GRANT语句,因为他们是更简明并且好像错误少些. 下面的例子显示出如何使用MySQL客户安装新用户.这些例子假定权限已缺

安装MYSQL错误“conflicts with file from package mysql-libs-*” 解决方法

安装MYSQL的时候时: 错误现象: [root@localhost opt]# rpm -ivh MySQL-server-5.5.32-1.el6.x86_64.rpm Preparing... ########################################### [100%] file /usr/share/mysql/charsets/Index.xml from install of MySQL-server-5.5.32-1.el6.x86_64 conflicts