MySQL的工作流程及常用工具简介——MySQL 5.7数据库



一. MySQL的工作流程

在这里插入图片描述
(1)操作系统用户启动MySQL服务。

(2)MySQL服务启动期间,首先将配置文件中的参数信息读入服务器内存。

(3)根据MySQL配置文件的参数信息或者编译MySQL时参数的默认值生成一个服务实例进程Instance。

(4)MySQL服务实例进程派生出多个线程为多个客户机提供服务。

(5)数据库用户访问MySQL服务器的数据时,首先需要选择一台登录主机,然后在该登录主机上开启客户机,输入正确的账户名、密码,建立一条客户机与服务器之间的“通信链路”。

(6)接着数据库用户就可以在MySQL客户机上输入MySQL命令或SQL语句,这些MySQL命令或SQL语句沿着该通信链路传送给MySQL服务实例,这个过程称为客户机向MySQL服务器发送请求。

(7)MySQL服务实例负责解析这些MySQL命令或SQL语句,并选择一种执行计划运行这些MySQL命令或SQL语句,然后将执行结果沿着通信链路返回给客户机,这个过程称为MySQL服务器向MySQL客户机返回响应。

(8)数据库用户关闭MySQL客户机,通信链路被断开,该客户机对应的MySQL会话结束。



二. MySQL数据库工具简介

        MySQL数据库管理系统提供了许多命令行工具,这些工具可以用来管理MySQL服务器、对数据库进行访问控制、管理MySQL用户以及数据库备份和恢复工具等。另外,MySQL还提供了图形化的管理工具,这使得对数据库的操作更加简单。


1. MySQL服务器端的常用工具

(1)mysqld:SQL后台程序(即MySQL服务器进程)。 该程序必须运行之后,客户端才能通过连接服务器来访问数据库。

(2)mysqld_safe:服务器启动脚本。 在UNIX和NetWare中推荐使用mysqld_safe来启动mysqld服务器。mysqld_safe增加了一些安全特性,例如当出现错误时重启服务器并向错误日志文件写入运行时间信息。

(3)mysql.server:服务器启动脚本。 在UNIX中的MySQL分发版包括mysql.server脚本。该脚本用于使用包含为特定级别的、运行启动服务的脚本的、运行目录的系统。它调用mysqld_safe来启动MySQL服务器。

(4)mysql_multi:服务器启动脚本, 可以启动或停止系统上安装的多个服务器。

(5)myisamchk: 用来描述、检查、优化和维护MyISAM表的实用工具。在使用myisamdchk修复会优化表时,必须保证mysqld服务器没有使用该表,最好关闭mysqld服务;如果不关闭mysqld,在运行myisamchk之前应执行mysqladmin flash-tables。如果服务器和myisamchk同时访问表,表可能会被破坏。

(6)mysqlbug:MySQL缺陷报告脚本。 它可以用来向MySQL邮件系统发送缺陷报告。

(7)mysql_install_db:该脚本用默认权限创建MySQL授权表。 通常只是在系统上首次安装MySQL时执行一次。它会初始化数据目录,并创建它所包含系统表(如果系统表不存在),它还初始化管理表所需的系统表空间和相关的数据结构。


2. MySQL客户端常用工具

(1)myisampack: 压缩MyISAM表以产生更小的只读表的一个工具。压缩后的表占用比压缩前小得多的空间。但是压缩后的表将成为一个只读表,不能进行 DML 操作。

(2)mysql: 交互式输入SQL语句或从文件以批处理模式执行它们的命令行工具。同时也是使用最频繁的连接数据库的客户端工具

(3)mysqlaccess: 检查访问主机名、用户名和数据库组合的权限的脚本。

(4)MySQLadmin: 执行管理操作的客户程序,例如创建或删除数据库,重载授权表,将表刷新到硬盘上,以及重新打开日志文件。MySQLadmin还可以用来检索版本、进程,以及服务器的状态信息。

(5)mysqlbinlog: 从二进制日志读取语句的工具。在二进制日志文件中包含执行过的语句,可用来帮助系统从崩溃中恢复。

(6)mysqlcheck: 检查、修复、分析以及优化表的表维护客户程序。

(7)mysqldump: 将MySQL数据库转储到一个文件(例如SQL语句或tab分隔符文本文件)的客户程序。用来备份数据库或在不同数据库之间进行数据迁移。备份内容包含创建表或装载表的 sql 语句。

(8)mysqlhotcopy: 当服务器在运行时,快速备份MyISAM或ISAM表的工具。

(9)mysql import: 使用load data infile将文本文件导入相关表的客户程序。

(10)mysqlshow: 显示数据库、表、列以及索引相关信息的客户程序。和 mysql 客户端工具很类似,不过有些特性是 mysql 客户端工具所不具备的。

(11)perror: 显示系统或MySQL错误代码含义的工具。在 MySQL 的使用过程中,可能会出现各种各样的 error。这些 error 有些是由于操作系统引起的,比如文件或者目录不存在;有些则是由于存储引擎使用不当引起的。这些 error 一般都有一个代码,类似于 “error:#” 或者 “Errcode:#”,“#” 代表具体的错误号。perror 的作用就是解释这些错误代码的详细含义。


发布了38 篇原创文章 · 获赞 15 · 访问量 1690

猜你喜欢

转载自blog.csdn.net/hyh17808770899/article/details/104988019