博客
关于我
Linux下使用C语言访问MySQL数据库(一):MySQL安装以及常用管理命令
阅读量:393 次
发布时间:2019-03-05

本文共 1933 字,大约阅读时间需要 6 分钟。

1. 前言

数据库系统是当代计算机系统的重要组成部分,因为几乎所有现行的应用程序都需要存储数据。数据库系统的首要功能是能借助计算机科学保管大量、各种类型的数据。数据库系统也包括数据处理部分,该部分能够对数据进行收集、存储、检索和维护,目的就是可以从大量原始数据中截取、推导出对使用者有价值的信息作为下一步处理的源信息。

2. 数据库基本概念

数据库系统能够通过计算机科学的方式存储和管理大量数据。数据库系统的核心功能是存储和处理数据,它还可以对数据进行检索和维护。数据库管理系统(DBMS)是数据库的核心组件,它提供了对数据库的操作接口和数据管理功能。常见的数据库管理系统包括MySQL、Oracle、Informix等。本文将以MySQL为例说明数据库开发的基础知识。

2.1 数据与数据库

数据是数据库存储的基本对象,可以是文字、图片、声音等形式。数据库可以理解为计算机上的大容量存储空间,是一个可以表现为多种形式的可共享的数据集合。

2.2 数据库管理系统

数据库管理系统(DBMS)是位于用户和操作系统之间的软件,它提供了对数据库的创建、使用和维护功能。DBMS能够统一管理数据库,确保数据的一致性和安全性。通过DBMS,用户可以使用命令或API对数据库中的数据进行操作。例如,MySQL提供了丰富的命令和函数,使开发人员能够方便地与数据库交互。

2.3 数据库语言

数据库语言通常分为两种:交互式命令语言和嵌入到设计语言中的数据库语言。交互式命令语言允许用户直接通过命令对数据库进行操作,而嵌入式语言则通过API函数实现数据库操作。

3. MySQL数据库

MySQL是一种功能强大、灵活性好且提供丰富API的数据库系统,广泛应用于基于数据库的动态网站开发。MySQL采用SQL语言标准,SQL语句的详细说明可以参考以下链接。

3.1 MySQL 安装

在终端上输入以下指令安装MySQL:

apt-get install mysql-server mysql-client

安装过程中会弹出窗口,设置根用户密码。安装完成后,MySQL服务器通常会自启动。可以通过以下命令检查MySQL服务器状态:

sudo netstat -tap | grep mysql

如果MySQL服务器未启动,可以手动启动:

sudo /etc/init.d/mysql restart

安装完成后,进入MySQL命令行界面:

mysql -u root -p

此时系统会提示输入密码。注意:-p后面的密码不需要空格隔开,直接输入 -ppassword 即可。例如,直接连接命令为:

mysql -u root -ppassword

输入密码后进入MySQL界面,退出时输入 quitexit

3.2 MySQL 管理

MySQL 提供了多种管理命令,帮助用户对数据库进行操作。所有管理命令都具有三个标准参数:

  • -u:用户名
  • -p:密码(可选)
  • -h:主机地址(可选)
3.2.1 mysqladmin

mysqladmin 是一个主要的管理命令,支持以下操作:

  • 创建数据库:create dbname
  • 删除数据库:drop dbname
  • 清洗表:flush-tables
  • 更新密码:password newpassword
  • 关机:shutdown
  • 查看状态:status
  • 查看变量:variables
  • 查看版本:version

例如,查看服务器状态:

sudo mysqladmin -u root -p status

3.2.2 mysqldump

mysqldump 用于将数据库备份到文件。支持多种选项,例如:

  • -add-locks:在导出表之前锁表
  • -add-drop-table:在 CREATE TABLE 语句之前自动生成 DROP TABLE
  • -compress:压缩客户端和服务器之间的数据

例如,将数据库 mysql 复制到文件 test.bak

mysqldump -u root -p mysql > /home/wangqingchuan92/Desktop/test.bak

3.2.3 mysqlshow

mysqlshow 用于显示服务器、数据库或表的信息。支持以下参数:

  • 没有参数时,显示所有数据库。
  • 一个数据库名,显示该数据库的所有表。
  • 一个数据库名和一个表名,显示指定列的信息。
  • 一个数据库名、一个表名和一个列名,显示指定列的信息。

例如,显示数据库 testdb 中的所有表:

mysqlshow -u root -p testdb

参考资料

刘学勇. 《Linux C编程从入门到精通》. 北京:电子工业出版社,2014.

转载地址:http://hldzz.baihongyu.com/

你可能感兴趣的文章
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty心跳检测机制
查看>>
Netty核心模块组件
查看>>
Netty框架内的宝藏:ByteBuf
查看>>
Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
查看>>
Netty源码—2.Reactor线程模型一
查看>>
Netty源码—3.Reactor线程模型三
查看>>
Netty源码—4.客户端接入流程一
查看>>
Netty源码—4.客户端接入流程二
查看>>
Netty源码—5.Pipeline和Handler一
查看>>
Netty源码—5.Pipeline和Handler二
查看>>
Netty源码—6.ByteBuf原理一
查看>>
Netty源码—6.ByteBuf原理二
查看>>
Netty源码—7.ByteBuf原理三
查看>>
Netty源码—7.ByteBuf原理四
查看>>
Netty源码—8.编解码原理一
查看>>
Netty源码—8.编解码原理二
查看>>
Netty源码解读
查看>>
Netty的Socket编程详解-搭建服务端与客户端并进行数据传输
查看>>