这是 MySQL 数据库系统版本 8.3 的参考手册,直到 8.3.0 版本发布。MySQL 8.3 的小版本之间的差异将在本文中以版本号(8.3.x
)形式标记。关于许可信息,请参阅 法律声明。
本手册不适用于旧版本的 MySQL 软件,因为 MySQL 8.3 和之前版本之间存在许多功能和其他差异。如果您使用的是早期版本的 MySQL 软件,请参阅适当的手册。例如,MySQL 8.2 参考手册涵盖了 8.2 系列的 MySQL 软件版本。
由于本手册作为参考,不提供一般的 SQL 或关系数据库概念指导,也不教您如何使用操作系统或命令行解释器。
MySQL 数据库软件不断发展,本参考手册也会频繁更新。手册的最新版本可在线搜索,位于 https://dev.mysql.com/doc/。其他格式也可供下载,包括 HTML 和 PDF 版本。
MySQL 源代码中包含使用 Doxygen 编写的内部文档。生成的 Doxygen 内容可从 https://dev.mysql.com/doc/index-other.html 获得。也可以按照 第 2.8.10 节“生成 MySQL Doxygen 文档内容” 中的说明从 MySQL 源代码分布生成该内容。
如果您有关于使用 MySQL 的问题,请加入 MySQL 社区 Slack。如果您对手册本身有建议或更正,请将其发送到 http://www.mysql.com/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 命令的序列如下所示:
$> 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。