这是 MySQL 数据库系统 9.0 版本的参考手册,直至 9.0.0 版本。MySQL 9.0 次要版本之间的差异在本文本中用版本号 (9.0.x
) 进行说明。有关许可信息,请参阅法律声明。
由于 MySQL 9.0 与以前版本之间存在许多功能和其他差异,因此本手册不适合用于更旧版本的 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 服务器可执行文件)。
此样式的文本
用于需要您自行选择值的变量输入。此样式的文本 用于强调。
此样式的文本 用于表格标题和传达特别强的强调。
此样式的文本
用于指示影响程序执行方式的程序选项,或提供程序以特定方式运行所需信息的选项。示例:“The--host
option (short form-h
) tells the mysql client program the hostname or IP address of the MySQL server that it should connect to”.文件名和目录名按以下方式编写:“全局
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 组成。