MySQL程序概述
MySQL安装中有许多不同的程序,本节将对它们进行简要概述,除了NDB集群程序之外,后面的部分提供了每个程序的更详细描述,每个程序的描述都指示其调用语法及其支持的选项。
大多数MySQL发行版都包含所有这些程序,除了那些特定于平台的程序(例如,服务器启动脚本不用于Windows)。RPM发行版更加专门化,一个RPM用于服务器,另一个RPM用于客户机程序,等等。可能你的发行版不包含所有程序,你需要安装额外的软件包。
每个MySQL程序都有许多不同的选项,大多数程序都提供了--help
选项,你可以使用该选项来获得程序不同选项的描述,例如,尝试mysql --help
。
通过在命令行或选项文件中指定选项,可以覆盖MySQL程序的默认选项值。
MySQL服务器mysqld
是执行MySQL安装中大部分工作的主程序,服务器附带几个相关的脚本,以协助你启动和停止服务器:
-
mysqld
SQL守护进程(即MySQL服务器),要使用客户端程序,
mysqld
必须运行,因为客户端通过连接到服务器来访问数据库。 -
mysqld_safe
服务器启动脚本,
mysqld_safe
尝试启动mysqld
。 -
mysql.server
服务器启动脚本,此脚本用于使用System V风格的运行目录的系统,其中包含针对特定运行级别启动系统服务的脚本,它调用
mysqld_safe
来启动MySQL服务器。 -
mysqld_multi
服务器启动脚本,可以启动或停止安装在系统上的多个服务器。
在MySQL安装或升级过程中几个程序执行安装操作:
-
comp_err
此程序在MySQL构建/安装过程中使用,它从错误源文件编译错误消息文件。
-
mysql_secure_installation
这个程序可以提高MySQL安装的安全性。
-
mysql_ssl_rsa_setup
如果缺少SSL证书和密钥文件以及支持安全连接所需的RSA密钥对文件,该程序将创建这些文件,由
mysql_ssl_rsa_setup
创建的文件可以用于使用SSL或RSA的安全连接。 -
mysql_tzinfo_to_sql
这个程序使用宿主系统
zoneinfo
数据库的内容(描述时区的一组文件)加载mysql
数据库中的时区表。 -
mysql_upgrade
此程序在MySQL升级操作后使用,它用MySQL新版本中所做的任何更改来更新授权表,并检查表的不兼容性,如果需要,还会修复它们。
连接到MySQL服务器的MySQL客户端程序:
-
mysql
命令行工具,用于交互式地输入SQL语句或以批处理模式从文件中执行SQL语句。
-
mysqladmin
执行管理操作的客户端,如创建或删除数据库、重新加载授权表、将表刷新到磁盘并重新打开日志文件,
mysqladmin
还可以用于从服务器检索版本、进程和状态信息。 -
mysqlcheck
一个表维护客户端,用于检查、修复、分析和优化表。
-
mysqldump
将MySQL数据库转储为SQL、文本或XML文件的客户端。
-
mysqlimport
使用
LOAD DATA
将文本文件导入各自表的客户端。 -
mysqlpump
将MySQL数据库转储为SQL文件的客户端。
-
mysqlsh
MySQL Shell是MySQL服务器的高级客户端和代码编辑器,除了提供类似于
mysql
的SQL功能之外,mysql Shell还为JavaScript和Python提供脚本功能,并包含用于使用mysql的API。X DevAPI允许你同时处理关系数据和文档数据,AdminAPI使你能够使用InnoDB集群。 -
mysqlshow
显示数据库、表、列和索引信息的客户端。
-
mysqlslap
用于模拟用于MySQL服务器的客户端负载并报告每个阶段的时间的客户端,它的工作原理就像多个客户端访问服务器一样。
MySQL管理和实用程序:
-
innochecksum
离线InnoDB离线文件校验和实用程序。
-
myisam_ftdump
在MyISAM表中显示全文索引信息的实用程序。
-
myisamchk
用于描述、检查、优化和修复MyISAM表的实用程序。
-
myisamlog
处理MyISAM日志文件内容的实用程序。
-
myisampack
压缩MyISAM表以生成更小的只读表的实用程序。
-
mysql_config_editor
使你能够将身份验证凭据存储在名为
.mylogin.cnf
的安全加密登录路径文件中的实用程序。 -
mysqlbinlog
用于从二进制日志中读取语句的实用程序,二进制日志文件中包含的执行语句日志可用于帮助从崩溃中恢复。
-
mysqldumpslow
用于读取和总结慢查询日志内容的实用程序。
MySQL程序开发工具:
-
mysql_config
在编译MySQL程序时生成所需的选项值的shell脚本。
-
my_print_defaults
显示选项文件的选项组中存在哪些选项的实用程序。
其他使用程序:
-
lz4_decompress
解压使用LZ4压缩创建的
mysqlpump
输出的实用程序。 -
perror
显示系统或MySQL错误代码含义的实用程序。
-
zlib_decompress
解压使用ZLIB压缩创建的
mysqlpump
输出的实用程序。
Oracle Corporation还提供了MySQL Workbench GUI工具,用于管理MySQL服务器和数据库,创建、执行和评估查询,并将模式和数据从其他关系数据库管理系统迁移到MySQL,其他GUI工具包括MySQL Notifier和用于Excel的MySQL。
使用MySQL客户端/服务器库与服务器通信的MySQL客户端程序使用以下环境变量。
环境变量 | 含义 |
---|---|
MYSQL_UNIX_PORT | 默认Unix socket文件,用于连接到localhost |
MYSQL_TCP_PORT | 默认端口号,用于TCP/IP连接 |
MYSQL_PWD | 默认密码 |
MYSQL_DEBUG | 调试时的调试跟踪选项 |
TMPDIR | 创建临时表和文件的目录 |
使用MYSQL_PWD
是不安全的。