MySQL 安装中包含许多不同的程序。本节对其进行简要概述。后面的章节将对每个程序进行更详细的描述,但 NDB 集群程序除外。每个程序的描述都指明了其调用语法和支持的选项。《第 25.5 节,“NDB 集群程序”》描述了 NDB 集群特有的程序。
大多数 MySQL 发行版都包含所有这些程序,但特定于平台的程序除外。(例如,服务器启动脚本不在 Windows 上使用。)例外是 RPM 发行版更加专门化。服务器有一个 RPM,客户端程序有一个 RPM,等等。如果您似乎缺少一个或多个程序,请参阅《第 2 章,安装 MySQL》,了解有关发行版类型及其包含内容的信息。可能是您的发行版未包含所有程序,您需要安装其他软件包。
每个 MySQL 程序都接受许多不同的选项。大多数程序都提供了一个 --help
选项,您可以使用该选项来获取程序不同选项的描述。例如,尝试 mysql --help。
您可以通过在命令行或选项文件中指定选项来覆盖 MySQL 程序的默认选项值。有关调用程序和指定程序选项的一般信息,请参阅《第 6.2 节,“使用 MySQL 程序”》。
MySQL 服务器 mysqld 是在 MySQL 安装中完成大部分工作的程序。服务器附带了几个相关的脚本,可以帮助您启动和停止服务器
SQL 守护程序(即 MySQL 服务器)。要使用客户端程序,mysqld 必须正在运行,因为客户端通过连接到服务器来访问数据库。请参阅《第 6.3.1 节,“mysqld - MySQL 服务器”》。
服务器启动脚本。mysqld_safe 尝试启动 mysqld。请参阅《第 6.3.2 节,“mysqld_safe - MySQL 服务器启动脚本”》。
服务器启动脚本。此脚本用于使用 System V 样式运行目录的系统,该目录包含启动特定运行级别的系统服务的脚本。它调用 mysqld_safe 来启动 MySQL 服务器。请参阅《第 6.3.3 节,“mysql.server - MySQL 服务器启动脚本”》。
可以启动或停止安装在系统上的多个服务器的服务器启动脚本。请参阅《第 6.3.4 节,“mysqld_multi - 管理多个 MySQL 服务器”》。
有几个程序在 MySQL 安装或升级过程中执行设置操作
此程序在 MySQL 构建/安装过程中使用。它从错误源文件编译错误消息文件。请参阅《第 6.4.1 节,“comp_err - 编译 MySQL 错误消息文件”》。
此程序使您能够提高 MySQL 安装的安全性。请参阅《第 6.4.2 节,“mysql_secure_installation - 提高 MySQL 安装安全性”》。
此程序使用主机系统 zoneinfo 数据库(描述时区的文件集)的内容加载
mysql
数据库中的时区表。请参阅《第 6.4.3 节,“mysql_tzinfo_to_sql - 加载时区表”》。
连接到 MySQL 服务器的 MySQL 客户端程序
用于以交互方式输入 SQL 语句或以批处理模式从文件中执行 SQL 语句的命令行工具。请参阅《第 6.5.1 节,“mysql - MySQL 命令行客户端”》。
执行管理操作的客户端,例如创建或删除数据库、重新加载授权表、将表刷新到磁盘以及重新打开日志文件。mysqladmin 还可以用于从服务器检索版本、进程和状态信息。请参阅《第 6.5.2 节,“mysqladmin - MySQL 服务器管理程序”》。
一个用于检查、修复、分析和优化表的表维护客户端。参见 第 6.5.3 节 “mysqlcheck — 表维护程序”。
一个将 MySQL 数据库以 SQL、文本或 XML 格式转储到文件的客户端。参见 第 6.5.4 节 “mysqldump — 数据库备份程序”。
一个使用
LOAD DATA
将文本文件导入其各自表的客户端。参见 第 6.5.5 节 “mysqlimport — 数据导入程序”。MySQL Shell 是一个用于 MySQL Server 的高级客户端和代码编辑器。参见 MySQL Shell 9.0.0。除了提供的 SQL 功能(类似于 mysql)之外,MySQL Shell 还为 JavaScript 和 Python 提供了脚本功能,并包含用于使用 MySQL 的 API。X DevAPI 使您能够处理关系数据和文档数据,请参见 第 22 章 “将 MySQL 用作文档存储”。AdminAPI 使您能够使用 InnoDB Cluster,请参见 MySQL AdminAPI。
一个显示有关数据库、表、列和索引信息的客户端。参见 第 6.5.6 节 “mysqlshow — 显示数据库、表和列信息”。
一个旨在模拟 MySQL 服务器的客户端负载并报告每个阶段的时间的客户端。它的工作方式就像多个客户端访问服务器一样。参见 第 6.5.7 节 “mysqlslap — 负载模拟客户端”。
MySQL 管理和实用程序
一个
InnoDB
离线文件校验和实用程序。参见 第 6.6.2 节 “innochecksum — InnoDB 文件离线校验和实用程序”。一个显示
MyISAM
表中全文索引信息的实用程序。参见 第 6.6.3 节 “myisam_ftdump — 显示全文索引信息”。一个用于描述、检查、优化和修复
MyISAM
表的实用程序。参见 第 6.6.4 节 “myisamchk — MyISAM 表维护实用程序”。一个处理
MyISAM
日志文件内容的实用程序。参见 第 6.6.5 节 “myisamlog — 显示 MyISAM 日志文件内容”。一个压缩
MyISAM
表以生成较小只读表的实用程序。参见 第 6.6.6 节 “myisampack — 生成压缩的只读 MyISAM 表”。一个实用程序,使您能够将身份验证凭据存储在名为
.mylogin.cnf
的安全、加密的登录路径文件中。参见 第 6.6.7 节 “mysql_config_editor — MySQL 配置实用程序”。一个用于在密钥环组件之间迁移密钥的实用程序。参见 第 6.6.8 节 “mysql_migrate_keyring — 密钥环密钥迁移实用程序”。
一个用于从二进制日志读取语句的实用程序。二进制日志文件中包含的已执行语句日志可用于帮助从崩溃中恢复。参见 第 6.6.9 节 “mysqlbinlog — 用于处理二进制日志文件的实用程序”。
一个用于读取和汇总慢查询日志内容的实用程序。参见 第 6.6.10 节 “mysqldumpslow — 汇总慢查询日志文件”。
MySQL 程序开发实用程序
一个 shell 脚本,用于生成编译 MySQL 程序时所需的选项值。参见 第 6.7.1 节 “mysql_config — 显示编译客户端的选项”。
一个显示选项文件中选项组中存在哪些选项的实用程序。参见 第 6.7.2 节 “my_print_defaults — 显示选项文件中的选项”。
其他实用程序
一个显示系统或 MySQL 错误代码含义的实用程序。参见 第 6.8.1 节 “perror — 显示 MySQL 错误消息信息”。
Oracle 公司还提供 MySQL Workbench GUI 工具,该工具用于管理 MySQL 服务器和数据库、创建、执行和评估查询,以及迁移其他关系数据库管理系统中的模式和数据以供 MySQL 使用。
使用 MySQL 客户端/服务器库与服务器通信的 MySQL 客户端程序使用以下环境变量。
环境变量 | 含义 |
---|---|
MYSQL_UNIX_PORT |
默认的 Unix 套接字文件;用于连接到 localhost |
MYSQL_TCP_PORT |
默认端口号;用于 TCP/IP 连接 |
MYSQL_DEBUG |
调试时的调试跟踪选项 |
TMPDIR |
创建临时表和文件的目录 |
有关 MySQL 程序使用的所有环境变量的完整列表,请参见 第 6.9 节 “环境变量”。