MySQL 5.6参考手册

包括MySQL NDB集群7.3-7.4参考指南

摘要

这是MySQL™参考手册。它记录了MySQL 5.6到5.6.51,以及基于版本7.3和7.4的NDB集群版本NDB分别从5.6.51-ndb-7.3.33和5.6.51-ndb-7.4.32执行。它可能包括尚未发布的MySQL10bet官方网站版本的特性文档。有关已发布版本的信息,请参见MySQL 5.6版本说明

请注意。MySQL 5.6.51是MySQL 5.6系列的最新版本。

MySQL 5.6特性。本手册描述了MySQL 5.6版本中没有包含的特性;这些特性可能不包含在授权给你的MySQL 5.6版本中。如果您对MySQL 5.6版本中包含的特性有任何疑问,请参阅MySQL 5.6许可协议或与Oracle销售代表联系。

有关每个版本中详细更改的注释,请参阅MySQL 5.6版本说明

有关法律信息,包括许可信息,请参阅前言及法律公告

有关使用MySQL的帮助,请访问MySQL论坛,在那里您可以与其他MySQL用户讨论您的问题。

文档生成日期:2021年4月23日(修订版本:69469)


表的内容

前言及法律公告
1一般信息
1.1关于本手册
1.2 MySQL数据库管理系统概述
1.2.1什么是MySQL?
1.2.2 MySQL的主要特性
1.2.3 MySQL历史
1.3 MySQL 5.6的新功能
1.4 MySQL 5.6中服务器和状态变量及选项的增加、弃用或移除
1.5 MySQL信息源
1.6如何报告bug或问题
1.7 MySQL遵循的标准
1.7.1 MySQL对标准SQL的扩展
1.7.2 MySQL与标准SQL的区别
1.7.3 MySQL如何处理约束
1.8学分
1.8.1 MySQL的贡献者
1.8.2文档管理员和翻译人员
1.8.3支持MySQL的包
1.8.4创建MySQL的工具
1.8.5 MySQL的支持者
2安装和升级MySQL
2.1总体安装指导
2.1.1支持的平台上
2.1.2安装MySQL的版本和发行版
2.1.3如何获取MySQL
2.1.4使用MD5 / GnuPG校验包完整性
2.1.5安装布局
2.1.6特定于编译器的编译特性
2.2使用通用二进制文件在Unix/Linux上安装MySQL
2.3 Windows系统下安装MySQL
2.3.1 Windows下MySQL安装布局
2.3.2选择安装包
2.3.3 MySQL Windows安装程序
2.3.4在Microsoft Windows系统下安装MySQLnoinstallZIP归档
2.3.5安装Microsoft Windows MySQL Server异常处理
2.3.6 Windows后安装步骤
2.3.7 Windows平台限制
2.4在OS X系统下安装MySQL
2.4.1 OS X安装MySQL的一般注意事项
2.4.2在OS X上使用本地包安装MySQL
2.4.3安装MySQL启动守护进程
2.4.4安装和使用MySQL首选项窗口
2.5 Linux下安装MySQL
2.5.1在Linux环境下使用MySQL Yum Repository安装MySQL
2.5.2使用MySQL Yum Repository替换MySQL的第三方发行版
2.5.3使用MySQL APT存储库在Linux环境下安装MySQL
2.5.4使用MySQL SLES存储库在Linux环境下安装MySQL
2.5.5使用Oracle的RPM包在Linux上安装MySQL
2.5.6使用Oracle的Debian包在Linux上安装MySQL
2.5.7从本地软件库在Linux上安装MySQL
2.5.8在Linux下使用Docker部署MySQL
2.5.9使用Juju在Linux上安装MySQL
2.6使用Unbreakable Linux Network (ULN)安装MySQL
2.7在Solaris上安装MySQL
2.7.1通过Solaris PKG方式安装MySQL
2.8在FreeBSD上安装MySQL
2.9从Source安装MySQL
2.9.1安装源方式
2.9.2源安装
2.9.3 MySQL源码安装布局
2.9.4使用标准版本安装MySQL
2.9.5以开发源代码树方式安装MySQL
2.9.6配置SSL库支持
2.9.7 MySQL源配置选项
2.9.8 MySQL编译问题处理
2.9.9 MySQL配置和第三方工具
2.10安装后设置和测试
2.10.1初始化数据目录
2.10.2启动服务器
2.10.3测试服务器
2.10.4 MySQL初始帐户安全
2.10.5自动启动和停止MySQL
MySQL 2.11升级
2.11.1从这里开始
2.11.2升级路径
2.11.3 MySQL 5.6的变化
2.11.4升级Unix/Linux下的MySQL二进制或包安装
2.11.5使用MySQL Yum Repository升级MySQL
2.11.6使用MySQL APT库升级MySQL
2.11.7使用MySQL SLES存储库升级MySQL
2.11.8 Windows下升级MySQL
2.11.9升级故障排除
2.11.10重建或修复表或索引
2.11.11拷贝MySQL数据库到其他机器
MySQL 2.12降级
2.12.1从这里开始
2.12.2降级路径
2.12.3降级的笔记
2.12.4降级Unix/Linux上基于二进制和包的安装
2.12.5降级故障排除
2.13 Perl安装说明
2.13.1在Unix上安装Perl
2.13.2 Windows环境下安装ActiveState Perl
2.13.3 Perl DBI/DBD接口使用问题
3教程
3.1连接和断开服务器
3.2进入查询
3.3创建和使用数据库
3.3.1创建并选择数据库
3.3.2新建表
3.3.3表加载
3.3.4从表中检索信息
3.4获取数据库和表信息
3.5批量使用mysql
3.6常用查询示例
3.6.1列的最大值
3.6.2某列的最大值所在行
3.6.3每组最大列数
3.6.4某列的组最大值所在行
3.6.5使用自定义变量
3.6.6使用外键
3.6.7双键搜索
3.6.8日均访问量计算
3.6.9使用AUTO_INCREMENT
3.7在Apache中使用MySQL
4 MySQL程序
4.1 MySQL程序概述
4.2使用MySQL程序
4.2.1调用MySQL程序
4.2.2指定程序选项
4.2.3连接服务器命令选项
4.2.4使用命令选项连接MySQL服务器
4.2.5连接传输协议
4.2.6连接压缩控制
4.2.7设置环境变量
4.3服务器和服务器启动程序
4.3.1 mysqld—MySQL服务器
4.3.2 mysqld_safe - MySQL服务器启动脚本
4.3.3 mysql。MySQL服务器启动脚本
4.3.4 mysqld_multi -管理多个MySQL服务器
4.4 Installation-Related项目
4.4.1 comp_err -编译MySQL错误消息文件
4.4.2 mysqlbug -生成Bug报告
4.4.3 mysql_install_db—初始化MySQL数据目录
4.4.4 mysql_plugin—配置MySQL服务器插件
4.4.5 mysql_secure_installation—提高MySQL安装安全性
4.4.6 mysql_tzinfo_to_sql -加载时区表
4.4.7 mysql_upgrade—检查和升级MySQL表
4.5客户端程序
4.5.1 mysql—mysql命令行客户端
4.5.2 mysqladmin - MySQL服务器管理程序
4.5.3 mysqlcheck—表维护程序
4.5.4 mysqldump—数据库备份程序
4.5.5 mysqlimport—数据导入程序
4.5.6 mysqlshow -显示数据库、表和列信息
4.5.7 mysqlslap—加载仿真客户端
4.6管理和公用程序
4.6.1 innochecksum -离线InnoDB文件校验和实用程序
4.6.2 myisam_ftdump -显示全文索引信息
4.6.3 myisamchk - MyISAM表维护实用程序
4.6.4 myisamlog -查看MyISAM日志文件内容
4.6.5 myisampack—生成压缩的、只读的MyISAM表
4.6.6 mysql_config_editor—MySQL配置实用程序
4.6.7 mysqlaccess -检查访问权限的客户端
4.6.8 mysqlbinlog -二进制日志文件处理工具
4.6.9 mysqldumpslow -总结慢速查询日志文件
4.6.10数据库备份程序mysqlhotcopy
4.6.11 mysql_convert_table_format—将表转换为使用指定的存储引擎
4.6.12 mysql_find_rows -从文件中提取SQL语句
4.6.13 mysql_fix_extensions -规范化表文件扩展名
4.6.14 mysql_setpermission -在授权表中交互设置权限
4.6.15 mysql_waitpid - Kill进程并等待其终止
4.6.16 mysql_zap -杀死符合模式的进程
4.7程序开发实用工具
4.7.1 msql2mysql -将mSQL程序转换为MySQL使用
4.7.2 mysql_config -显示编译客户端的选项
4.7.3 my_print_defaults -显示选项文件中的选项
4.7.4 resolve_stack_dump—将数字堆栈跟踪转储解析为符号
4.8其他项目
4.8.1 perror - Display MySQL Error Message Information
4.8.2 replace—字符串替换实用程序
4.8.3 resolveip—将主机名解析为IP地址或反之亦然
4.9环境变量
4.10 MySQL中的Unix信号处理
MySQL服务器管理
5.1 MySQL服务器
5.1.1配置服务器
5.1.2服务器配置默认值
5.1.3服务器选项、系统变量和状态变量参考
5.1.4服务器系统变量参考
5.1.5服务器状态变量参考
5.1.6服务器命令选项
5.1.7服务器系统变量
5.1.8使用系统变量
5.1.9服务器状态变量
5.1.10 Server SQL模式
5.1.11连接管理
5.1.12 IPv6支持
5.1.13 MySQL服务器时区支持
5.1.14服务器端帮助支持
5.1.15服务器关机过程
5.2 MySQL数据目录
5.3 mysql系统数据库
5.4 MySQL Server日志
5.4.1选择常规查询日志和慢查询日志输出目的地
5.4.2错误日志
5.4.3通用查询日志
5.4.4二进制日志
5.4.5慢速查询日志
5.4.6 DDL日志
5.4.7服务器日志维护
5.5 MySQL服务器插件
5.5.1安装和卸载插件
5.5.2获取服务器插件信息
5.5.3 MySQL企业线程池
5.5.4 MySQL插件服务
5.6 MySQL Server自定义函数
5.6.1安装和卸载自定义函数
5.6.2获取自定义函数信息
5.7在一台机器上运行多个MySQL实例
5.7.1建立多个数据目录
5.7.2在Windows环境下运行多个MySQL实例
5.7.3在Unix上运行多个MySQL实例
5.7.4多服务器环境中使用客户端程序
5.8调试MySQL
5.8.1调试MySQL服务器
5.8.2调试MySQL客户端
5.8.3 DBUG包
5.8.4使用DTrace跟踪mysqld
6安全
6.1一般安全问题
但是安全指导方针
6.1.2密码安全
6.1.3提高MySQL的安全性
6.1.4安全相关的mysqld选项和变量
6.1.5如何以普通用户运行MySQL
6.1.6 LOAD DATA LOCAL的安全注意事项
6.1.7客户端编程安全指南
6.2访问控制与帐户管理
6.2.1帐户用户名和密码
6.2.2 MySQL提供的特权
6.2.3格兰特表
6.2.4指定帐户名
6.2.5访问控制,第一阶段:连接验证
6.2.6访问控制,第二阶段:请求验证
6.2.7增加帐户、分配权限、删除帐户
6.2.8权限变更何时生效
6.2.9分配帐户密码
6.2.10密码过期服务器处理
6.2.11可插入身份验证
6.2.12代理用户
6.2.13设置帐户资源限制
6.2.14 MySQL连接问题处理
6.2.15基于sql的帐户活动审计
6.3使用加密连接
6.3.1配置MySQL使用加密连接
6.3.2加密连接TLS协议和密码
6.3.3制作SSL和RSA证书和密钥
6.3.4依赖于SSL库的能力
6.3.5使用SSH在Windows远程连接MySQL
6.4安全插件
6.4.1身份验证插件
6.4.2连接控制插件
6.4.3密码验证插件
6.4.4 MySQL企业审计
6.4.5 MySQL企业防火墙
6.5 MySQL企业加密
6.5.1 MySQL企业加密安装
6.5.2 MySQL企业加密使用及举例
6.5.3 MySQL企业加密自定义函数参考
6.5.4 MySQL企业加密自定义功能介绍
6.6 SELinux
6.6.1检查SELinux是否已启用
6.6.2修改SELinux模式
6.6.3 MySQL Server SELinux策略
6.6.4 SELinux文件背景信息
6.6.5 SELinux TCP端口背景信息
6.6.6故障排除SELinux
7备份与恢复
7.1备份与恢复类型
7.2数据库备份方式
7.3示例备份与恢复策略
7.3.1建立备份策略
7.3.2使用备份进行恢复
7.3.3备份策略概述
7.4使用mysqldump进行备份
7.4.1使用mysqldump转储SQL格式数据
7.4.2重新加载sql格式备份
7.4.3使用mysqldump转储分隔符格式的数据
7.4.4重新加载分隔文本格式备份
7.4.5 mysqldump技巧
7.5通过二进制日志进行时间点(增量)恢复
7.5.1通过事件时间点恢复
7.5.2通过事件位置进行时间点恢复
7.6 MyISAM表维护和崩溃恢复
7.6.1使用myisamchk进行崩溃恢复
7.6.2如何检查MyISAM表是否有错误
7.6.3如何修复MyISAM表
7.6.4 MyISAM表优化
7.6.5建立MyISAM表维护计划
8优化
8.1优化概述
8.2优化SQL语句
8.2.1优化SELECT语句
8.2.2优化子查询和派生表
8.2.3优化INFORMATION_SCHEMA查询
8.2.4优化数据变更语句
8.2.5优化数据库权限
8.2.6其他优化提示
8.3优化与指标
8.3.1 MySQL如何使用索引
8.3.2主键优化
8.3.3外键优化
8.3.4列索引
8.3.5多个列的索引
8.3.6检查索引使用情况
8.3.7 InnoDB和MyISAM索引统计
8.3.8 B-Tree与Hash索引的比较
8.3.9索引扩展的使用
8.3.10从TIMESTAMP列的索引查找
8.4优化数据库结构
8.4.1优化数据大小
8.4.2优化MySQL数据类型
8.4.3多表优化
8.4.4 MySQL内部临时表的使用
8.4.5数据库和表数量限制
8.4.6表大小限制
8.4.7表列数和行大小限制
8.5 InnoDB表优化
8.5.1优化InnoDB表存储布局
8.5.2优化InnoDB事务管理
8.5.3优化InnoDB只读事务
8.5.4优化InnoDB重做日志
8.5.5 InnoDB表的批量数据加载
8.5.6优化InnoDB查询
8.5.7优化InnoDB DDL操作
8.5.8优化InnoDB磁盘I/O
8.5.9优化InnoDB配置变量
8.5.10针对多表系统优化InnoDB
8.6优化MyISAM表
8.6.1优化MyISAM查询
8.6.2 MyISAM表的批量数据加载
8.6.3优化REPAIR TABLE语句
8.7 MEMORY表优化
8.8了解查询执行计划
8.8.1使用EXPLAIN优化查询
8.8.2 EXPLAIN输出格式
8.8.3扩展EXPLAIN输出格式
8.8.4估计查询性能
8.9控制查询优化器
8.9.1控制查询计划的评估
8.9.2可切换的优化
8.9.3指数暗示
8.10缓冲和缓存
8.10.1 InnoDB缓冲池优化
8.10.2 MyISAM密钥缓存
8.10.3 MySQL查询缓存
8.10.4准备语句和存储程序的缓存
8.11优化锁定操作
8.11.1内部锁定方法
8.11.2表锁定问题
8.11.3并发插入
8.11.4元数据锁定
8.11.5外部锁
8.12优化MySQL服务器
8.12.1系统因素
8.12.2优化磁盘I/O
8.12.3使用符号链接
8.12.4优化内存使用
8.13性能测量(标杆测试)
8.13.1测量表达式和函数的速度
8.13.2 MySQL基准测试套件
8.13.3使用自己的基准测试
8.13.4使用performance_schema测量性能
8.14查看服务器线程(进程)信息
8.14.1访问进程列表
8.14.2线程命令值
8.14.3一般线程状态
8.14.4延迟插入线程状态
8.14.5查询Cache线程状态
8.14.6复制源线程状态
8.14.7复制副本I/O线程状态
8.14.8复制复制SQL线程状态
8.14.9复制副本连接线程状态
8.14.10 NDB集群线程状态
8.14.11事件调度器线程状态
9语言结构
9.1文字值
9.1.1字符串
9.1.2数字字面值
9.1.3日期和时间字面量
9.1.4十六进制字符
9.1.5比特值的文字
9.1.6布尔常量
9.1.7 NULL值
9.2架构对象名称
9.2.1标识符长度限制
9.2.2标识符限定符
9.2.3标识符区分大小写
9.2.4标识符到文件名的映射
9.2.5函数名解析与解析
9.3关键字和保留词
9.4用户定义的变量
9.5表达式
9.6评论
10字符集,排序规则,Unicode
10.1一般字符集和排序规则
10.2 MySQL中的字符集和排序规则
10.2.1字符集集
10.2.2元数据UTF-8
10.3指定字符集和排序规则
10.3.1排序规则命名约定
10.3.2服务器字符集和排序规则
10.3.3数据库字符集和排序规则
10.3.4表字符集和排序规则
10.3.5列字符集和排序规则
10.3.6字符串文字字符集和排序规则
10.3.7国家字符集
10.3.8字符集介绍器
10.3.9字符集和排序规则赋值示例
10.3.10其他dbms兼容性
10.4连接字符集和排序规则
10.5配置应用字符集和排序规则
10.6错误消息字符集
10.7列字符集转换
10.8排序问题
10.8.1在SQL语句中使用COLLATE
10.8.2 COLLATE子句优先级
10.8.3字符集和排序规则兼容性
10.8.4表达式中的排序强制力
10.8.5 binary Collation与_bin Collations的比较
10.8.6排序规则的作用举例
10.8.7在INFORMATION_SCHEMA搜索中使用Collation
10.9 Unicode支持
10.9.1 utf8mb4字符集(4字节UTF-8 Unicode编码)
10.9.2 utf8mb3字符集(3字节UTF-8 Unicode编码)
10.9.3 utf8字符集(utf8mb3的别名)
10.9.4 ucs2字符集(UCS-2 Unicode编码)
10.9.5 utf16字符集(UTF-16 Unicode编码)
10.9.6 utf16le字符集(UTF-16LE Unicode编码)
10.9.7 utf32字符集(UTF-32 Unicode编码)
10.9.8 3字节与4字节Unicode字符集之间的转换
10.10支持的字符集和排序规则
10.10.1 Unicode字符集
10.10.2西欧字符集
10.10.3中欧字符集
10.10.4南欧和中东字符集
10.10.5波罗的海字符集
10.10.6西里尔字母字符集
10.10.7亚洲字符集
10.10.8二进制字符集
10.11字符集限制
10.12设置错误提示语言
10.13添加字符集
10.13.1字符定义数组
10.13.2对复杂字符集的字符串排序支持
10.13.3复杂字符集的多字节字符支持
10.14向字符集中添加排序规则
10.14.1排序规则的实现类型
10.14.2选择排序规则ID
10.14.3向8位字符集中添加简单排序规则
10.14.4向Unicode字符集中添加UCA排序规则
10.15字符集配置
10.16 MySQL服务器地区支持
11个数据类型
11.1数值型数据类型
11.1.1数值型数据类型语法
11.1.2整数类型(精确值)—Integer、INT、SMALLINT、TINYINT、MEDIUMINT、BIGINT
11.1.3定点类型(精确值)- DECIMAL, NUMERIC
11.1.4浮点类型(近似值)——FLOAT, DOUBLE
11.1.5位值类型-位
11.1.6数值类型属性
11.1.7超范围及溢出处理
11.2日期和时间数据类型
11.2.1日期和时间数据类型语法
11.2.2 DATE、DATETIME和TIMESTAMP类型
11.2.3 TIME类型
11.2.4 YEAR类型
11.2.5 2位年份(2)限制和向4位年份迁移
11.2.6 TIMESTAMP和DATETIME的自动初始化和更新
11.2.7时间值中的小数秒
11.2.8日期和时间类型的转换
11.2.9日期中的2位数年份
11.3字符串数据类型
11.3.1字符串数据类型语法
11.3.2 CHAR和VARCHAR类型
11.3.3 BINARY和VARBINARY类型
11.3.4 BLOB和TEXT类型
11.3.5 ENUM类型
11.3.6 SET类型
11.4空间数据类型
11.4.1空间数据类型
11.4.2 OpenGIS几何模型
11.4.3支持的空间数据格式
11.4.4创建空间列
11.4.5填充空间列
11.4.6获取空间数据
11.4.7优化空间分析
11.4.8创建空间索引
11.4.9使用空间索引
11.5数据类型默认值
11.6数据类型存储要求
11.7选择正确的列类型
11.8如何使用其他数据库引擎的数据类型
12函数与算子
12.1 SQL函数和操作符参考
12.2自定义函数参考
12.3表达式求值中的类型转换
12.4操作人员
12.4.1运算符优先级
12.4.2比较函数和操作符
12.4.3逻辑运算符
12.4.4赋值操作符
12.5流量控制功能
12.6数值函数和运算符
12.6.1算术运算符
12.6.2数学函数
12.7日期和时间函数
12.8字符串函数和操作符
12.8.1字符串比较函数和操作符
12.8.2正则表达式
12.8.3函数结果的字符集和排序
12.9 MySQL使用的是什么日历
12.10全文搜索功能
12.10.1自然语言全文搜索
12.10.2布尔型全文搜索
12.10.3带扩展查询的全文搜索
12.10.4全文Stopwords
12.10.5全文的限制
12.10.6优化MySQL全文搜索
12.10.7为全文索引添加自定义排序规则
12.11强制转换函数和操作符
12.12 XML函数
12.13位函数和运算符
12.14加密和压缩功能
12.15锁定功能
12.16信息功能
12.17空间分析功能
12.17.1空间功能参考
12.17.2空间函数的参数处理
12.17.3从WKT值创建几何值的函数
12.17.4从WKB值创建几何值的函数
12.17.5创建几何值的mysql特定函数
12.17.6几何格式转换函数
12.17.7几何属性函数
12.17.8空间算子函数
12.17.9测试几何对象之间空间关系的函数
12.18全局事务id使用的函数
12.19聚合函数
12.19.1聚合功能介绍
12.19.2 GROUP BY修饰符
12.19.3 MySQL对GROUP BY的处理
12.20杂项功能
12.21精确数学
12.21.1数值的类型
12.21.2 DECIMAL数据类型特征
12.21.3表达式处理
12.21.4舍入行为
12.21.5精密数学例题
13个SQL语句
13.1数据定义语句
13.1.1 ALTER DATABASE语句
13.1.2 ALTER EVENT语句
13.1.3 ALTER FUNCTION语句
13.1.4 ALTER LOGFILE GROUP语句
13.1.5 ALTER PROCEDURE语句
13.1.6 ALTER SERVER语句
13.1.7 ALTER TABLE语句
13.1.8 ALTER TABLESPACE语句
13.1.9 ALTER VIEW语句
13.1.10 CREATE DATABASE语句
13.1.11 CREATE EVENT语句
13.1.12 CREATE FUNCTION语句
13.1.13 CREATE INDEX语句
13.1.14 CREATE LOGFILE GROUP语句
13.1.15 CREATE PROCEDURE和CREATE FUNCTION语句
13.1.16 CREATE SERVER语句
13.1.17 CREATE TABLE语句
13.1.18 CREATE TABLESPACE语句
13.1.19 CREATE TRIGGER语句
13.1.20 CREATE VIEW语句
13.1.21 DROP DATABASE语句
13.1.22 DROP EVENT语句
13.1.23 DROP函数语句
13.1.24 DROP INDEX语句
13.1.25 DROP LOGFILE GROUP语句
13.1.26 DROP PROCEDURE和DROP FUNCTION语句
13.1.27 DROP SERVER语句
13.1.28 DROP TABLE语句
13.1.29 DROP TABLESPACE语句
13.1.30 DROP TRIGGER语句
13.1.31 DROP VIEW语句
13.1.32 RENAME TABLE语句
13.1.33 TRUNCATE TABLE语句
13.2数据操作语句
13.2.1调用语句
13.2.2 DELETE语句
13.2.3循环语句
13.2.4处理程序声明
13.2.5 INSERT语句
13.2.6 LOAD DATA语句
13.2.7 LOAD XML语句
13.2.8替换语句
13.2.9 SELECT语句
13.2.10子查询
13.2.11 UPDATE语句
13.3事务语句和锁定语句
13.3.1 START TRANSACTION、COMMIT和ROLLBACK语句
13.3.2不可回滚语句
13.3.3导致隐式提交的语句
13.3.4保存点、回滚到保存点和释放保存点语句
13.3.5 LOCK TABLES和UNLOCK TABLES语句
13.3.6 SET TRANSACTION语句
13.3.7 XA事务
13.4复制语句
13.4.1复制源服务器控制SQL语句
13.4.2复制服务器控制SQL语句
13.5准备好的语句
13.5.1准备语句
13.5.2执行语句
13.5.3 DEALLOCATE PREPARE语句
13.6复合语句
13.6.1开始……复合语句结束
13.6.2声明标签
13.6.3声明语句
13.6.4存储程序中的变量
13.6.5流量控制语句
13.6.6游标
13.6.7条件处理
13.7数据库管理语句
13.7.1帐户管理报表
13.7.2表维护声明
13.7.3插件和用户自定义函数语句
13.7.4设置语句
13.7.5显示语句
13.7.6其他管理声明
13.8实用程序语句
13.8.1描述语句
13.8.2 EXPLAIN语句
13.8.3帮助声明
13.8.4使用声明
14 InnoDB存储引擎
14.1 InnoDB简介
14.1.1使用InnoDB表的好处
14.1.2 InnoDB表的最佳实践
14.1.3检查InnoDB的可用性
14.1.4使用InnoDB进行测试和基准测试
14.1.5关闭InnoDB
14.2 InnoDB和ACID模型
14.3 InnoDB多版本的
14.4 InnoDB架构
14.5 InnoDB内存结构
14.5.1缓冲池
14.5.2改变缓冲区
14.5.3自适应哈希索引
14.5.4日志缓冲区
14.6 InnoDB盘上结构
14.6.1表
14.6.2索引
14.6.3表空间
14.6.4 InnoDB数据字典
14.6.5 Doublewrite缓冲
14.6.6重做日志
14.6.7 Undo日志
14.7 InnoDB锁和事务模型
14.7.1 InnoDB锁定
14.7.2 InnoDB事务模型
14.7.3 InnoDB中不同SQL语句设置的锁
14.7.4幻象行
14.7.5 InnoDB中的死锁
14.8 InnoDB配置
14.8.1 InnoDB启动配置
14.8.2配置InnoDB只读操作
14.8.3 InnoDB缓冲池配置
14.8.4配置InnoDB内存分配器
14.8.5配置InnoDB线程并发性
14.8.6配置InnoDB后台I/O线程数
14.8.7 Linux下使用异步I/O
14.8.8配置InnoDB I/O容量
14.8.9配置旋转锁轮询
14.8.10清洗配置
14.8.11配置InnoDB优化器统计信息
14.8.12配置索引页合并阈值
14.9 InnoDB表压缩
14.9.1表压缩概述
14.9.2使能表压缩功能
14.9.3 InnoDB表压缩调优
14.9.4 InnoDB表运行时压缩情况监控
14.9.5 InnoDB表的压缩原理
14.9.6 OLTP工作负载压缩
14.9.7 SQL压缩语法警告和错误
14.10 InnoDB文件格式管理
14.10.1启用文件格式
14.10.2验证文件格式兼容性
14.10.3识别使用的文件格式
14.10.4修改文件格式
14.11 InnoDB行格式
14.12 InnoDB磁盘I/O和文件空间管理
14.12.1 InnoDB磁盘I/O
14.12.2文件空间管理
14.12.3 InnoDB检查点
14.12.4表碎片整理
14.12.5使用TRUNCATE TABLE回收磁盘空间
14.13 InnoDB和在线DDL
14.13.1 DDL在线操作
14.13.2在线DDL性能和并发性
14.13.3在线DDL空间要求
14.13.4使用在线DDL简化DDL语句
14.13.5 DDL在线失败情况
14.13.6在线DDL限制
14.14 InnoDB启动选项和系统变量
14.15 InnoDB信息模式表
14.15.1 InnoDB关于压缩的信息表
14.15.2 InnoDB INFORMATION_SCHEMA事务和锁定信息
14.15.3 InnoDB信息模式系统表
14.15.4 InnoDB INFORMATION_SCHEMA全文索引表
14.15.5 InnoDB信息模式缓冲池表
14.15.6 InnoDB信息模式指标表
14.16 InnoDB与MySQL性能模式集成
14.16.1使用性能模式监视InnoDB互斥锁等待
14.17 InnoDB监视器
14.17.1 InnoDB Monitor类型
14.17.2启用InnoDB监控器
14.17.3 InnoDB标准监控和锁监控输出
14.17.4 InnoDB表空间监控器输出
14.17.5 InnoDB表监视器输出
14.18 InnoDB备份与恢复
14.18.1 InnoDB备份
14.18.2 InnoDB复苏
14.19 InnoDB和MySQL复制
14.20 InnoDB memcached插件
14.20.1 InnoDB memcached插件的优点
14.20.2 InnoDB memcached架构
14.20.3安装InnoDB memcached插件
14.20.4 InnoDB memcached插件的安全注意事项
14.20.5为InnoDB memcached Plugin编写应用程序
14.20.6 InnoDB memcached插件和复制
14.20.7 InnoDB memcached插件内部代码
14.20.8 InnoDB memcached插件故障处理
14.21 InnoDB故障排除
14.21.1 InnoDB I/O故障处理
14.21.2强制恢复InnoDB
14.21.3 InnoDB数据字典故障处理
14.21.4 InnoDB错误处理
14.22 InnoDB的限制
14.23 InnoDB约束与限制
15可选存储引擎
15.1配置存储引擎
15.2 MyISAM存储引擎
15.2.1 MyISAM启动选项
15.2.2密钥空间要求
15.2.3 MyISAM表存储格式
15.2.4 MyISAM表问题
15.3内存存储引擎
15.4 CSV存储引擎
15.4.1修复和检查CSV表
15.4.2 CSV局限性
15.5 ARCHIVE存储引擎
15.6黑洞存储引擎
15.7 MERGE存储引擎
15.7.1 MERGE表优缺点
15.7.2 MERGE表问题
15.8 FEDERATED存储引擎
15.8.1 FEDERATED存储引擎概述
15.8.2如何创建FEDERATED表
15.8.3 FEDERATED存储引擎笔记和技巧
15.8.4 FEDERATED存储引擎资源
15.9示例存储引擎
15.10其他存储引擎
15.11 MySQL存储引擎架构概述
15.11.1可插拔存储引擎架构
15.11.2数据库公共服务器层
16高可用性和可扩展性
16.1使用ZFS复制功能
16.1.1使用ZFS进行文件系统复制
16.1.2配置MySQL for ZFS Replication
16.1.3使用ZFS处理MySQL恢复
16.2使用MySQL withmemcached
16.2.1安装memcached
16.2.2使用memcached
16.2.3开发一个memcached应用程序
16.2.4得到memcached统计数据
16.2.5memcached常见问题解答
17个复制
17.1复制配置
17.1.1如何建立复制
17.1.2复制格式
17.1.3使用全局事务标识符进行复制
17.1.4复制和二进制日志选项和变量
17.1.5常见复制管理任务
17.2复制实现
17.2.1复制线程
17.2.2中继日志和复制元数据存储库
17.2.3服务器如何评估复制过滤规则
17.3复制解决方案
17.3.1使用复制备份
17.3.2副本服务器异常停止处理
17.3.3跨源复制和复制存储引擎使用复制
17.3.4使用复制扩展功能
17.3.5将不同的数据库复制到不同的副本
17.3.6提高复制性能
17.3.7故障切换过程中切换源
17.3.8建立使用加密连接的复制
17.3.9 Semisynchronous复制
17.3.10延迟复制
17.4复制注意事项和提示
17.4.1复制特性和问题
17.4.2 MySQL版本间复制兼容性
17.4.3升级复制设置
17.4.4故障排除复制
17.4.5如何报告复制bug或问题
18 MySQL NDB集群7.3和NDB集群7.4
18.1 NDB集群概述
18.1.1 NDB集群核心概念
18.1.2 NDB集群节点、节点组、分片副本及分区
18.1.3 NDB集群硬件、软件及组网要求
18.1.4 MySQL NDB集群更新说明
18.1.5 NDB:添加、弃用和删除选项、变量和参数
18.1.6 MySQL服务器使用InnoDB与NDB集群的比较
18.1.7 NDB集群的已知局限性
18.2安装NDB集群
18.2.1 Linux系统下安装NDB集群
18.2.2 Windows下安装NDB集群
18.2.3 NDB集群初始配置
18.2.4 NDB集群初始启动
18.2.5包含表和数据的NDB集群举例
18.2.6 NDB集群安全关闭和重启
18.2.7升级和降级新db集群
18.2.8 NDB集群自动安装工具(已不支持)
18.3 NDB集群配置
18.3.1 NDB集群快速测试设置
18.3.2 NDB集群配置参数、选项及变量一览表
18.3.3 NDB集群配置文件
18.3.4使用NDB集群高速对接
18.4 NDB集群程序
18.4.1 ndbd—NDB集群数据节点守护进程
18.4.2 ndbinfo_select_all—选择“From ndbinfo Tables”
18.4.3 ndbmtd - NDB集群数据节点守护进程(多线程)
18.4.4 ndb_mgmd NDB集群管理服务器守护进程
18.4.5 ndb_mgm—NDB集群管理客户端
18.4.6 ndb_blob_tool—检查和修复NDB集群表的BLOB和TEXT列
18.4.7 ndb_config—提取NDB集群配置信息
18.4.8 ndb_cpcd—NDB开发自动化测试
18.4.9 ndb_delete_all—删除NDB表的所有行
18.4.10 ndb_desc描述NDB表
18.4.11 ndb_drop_index—从NDB表中删除索引
18.4.12 ndb_drop_table—删除NDB表
18.4.13 ndb_error_reporter - NDB错误报告实用程序
18.4.14 ndb_index_stat - NDB索引统计实用程序
18.4.15 ndb_move_data - NDB数据复制实用程序
18.4.16 ndb_print_backup_file打印NDB备份文件内容
18.4.17 ndb_print_file打印NDB盘数据文件内容
18.4.18 ndb_print_frag_file打印NDB分片列表文件内容
18.4.19 ndb_print_schema_file打印NDB架构文件内容
18.4.20 ndb_print_sys_file打印NDB系统文件内容
18.4.21 ndb_redo_log_reader—查看并打印集群重做日志内容
18.4.22 ndb_restore—恢复NDB集群备份
18.4.23 ndb_select_all从NDB表中打印行
18.4.24 ndb_select_count—打印NDB表的行数
18.4.25 ndb_setup.py -为NDB集群启动基于浏览器的自动安装程序(已弃用)
18.4.26 ndb_show_tables—显示NDB表列表
18.4.27 ndb_size.pl—NDBCLUSTER大小要求估计器
18.4.28 ndb_waiter—等待NDB集群到达指定状态
18.5新db集群管理
18.5.1 NDB集群管理客户端命令
18.5.2 NDB集群日志消息
18.5.3 NDB集群事件报表
18.5.4 NDB集群启动阶段一览表
18.5.5 NDB集群滚动重启
18.5.6 NDB集群单用户模式
18.5.7在线添加NDB集群数据节点
18.5.8 NDB集群在线备份
18.5.9 NDB集群MySQL服务器使用情况
18.5.10 NDB集群磁盘数据表
18.5.11 NDB集群使用ALTER TABLE在线操作
18.5.12使用共享授权表的分布式权限
18.5.13 NDB API统计指标和变量
18.5.14 ndbinfo: NDB集群信息数据库
18.5.15快速参考:NDB集群SQL语句
18.5.16 NDB集群安全问题
18.6 NDB集群复制
18.6.1 NDB集群复制:缩略语和符号
18.6.2 NDB集群复制总体要求
18.6.3 NDB集群复制常见问题
18.6.4 NDB集群复制模式及表
18.6.5准备NDB集群进行复制
18.6.6启动NDB集群复制(单复制区域通道)
18.6.7使用双通道复制NDB集群
18.6.8使用NDB集群复制实现故障切换
18.6.9使用NDB集群复制进行NDB集群备份
18.6.10 NDB集群复制:双向和循环复制
18.6.11 NDB集群复制冲突解决
18.7 NDB集群版本说明
19个分区
19.1 MySQL分区简介
19.2分区类型
19.2.1范围分区
19.2.2列表分区
19.2.3列分区
19.2.4散列分区
19.2.5键分区
19.2.6 Subpartitioning
19.2.7 MySQL分区如何处理NULL
19.3分区管理
19.3.1管理RANGE和LIST分区
19.3.2管理HASH和KEY分区
19.3.3与表交换分区和子分区
19.3.4维护分区
19.3.5获取分区信息
19.4分区修剪
19.5分区选择
19.6分区的约束与限制
19.6.1分区键、主键和唯一键
19.6.2存储引擎分区限制
19.6.3函数分区限制
19.6.4分区和锁定
20个存储对象
20.1定义存储程序
20.2使用存储例程
20.2.1存储例程语法
20.2.2存储例程和MySQL特权
20.2.3例程元数据存储
20.2.4存储过程、函数、触发器和LAST_INSERT_ID()
20.3使用触发器
20.3.1触发器语法及示例
20.3.2触发元数据
20.4使用事件调度程序
20.4.1事件调度器概述
20.4.2事件调度器配置
20.4.3事件语法
20.4.4事件元数据
20.4.5事件调度器状态
20.4.6事件调度程序和MySQL特权
20.5使用视图
20.5.1视图的语法
20.5.2视图处理算法
20.5.3可更新和可插入视图
20.5.4带有CHECK OPTION子句的视图
20.5.5查看元数据
20.6存储对象访问控制
20.7存储程序二进制日志记录
20.8存储程序限制
20.9视图限制
21 INFORMATION_SCHEMA表
21.1介绍
21.2 INFORMATION_SCHEMA表参考
21.3 INFORMATION_SCHEMA通用表
21.3.1 INFORMATION_SCHEMA通用表参考
21.3.2 INFORMATION_SCHEMA CHARACTER_SETS表
21.3.3 INFORMATION_SCHEMA排序表
21.3.4 INFORMATION_SCHEMA collation_character_set_适用性表
21.3.5 INFORMATION_SCHEMA列表
21.3.6 INFORMATION_SCHEMA COLUMN_PRIVILEGES表
21.3.7 INFORMATION_SCHEMA引擎表
21.3.8 INFORMATION_SCHEMA事件表
21.3.9 INFORMATION_SCHEMA GLOBAL_STATUS和SESSION_STATUS表
21.3.10 INFORMATION_SCHEMA GLOBAL_VARIABLES和SESSION_VARIABLES表
21.3.11 INFORMATION_SCHEMA KEY_COLUMN_USAGE表
21.3.12 INFORMATION_SCHEMA OPTIMIZER_TRACE表
21.3.13 INFORMATION_SCHEMA参数表
21.3.14 INFORMATION_SCHEMA分区表
21.3.15 INFORMATION_SCHEMA插件表
21.3.16 INFORMATION_SCHEMA PROCESSLIST表
21.3.17 INFORMATION_SCHEMA概要表
21.3.18 INFORMATION_SCHEMA REFERENTIAL_CONSTRAINTS表
21.3.19 INFORMATION_SCHEMA例程表
21.3.20 INFORMATION_SCHEMA模式表
21.3.21 INFORMATION_SCHEMA SCHEMA_PRIVILEGES表
21.3.22信息模式统计表
21.3.23 INFORMATION_SCHEMA TABLES表
21.3.24 INFORMATION_SCHEMA表空间表
21.3.25 INFORMATION_SCHEMA TABLE_CONSTRAINTS表
21.3.26 INFORMATION_SCHEMA TABLE_PRIVILEGES表
21.3.27 INFORMATION_SCHEMA触发器表
21.3.28 INFORMATION_SCHEMA USER_PRIVILEGES表
21.3.29 INFORMATION_SCHEMA视图表
21.4 inform_schema InnoDB表
21.4.1 InnoDB表参考
21.4.2 INNODB_BUFFER_PAGE信息表
21.4.3 INNODB_BUFFER_PAGE_LRU表的信息
21.4.4 INNODB_BUFFER_POOL_STATS信息表
21.4.5 INNODB_CMP和INNODB_CMP_RESET表的信息
21.4.6 INNODB_CMPMEM和INNODB_CMPMEM_RESET表的信息
21.4.7 INNODB_CMP_PER_INDEX和INNODB_CMP_PER_INDEX_RESET表的信息模式
21.4.8 INNODB_FT_BEING_DELETED信息表
21.4.9 INNODB_FT_CONFIG信息表
21.4.10 INNODB_FT_DEFAULT_STOPWORD表的信息
21.4.11 INNODB_FT_DELETED表的信息
21.4.12 INNODB_FT_INDEX_CACHE表的信息
21.4.13 INNODB_FT_INDEX_TABLE表的信息
21.4.14 INNODB_LOCKS表的信息
21.4.15 innodb_lock_waiting表的信息
21.4.16 INNODB_METRICS表的信息
21.4.17 INNODB_SYS_COLUMNS表的信息
21.4.18 INNODB_SYS_DATAFILES表的信息
21.4.19 INNODB_SYS_FIELDS表的信息
21.4.20 INNODB_SYS_FOREIGN表的信息
21.4.21 INNODB_SYS_FOREIGN_COLS信息表
21.4.22 INNODB_SYS_INDEXES表的信息
21.4.23 INNODB_SYS_TABLES表信息
21.4.24 INNODB_SYS_TABLESPACES表的信息
21.4.25 INNODB_SYS_TABLESTATS信息视图
21.4.26 INNODB_TRX表的信息
21.5 INFORMATION_SCHEMA NDB集群表
21.5.1 INFORMATION_SCHEMA文件表
21.5.2 INFORMATION_SCHEMA ndb_transid_mysql_connection_map表
21.6 INFORMATION_SCHEMA线程池表
21.6.1 INFORMATION_SCHEMA线程池表参考
21.6.2信息模式TP_THREAD_GROUP_STATE表
21.6.3信息模式TP_THREAD_GROUP_STATS表
21.6.4信息模式TP_THREAD_STATE表
21.7 INFORMATION_SCHEMA连接控制表
21.7.1 INFORMATION_SCHEMA连接控制表参考
21.7.2信息模式连接控制failedlogin_attempts表
21.8 MySQL企业防火墙表信息
21.8.1 INFORMATION_SCHEMA防火墙表参考
21.8.2 INFORMATION_SCHEMA MYSQL_FIREWALL_USERS表
21.8.3信息模式mysql_firewall_白名单表
21.9 SHOW语句的扩展
22 MySQL性能架构
22.1性能模式快速入门
22.2性能架构构建配置
22.3性能模式启动配置
22.4性能模式运行时配置
22.4.1性能模式事件定时
22.4.2性能模式事件过滤
22.4.3事件预滤器
22.4.4仪表预过滤
22.4.5按对象预过滤
22.4.6线程预过滤
22.4.7用户预过滤
22.4.8消费者配置举例
22.4.9命名过滤操作的工具或消费者
22.4.10确定仪器检测的内容
22.5性能模式查询
22.6性能模式仪器命名约定
22.7性能模式状态监控
22.8性能模式原子和分子事件
22.9当前事件和历史事件的性能模式表
22.10性能模式语句摘要
22.11性能模式通用表特征
22.12性能模式表说明
22.12.1性能模式表参考
22.12.2性能模式设置表
22.12.3性能模式实例表
22.12.4性能模式等待事件表
22.12.5性能模式阶段事件表
22.12.6性能模式语句事件表
22.12.7性能模式连接表
22.12.8性能模式连接属性表
22.12.9性能模式汇总表
22.12.10性能模式杂项表
22.13性能模式选项和变量参考
22.14性能模式命令选项
22.15性能架构系统变量
22.16性能模式状态变量
22.17性能架构和插件
22.18使用性能模式诊断问题
22.18.1通过性能架构查询性能分析
22.19性能模式约束
23连接器和api
23.1 MySQL连接器/ c++
23.2 MySQL连接器/ J
23.3 MySQL连接器/净
23.4 MySQL连接器/ ODBC
23.5 MySQL连接器/ Python
23.6 libmysqld嵌入式MySQL服务器库
23.6.1使用libmysqld编译程序
23.6.2使用嵌入式MySQL服务器时的限制
23.6.3嵌入式服务器选项
23.6.4嵌入式服务器举例
23.7 MySQL C API
MySQL PHP API
23.9 MySQL Perl API
23.10 MySQL Python API
23.11 MySQL Ruby api
23.11.1 MySQL/Ruby API
23.11.2 Ruby/MySQL API
23.12 MySQL Tcl API
23.13 MySQL Eiffel Wrapper
24 MySQL企业版
24.1 MySQL企业监控概述
24.2 MySQL企业备份简介
24.3 MySQL企业安全概述
24.4 MySQL企业加密概述
24.5 MySQL企业审计概述
24.6 MySQL企业防火墙概述
24.7 MySQL企业线程池概述
24.8 MySQL企业数据屏蔽和去识别简介
25 MySQL工作台
MySQL 5.6常见问题
A.1 MySQL 5.6 FAQ: General
A.2 MySQL 5.6 FAQ:存储引擎
A.3 MySQL 5.6 FAQ: Server SQL模式
A.4 MySQL 5.6 FAQ:存储过程和函数
A.5 MySQL 5.6 FAQ:触发器
A.6 MySQL 5.6 FAQ:视图
A.7 MySQL 5.6 FAQ: INFORMATION_SCHEMA
A.8 MySQL 5.6 FAQ:迁移
A.9 MySQL 5.6 FAQ:安全
A.10 MySQL 5.6 FAQ: NDB集群
A.11 MySQL 5.6 FAQ: MySQL中、日、韩文字符集
A.12 MySQL 5.6 FAQ:连接器和api
A.13 MySQL 5.6 FAQ: C API, libmysql
A.14 MySQL 5.6 FAQ: Replication
A.15 MySQL 5.6 FAQ: MySQL企业线程池
A.16 MySQL 5.6 FAQ: InnoDB Change Buffer
A.17 MySQL 5.6 FAQ:虚拟化支持
B错误信息和常见问题
B.1错误消息来源和元素
B.2错误信息接口
B.3问题和常见错误
B.3.1如何确定问题的原因
B.3.2使用MySQL程序常见错误
B.3.3管理问题
B.3.4查询相关问题
B.3.5优化器相关的问题
B.3.6表定义相关问题
B.3.7 MySQL已知问题
C索引
总索引
C函数索引
命令指数
函数索引
INFORMATION_SCHEMA指数
连接类型索引
运营商指数
选择指数
特权指数
SQL模式索引
声明/语法指数
状态变量指数
系统变量指数
事务隔离级别索引
MySQL术语表