本手册是 MySQL 数据库系统 8.4 版(截至 8.4.0 版本)的参考手册。 MySQL 8.4 各个次要版本之间的差异在正文中以发行版本号 (8.4.x
) 标注。有关许可证信息,请参阅法律声明。
由于 MySQL 8.4 与早期版本之间存在许多功能和其他方面的差异,因此本手册不适用于 MySQL 软件的早期版本。如果您使用的是 MySQL 软件的早期版本,请参阅相应的手册。例如,MySQL 8.0 参考手册涵盖了 MySQL 软件 8.0 错误修复系列的版本。
由于本手册是作为参考手册,因此不提供有关 SQL 或关系数据库概念的一般说明。它也不教你如何使用你的操作系统或命令行解释器。
MySQL 数据库软件处于不断开发中,参考手册也经常更新。最新版本的手册可以在线获取,并可在 https://dev.mysqlserver.cn/doc/ 进行搜索。其他格式也可以在那里找到,包括可下载的 HTML 和 PDF 版本。
MySQL 本身的源代码包含使用 Doxygen 编写的内部文档。生成的 Doxygen 内容可从 https://dev.mysqlserver.cn/doc/index-other.html 获得。也可以使用 第 2.8.10 节 “生成 MySQL Doxygen 文档内容” 中的说明从 MySQL 源代码发行版本地生成此内容。
如果您对使用 MySQL 有任何疑问,请加入 MySQL 社区 Slack。如果您对本手册本身的补充或更正有任何建议,请将其发送至 https://www.mysqlserver.cn/company/contact/。
本手册使用某些排版约定
这种样式的文本
用于 SQL 语句;数据库、表和列名称;程序列表和源代码;以及环境变量。例如:“要重新加载授权表,请使用FLUSH PRIVILEGES
语句。”这种样式的文本
表示您在示例中键入的输入。这种样式的文本 表示可执行程序和脚本的名称,例如 mysql(MySQL 命令行客户端程序)和 mysqld(MySQL 服务器可执行文件)。
这种样式的文本
用于您应该替换为您自己选择的值的变量输入。这种样式的文本 用于强调。
这种样式的文本 用于表标题和传达特别强烈的强调。
这种样式的文本
用于指示影响程序执行方式或提供程序以某种方式运行所需信息的程序选项。 例如:“--host
选项(简写形式-h
)告诉 mysql 客户端程序它应该连接到的 MySQL 服务器的主机名或 IP 地址。”。文件名和目录名写成这样:“全局
my.cnf
文件位于/etc
目录中。”字符序列写成这样:“要指定通配符,请使用 ‘
%
’ 字符。”
当命令或语句带有提示符时,我们使用以下内容
$> type a command here
#> type a command as root here
C:\> type a command here (Windows only)
mysql> type a mysql statement here
命令在您的命令解释器中发出。在 Unix 上,这通常是 sh、csh 或 bash 等程序。在 Windows 上,等效的程序是 command.com 或 cmd.exe,通常在控制台窗口中运行。以 mysql
为前缀的语句在 mysql 命令行客户端中发出。
当您输入示例中显示的命令或语句时,请勿键入示例中显示的提示符。
在某些区域,不同的系统可能会相互区分,以表明命令应该在两个不同的环境中执行。例如,在使用复制时,命令可能以 source
和 replica
为前缀
source> type a mysql statement on the replication source here
replica> type a mysql statement on the replica here
数据库、表和列名必须经常替换到语句中。为了表明需要进行此类替换,本手册使用 db_name
、tbl_name
和 col_name
。例如,您可能会看到如下语句
mysql> SELECT col_name FROM db_name.tbl_name;
这意味着如果您要输入类似的语句,您需要提供您自己的数据库、表和列名,可能像这样
mysql> SELECT author_name FROM biblio_db.author_list;
SQL 关键字不区分大小写,可以用任何字母大小写。本手册使用大写。
在语法描述中,方括号(“[
” 和 “]
”)表示可选的单词或子句。例如,在以下语句中,IF EXISTS
是可选的
DROP TABLE [IF EXISTS] tbl_name
当语法元素包含多个选项时,选项之间用竖线(“|
”)分隔。当可以从一组选项中选择一个成员时,选项列在方括号(“[
” 和 “]
”)内
TRIM([[BOTH | LEADING | TRAILING] [remstr] FROM] str)
当必须从一组选项中选择一个成员时,选项列在大括号(“{
” 和 “}
”)内
{DESCRIBE | DESC} tbl_name [col_name | wild]
省略号(...
)表示省略了语句的一部分,通常是为了提供更复杂语法的简短版本。例如,SELECT ... INTO OUTFILE
是 SELECT
语句形式的简写,该语句在语句的其他部分之后有一个 INTO OUTFILE
子句。
省略号还可以表示语句的前一个语法元素可以重复。在以下示例中,可以给出多个 reset_option
值,第一个值之后的每个值都以逗号开头
RESET reset_option [,reset_option] ...
用于设置 shell 变量的命令使用 Bourne shell 语法显示。例如,设置 CC
环境变量并运行 configure 命令的顺序在 Bourne shell 语法中如下所示
$> CC=gcc ./configure
如果您使用的是 csh 或 tcsh,则必须以稍微不同的方式发出命令
$> setenv CC gcc
$> ./configure
参考手册源文件以 DocBook XML 格式编写。HTML 版本和其他格式是自动生成的,主要使用 DocBook XSL 样式表。有关 DocBook 的信息,请参阅 http://docbook.org/
本手册最初由 David Axmark 和 Michael “Monty” Widenius 编写。它由 MySQL 文档团队维护,该团队由 Edward Gilmore、Stefan Hinz、David Hollis、Philip Olson、Daniel So 和 Jon Stephens 组成。