MySQL 5.1 Reference Manual
这是MySQL参考手册的翻译版本,关于MySQL参考手册,请访问:dev.mysql.com。原始参考手册为英文版,与英文版参考手册相比,本翻译版可能不是最新的。
本手册编译于2006-7-27,目录及索引由官方HTML文档转换并加以修订,张伟,华东交通大学。
Linux公社(www.linuxidc.com)于2006年9月25日注册并开通网站,Linux现在已经成为一种广受关注和支持的一种操作系统,IDC是互联网数据中心,LinuxIDC就是关于Linux的数据中心。
Linux公社是专业的Linux系统门户网站,实时发布最新Linux资讯,包括Linux、Ubuntu、Fedora、RedHat、红旗Linux、Linux教程、Linux认证、SUSE Linux、Android、Oracle、Hadoop、CentOS等技术。
摘要
这是MySQL参考手册 它涉及MySQL 5.1至5.1.2-alpha版本。
文档生成于:2005-11-15
目录
-
前言
-
1. 一般信息
-
-
1.1. 关于本手册
-
1.2. 本手册采用的惯例
-
1.3. MySQL AB概述
-
1.4. MySQL数据库管理系统概述
-
-
1.4.1. MySQL的历史
-
1.4.2. MySQL的的主要特性
-
1.4.3. MySQL稳定性
-
1.4.4. MySQL表最大能达到多少
-
1.4.5. 2000年兼容性
-
1.5. MaxDB数据库管理系统概述
-
-
1.5.1. 什么是MaxDB?
-
1.5.2. MaxDB的历史
-
1.5.3. MaxDB的特性
-
1.5.4. 许可和支持
-
1.5.5. MaxDB和MySQL之间的特性差异
-
1.5.6. MaxDB和MySQL之间的协同性
-
1.5.7. 与MaxDB有关的链接
-
1.6. MySQL发展大事记
-
-
1.6.1. MySQL 5.1的新特性
-
1.7. MySQL信息源
-
-
1.7.1. MySQL邮件列表
-
1.7.2. IRC(在线聊天系统)上的MySQL社区支持
-
1.7.3. MySQL论坛上的MySQL社区支持
-
1.8. MySQL标准的兼容性
-
-
1.8.1. MySQL遵从的标准是什么
-
1.8.2. 选择SQL模式
-
1.8.3. 在ANSI模式下运行MySQL
-
1.8.4. MySQL对标准SQL的扩展
-
1.8.5. MySQL与标准SQL的差别
-
1.8.6. MySQL处理约束的方式
-
2. 安装MySQL
-
-
2.1. 一般安装问题
-
-
2.1.1. MySQL支持的操作系统
-
2.1.2. 选择要安装的MySQL分发版
-
2.1.3. 怎样获得MySQL
-
2.1.4. 通过MD5校验和或GnuPG验证软件包的完整性
-
2.1.5. 安装布局
-
2.2. 使用二进制分发版的标准MySQL安装
-
2.3. 在Windows上安装MySQL
-
-
2.3.1. Windows系统要求
-
2.3.2. 选择安装软件包
-
2.3.3. 用自动安装器安装MySQL
-
2.3.4. 使用MySQL安装向导
-
2.3.5. 使用配置向导
-
2.3.6. 通过非安装Zip文件安装MySQL
-
2.3.7. 提取安装档案文件
-
2.3.8. 创建选项文件
-
2.3.9. 选择MySQL服务器类型
-
2.3.10. 首次启动服务器
-
2.3.11. 从Windows命令行启动MySQL
-
2.3.12. 以Windows服务方式启动MySQL
-
2.3.13. 测试MySQL安装
-
2.3.14. 在Windows环境下对MySQL安装的故障诊断与排除
-
2.3.15. 在Windows下升级MySQL
-
2.3.16. Windows版MySQL同Unix版MySQL对比
-
2.4. 在Linux下安装MySQL
-
2.5.在Mac OS X中安装MySQL
-
2.6. 在NetWare中安装MySQL
-
2.7. 在其它类Unix系统中安装MySQL
-
2.8. 使用源码分发版安装MySQL
-
-
2.8.1. 源码安装概述
-
2.8.2. 典型配置选项
-
2.8.3. 从开发源码树安装
-
2.8.4. 处理MySQL编译问题
-
2.8.5. MIT-pthreads注意事项
-
2.8.6. 在Windows下从源码安装MySQL
-
2.8.7. 在Windows下编译MySQL客户端
-
2.9. 安装后的设置和测试
-
-
2.9.1. Windows下安装后的过程
-
2.9.2. Unix下安装后的过程
-
2.9.3. 使初始MySQL账户安全
-
2.10. 升级MySQL
-
-
2.10.1. 从5.0版升级
-
2.10.2. 升级授权表
-
2.10.3. 将MySQL数据库拷贝到另一台机器
-
2.11. 降级MySQL
-
2.12. 具体操作系统相关的注意事项
-
-
2.12.1. Linux注意事项
-
2.12.2. Mac OS X注意事项
-
2.12.3. Solaris注意事项
-
2.12.4. BSD注意事项
-
2.12.5. 其它Unix注意事项
-
2.12.6. OS/2注意事项
-
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. 孪生项目的查询
-
-
3.7.1. 查找所有未分发的孪生项
-
3.7.2. 显示孪生对状态的表
-
3.8. 与Apache一起使用MySQL
-
4. MySQL程序概述
-
-
4.1. MySQL程序概述
-
4.2. 调用MySQL程序
-
4.3. 指定程序选项
-
-
4.3.1. 在命令行上使用选项
-
4.3.2. 使用选项文件
-
4.3.3. 用环境变量指定选项
-
4.3.4. 使用选项设置程序变量
-
5. 数据库管理
-
-
5.1. MySQL服务器和服务器启动脚本
-
-
5.1.1. 服务器端脚本和实用工具概述
-
5.1.2. mysqld-max扩展MySQL服务器
-
5.1.3. mysqld_safe:MySQL服务器启动脚本
-
5.1.4. mysql.server:MySQL服务器启动脚本
-
5.1.5. mysqld_multi:管理多个MySQL服务器的程序
-
5.2. mysqlmanager:MySQL实例管理器
-
-
5.2.1. 用MySQL实例管理器启动MySQL服务器
-
5.2.2. 连接到MySQL实例管理器并创建用户账户
-
5.2.3. MySQL实例管理器命令行选项
-
5.2.4. MySQL实例管理器配置文件
-
5.2.5. MySQL实例管理器识别的命令
-
5.3. mysqld:MySQL服务器
-
-
5.3.1.mysqld命令行选项
-
5.3.2. SQL服务器模式
-
5.3.3. 服务器系统变量
-
5.3.4. 服务器状态变量
-
5.4. mysql_fix_privilege_tables:升级MySQL系统表
-
5.5. MySQL服务器关机进程
-
5.6. 一般安全问题
-
-
5.6.1. 通用安全指南
-
5.6.2. 使MySQL在攻击者面前保持安全
-
5.6.3. Mysqld安全相关启动选项
-
5.6.4. LOAD DATA LOCAL安全问题
-
5.7. MySQL访问权限系统
-
-
5.7.1. 权限系统的作用
-
5.7.2. 权限系统工作原理
-
5.7.3. MySQL提供的权限
-
5.7.4. 与MySQL服务器连接
-
5.7.5. 访问控制, 阶段1:连接核实
-
5.7.6. 访问控制, 阶段2:请求核实
-
5.7.7. 权限更改何时生效
-
5.7.8. 拒绝访问错误的原因
-
5.7.9. MySQL 4.1中的密码哈希处理
-
5.8. MySQL用户账户管理
-
-
5.8.1. MySQL用户名和密码
-
5.8.2. 向MySQL增加新用户账户
-
5.8.3. 从MySQL删除用户账户
-
5.8.4. 限制账户资源
-
5.8.5. 设置账户密码
-
5.8.6. 使你的密码安全
-
5.8.7. 使用安全连接
-
5.9. 备份与恢复
-
-
5.9.1. 数据库备份
-
5.9.2. 示例用备份与恢复策略
-
5.9.3. 自动恢复
-
5.9.4. 表维护和崩溃恢复
-
5.9.5. myisamchk:MyISAM表维护实用工具
-
5.9.6. 建立表维护计划
-
5.9.7. 获取关于表的信息
-
5.10. MySQL本地化和国际应用
-
-
5.10.1. 数据和排序用字符集
-
5.10.2. 设置错误消息语言
-
5.10.3. 添加新的字符集
-
5.10.4. 字符定义数组
-
5.10.5. 字符串比较支持
-
5.10.6. 多字节字符支持
-
5.10.7. 字符集问题
-
5.10.8. MySQL服务器时区支持
-
5.11. MySQL日志文件
-
-
5.11.1. 错误日志
-
5.11.2. 通用查询日志
-
5.11.3. 二进制日志
-
5.11.4. 慢速查询日志
-
5.11.5. 日志文件维护
-
5.12. 在同一台机器上运行多个MySQL服务器
-
-
5.12.1. 在Windows下运行多个服务器
-
5.12.2. 在Unix中运行多个服务器
-
5.12.3. 在多服务器环境中使用客户端程序
-
5.13. MySQL查询高速缓冲
-
-
5.13.1. 查询高速缓冲如何工作
-
5.13.2. 查询高速缓冲SELECT选项
-
5.13.3. 查询高速缓冲配置
-
5.13.4. 查询高速缓冲状态和维护
-
6. MySQL中的复制
-
-
6.1. 复制介绍
-
6.2. 复制实施概述
-
6.3. 复制实施细节
-
-
6.3.1. 复制主线程状态
-
6.3.2. 复制从I/O线程状态
-
6.3.3. 复制从SQL线程状态
-
6.3.4. 复制传递和状态文件
-
6.4. 如何设置复制
-
6.5. 不同MySQL版本之间的复制兼容性
-
6.6. 升级复制设置
-
-
6.6.1. 将复制升级到5.0版
-
6.7. 复制特性和已知问题
-
6.8. 复制启动选项
-
6.9. 复制FAQ
-
6.10. 复制故障诊断与排除
-
6.11. 通报复制缺陷
-
6.12. 多服务器复制中的Auto-Increment
-
7. 优化
-
-
7.1. 优化概述
-
-
7.1.1. MySQL设计局限与折衷
-
7.1.2. 为可移植性设计应用程序
-
7.1.3. 我们已将MySQL用在何处?
-
7.1.4. MySQL基准套件
-
7.1.5. 使用自己的基准
-
7.2. 优化SELECT语句和其它查询
-
-
7.2.1. EXPLAIN语法(获取SELECT相关信息)
-
7.2.2. 估计查询性能
-
7.2.3. SELECT查询的速度
-
7.2.4. MySQL怎样优化WHERE子句
-
7.2.5. 范围优化
-
7.2.6. 索引合并优化
-
7.2.7. MySQL如何优化IS NULL
-
7.2.8. MySQL如何优化DISTINCT
-
7.2.9. MySQL如何优化LEFT JOIN和RIGHT JOIN
-
7.2.10. MySQL如何优化嵌套Join
-
7.2.11. MySQL如何简化外部联合
-
7.2.12. MySQL如何优化ORDER BY
-
7.2.13. MySQL如何优化GROUP BY
-
7.2.14. MySQL如何优化LIMIT
-
7.2.15. 如何避免表扫描
-
7.2.16. INSERT语句的速度
-
7.2.17. UPDATE语句的速度
-
7.2.18. DELETE语句的速度
-
7.2.19. 其它优化技巧
-
7.3. 锁定事宜
-
-
7.3.1. 锁定方法
-
7.3.2. 表锁定事宜
-
7.4. 优化数据库结构
-
-
7.4.1. 设计选择
-
7.4.2. 使你的数据尽可能小
-
7.4.3. 列索引
-
7.4.4. 多列索引
-
7.4.5. MySQL如何使用索引
-
7.4.6. MyISAM键高速缓冲
-
7.4.7. MyISAM索引统计集合
-
7.4.8. MySQL如何计算打开的表
-
7.4.9. MySQL如何打开和关闭表
-
7.4.10. 在同一个数据库中创建多个表的缺陷
-
7.5. 优化MySQL服务器
-
-
7.5.1. 系统因素和启动参数的调节
-
7.5.2. 调节服务器参数
-
7.5.3. 控制查询优化器的性能
-
7.5.4. 编译和链接怎样影响MySQL的速度
-
7.5.5. MySQL如何使用内存
-
7.5.6. MySQL如何使用DNS
-
7.6. 磁盘事宜
-
-
7.6.1. 使用符号链接
-
8. 客户端和实用工具程序
-
-
8.1. 客户端脚本和实用工具概述
-
8.2. myisampack:生成压缩、只读MyISAM表
-
8.3. mysql:MySQL命令行工具
-
-
8.3.1. 选项
-
8.3.2.mysql命令
-
8.3.3. 怎样从文本文件执行SQL语句
-
8.3.4.mysql技巧
-
8.4. mysqlaccess:用于检查访问权限的客户端
-
8.5. mysqladmin:用于管理MySQL服务器的客户端
-
8.6. mysqlbinlog:用于处理二进制日志文件的实用工具
-
8.7. mysqlcheck:表维护和维修程序
-
8.8. mysqldump:数据库备份程序
-
8.9. mysqlhotcopy:数据库备份程序
-
8.10. mysqlimport:数据导入程序
-
8.11. mysqlshow-显示数据库、表和列信息
-
8.12. myisamlog:显示MyISAM日志文件内容
-
8.13. perror:解释错误代码
-
8.14. replace:字符串替换实用工具
-
8.15. mysql_zap:杀死符合某一模式的进程
-
9. 语言结构
-
-
9.1. 文字值
-
-
9.1.1. 字符串
-
9.1.2. 数值
-
9.1.3. 十六进制值
-
9.1.4. 布尔值
-
9.1.5. 位字段值
-
9.1.6. NULL值
-
9.2. 数据库、表、索引、列和别名
-
-
9.2.1. 识别符限制条件
-
9.2.2. 识别符大小写敏感性
-
9.3. 用户变量
-
9.4. 系统变量
-
-
9.4.1. 结构式系统变量
-
9.5. 注释语法
-
9.6. MySQL中保留字的处理
-
10. 字符集支持
-
-
10.1. 常规字符集和校对
-
10.2. MySQL中的字符集和校对
-
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. 在SQL语句中使用COLLATE
-
10.3.9. COLLATE子句优先
-
10.3.10. BINARY操作符
-
10.3.11. 校对确定较为复杂的一些特殊情况
-
10.3.12. 校对必须适合字符集
-
10.3.13. 校对效果的示例
-
10.4. 字符集支持影响到的操作
-
-
10.4.1. 结果字符串
-
10.4.2. CONVERT()
-
10.4.3. CAST()
-
10.4.4. SHOW语句
-
10.5. Unicode支持
-
10.6. 用于元数据的UTF8
-
10.7. 与其它DBMS的兼容性
-
10.8. 新字符集配置文件格式
-
10.9. 国家特有字符集
-
10.10. MySQL支持的字符集和校对
-
-
10.10.1. Unicode字符集
-
10.10.2. 西欧字符集
-
10.10.3. 中欧字符集
-
10.10.4. 南欧与中东字符集
-
10.10.5. 波罗的海字符集
-
10.10.6. 西里尔字符集
-
10.10.7. 亚洲字符集
-
11. 列类型
-
-
11.1. 列类型概述
-
-
11.1.1. 数值类型概述
-
11.1.2. 日期和时间类型概述
-
11.1.3. 字符串类型概述
-
11.2. 数值类型
-
11.3. 日期和时间类型
-
-
11.3.1. DATETIME、DATE和TIMESTAMP类型
-
11.3.2. TIME类型
-
11.3.3. YEAR类型
-
11.3.4. Y2K事宜和日期类型
-
11.4. String类型
-
-
11.4.1. CHAR和VARCHAR类型
-
11.4.2. BINARY和VARBINARY类型
-
11.4.3. BLOB和TEXT类型
-
11.4.4. ENUM类型
-
11.4.5. SET类型
-
11.5. 列类型存储需求
-
11.6. 选择正确的列类型
-
11.7. 使用来自其他数据库引擎的列类型
-
12. 函数和操作符
-
-
12.1. 操作符
-
-
12.1.1. 操作符优先级
-
12.1.2. 圆括号
-
12.1.3. 比较函数和操作符
-
12.1.4. 逻辑操作符
-
12.2. 控制流程函数
-
12.3. 字符串函数
-
-
12.3.1. 字符串比较函数
-
12.4. 数值函数
-
-
12.4.1. 算术操作符
-
12.4.2. 数学函数
-
12.5. 日期和时间函数
-
12.6. MySQL使用什么日历?
-
12.7. 全文搜索功能
-
-
12.7.1. 布尔全文搜索
-
12.7.2. 全文搜索带查询扩展
-
12.7.3. 全文停止字
-
12.7.4. 全文限定条件
-
12.7.5. 微调MySQL全文搜索
-
12.8. Cast函数和操作符
-
12.9. 其他函数
-
-
12.9.1. 位函数
-
12.9.2. 加密函数
-
12.9.3. 信息函数
-
12.9.4. 其他函数
-
12.10. 与GROUP BY子句同时使用的函数和修改程序
-
-
12.10.1. GROUP BY(聚合)函数
-
12.10.2. GROUP BY修改程序
-
12.10.3. 具有隐含字段的GROUP BY
-
13. SQL语句语法
-
-
13.1. 数据定义语句
-
-
13.1.1. ALTER DATABASE语法
-
13.1.2. ALTER TABLE语法
-
13.1.3. CREATE DATABASE语法
-
13.1.4. CREATE INDEX语法
-
13.1.5. CREATE TABLE语法
-
13.1.6. DROP DATABASE语法
-
13.1.7. DROP INDEX语法
-
13.1.8. DROP TABLE语法
-
13.1.9. RENAME TABLE语法
-
13.2. 数据操作语句
-
-
13.2.1. DELETE语法
-
13.2.2. DO语法
-
13.2.3. HANDLER语法
-
13.2.4. INSERT语法
-
13.2.5. LOAD DATA INFILE语法
-
13.2.6. REPLACE语法
-
13.2.7. SELECT语法
-
13.2.8. Subquery语法
-
13.2.9. TRUNCATE语法
-
13.2.10. UPDATE语法
-
13.3. MySQL实用工具语句
-
-
13.3.1. DESCRIBE语法(获取有关列的信息)
-
13.3.2. USE语法
-
13.4. MySQL事务处理和锁定语句
-
-
13.4.1. START TRANSACTION, COMMIT和ROLLBACK语法
-
13.4.2. 不能回滚的语句
-
13.4.3. 会造成隐式提交的语句
-
13.4.4. SAVEPOINT和ROLLBACK TO SAVEPOINT语法
-
13.4.5. LOCK TABLES和UNLOCK TABLES语法
-
13.4.6. SET TRANSACTION语法
-
13.4.7. XA事务
-
13.5. 数据库管理语句
-
-
13.5.1. 账户管理语句
-
13.5.2. 表维护语句
-
13.5.3. SET语法
-
13.5.4. SHOW语法
-
13.5.5. 其它管理语句
-
13.6. 复制语句
-
-
13.6.1. 用于控制主服务器的SQL语句
-
13.6.2. 用于控制从服务器的SQL语句
-
13.7. 用于预处理语句的SQL语法
-
14. 插件式存储引擎体系结构
-
-
14.1. 前言
-
14.2. 概述
-
14.3. 公共MySQL数据库服务器层
-
14.4. 选择存储引擎
-
14.5. 将存储引擎指定给表
-
14.6. 存储引擎和事务
-
14.7. 插入存储引擎
-
14.8. 拔出存储引擎
-
14.9. 插件式存储器的安全含义
-
15. 存储引擎和表类型
-
-
15.1. MyISAM存储引擎
-
-
15.1.1. MyISAM启动选项
-
15.1.2. 键所需的空间
-
15.1.3. MyISAM表的存储格式
-
15.1.4. MyISAM表方面的问题
-
15.2. InnoDB存储引擎
-
-
15.2.1. InnoDB概述
-
15.2.2. InnoDB联系信息
-
15.2.3. InnoDB配置
-
15.2.4. InnoDB启动选项
-
15.2.5. 创建InnoDB表空间
-
15.2.6. 创建InnoDB表
-
15.2.7. 添加和删除InnoDB数据和日志文件
-
15.2.8. InnoDB数据库的备份和恢复
-
15.2.9. 将InnoDB数据库移到另一台机器上
-
15.2.10. InnoDB事务模型和锁定
-
15.2.11. InnoDB性能调节提示
-
15.2.12. 多版本的实施
-
15.2.13. 表和索引结构
-
15.2.14. 文件空间管理和磁盘I/O
-
15.2.15. InnoDB错误处理
-
15.2.16. 对InnoDB表的限制
-
15.2.17. InnoDB故障诊断与排除
-
15.3. MERGE存储引擎
-
-
15.3.1. MERGE表方面的问题
-
15.4. MEMORY (HEAP)存储引擎
-
15.5. BDB (BerkeleyDB)存储引擎
-
-
15.5.1. BDB支持的操作系统
-
15.5.2. 安装BDB
-
15.5.3. BDB启动选项
-
15.5.4. BDB表的特性
-
15.5.5. 修改BDB所需的事宜
-
15.5.6. 对BDB表的限制
-
15.5.7. 使用BDB表时可能出现的错误
-
15.6. EXAMPLE存储引擎
-
15.7. FEDERATED存储引擎
-
-
15.7.1. 安装FEDERATED存储引擎
-
15.7.2. FEDERATED存储引擎介绍
-
15.7.3. 如何使用FEDERATED表
-
15.7.4. FEDERATED存储引擎的局限性
-
15.8. ARCHIVE存储引擎
-
15.9. CSV存储引擎
-
15.10. BLACKHOLE存储引擎
-
16. 编写自定义存储引擎
-
-
16.1. 前言
-
16.2. 概述
-
16.3. 创建存储引擎源文件
-
16.4. 创建handlerton
-
16.5. 对处理程序进行实例化处理
-
16.6. 定义表扩展
-
16.7. 创建表
-
16.8. 打开表
-
16.9. 实施基本的表扫描功能
-
-
16.9.1. 实施store_lock()函数
-
16.9.2. 实施external_lock()函数
-
16.9.3. 实施rnd_init()函数
-
16.9.4. 实施info()函数
-
16.9.5. 实施extra()函数
-
16.9.6. 实施rnd_next()函数
-
16.10. 关闭表
-
16.11. 为存储引擎添加对INSERT的支持
-
16.12. 为存储引擎添加对UPDATE的支持
-
16.13. 为存储引擎添加对DELETE的支持
-
16.14. API引用
-
-
16.14.1. bas_ext
-
16.14.2. close
-
16.14.3. create
-
16.14.4. delete_row
-
16.14.5. delete_table
-
16.14.6. external_lock
-
16.14.7. extra
-
16.14.8. info
-
16.14.9. open
-
16.14.10. rnd_init
-
16.14.11. rnd_next
-
16.14.12. store_lock
-
16.14.13. update_row
-
16.14.14. write_row
-
17. MySQL簇
-
-
17.1. MySQL簇概述
-
17.2. MySQL簇的基本概念
-
17.3. 多计算机的简单基础知识
-
-
17.3.1. 硬件、软件和联网
-
17.3.2. 安装
-
17.3.3. 配置
-
17.3.4. 首次启动
-
17.3.5. 加载示例数据并执行查询
-
17.3.6. 安全关闭和重启
-
17.4. MySQL簇的配置
-
-
17.4.1. 从源码创建MySQL簇
-
17.4.2. 安装软件
-
17.4.3. MySQL簇的快速测试设置
-
17.4.4. 配置文件
-
17.5. MySQL簇中的进程管理
-
-
17.5.1. 用于MySQL簇的MySQL服务器进程使用
-
17.5.2.ndbd,存储引擎节点进程
-
17.5.3.ndb_mgmd,“管理服务器”进程
-
17.5.4.ndb_mgm,“管理客户端”进程
-
17.5.5. 用于MySQL簇进程的命令选项
-
17.6. MySQL簇的管理
-
-
17.6.1. MySQL簇的启动阶段
-
17.6.2. “管理客户端”中的命令
-
17.6.3. MySQL簇中生成的事件报告
-
17.6.4. 单用户模式
-
17.6.5. MySQL簇的联机备份
-
17.7. 使用与MySQL簇的高速互连
-
-
17.7.1. 配置MySQL簇以使用SCI套接字
-
17.7.2. 理解簇互连的影响
-
17.8. MySQL簇的已知限制
-
17.9. MySQL簇发展的重要历程
-
-
17.9.1. MySQL 5.0中的MySQL簇变化
-
17.9.2. 关于MySQL簇的MySQL 5.1发展历程
-
17.10. MySQL簇常见问题解答
-
17.11. MySQL簇术语表
-
18. 分区
-
-
18.1. MySQL中的分区概述
-
18.2. 分区类型
-
-
18.2.1. RANGE分区
-
18.2.2. LIST分区
-
18.2.3. HASH分区
-
18.2.4. KEY分区
-
18.2.5. 子分区
-
18.2.6. MySQL分区处理NULL值的方式
-
18.3. 分区管理
-
-
18.3.1. RANGE和LIST分区的管理
-
18.3.2. HASH和KEY分区的管理
-
18.3.3. 分区维护
-
18.3.4. 获取关于分区的信息
-
19. MySQL中的空间扩展
-
-
19.1. 前言
-
19.2. OpenGIS几何模型
-
-
19.2.1. Geometry类的层次
-
19.2.2. 类Geometry
-
19.2.3. 类Point
-
19.2.4. 类Curve
-
19.2.5. 类LineString
-
19.2.6. 类Surface
-
19.2.7. 类Polygon
-
19.2.8. 类GeometryCollection
-
19.2.9. 类MultiPoint
-
19.2.10. 类MultiCurve
-
19.2.11. 类MultiLineString
-
19.2.12. 类MultiSurface
-
19.2.13. 类MultiPolygon
-
19.3. 支持的空间数据格式
-
-
19.3.1. 著名的文本(WKT)格式
-
19.3.2. 著名的二进制(WKB)格式
-
19.4. 创建具备空间功能的MySQL数据库
-
-
19.4.1. MySQL空间数据类型
-
19.4.2. 创建空间值
-
19.4.3. 创建空间列
-
19.4.4. 填充空间列
-
19.4.5. 获取空间数据
-
19.5. 分析空间信息
-
-
19.5.1. Geometry格式转换函数
-
19.5.2. Geometry函数
-
19.5.3. 从已有Geometry创建新Geometry的函数
-
19.5.4. 测试几何对象间空间关系的函数
-
19.5.5. 关于几何最小边界矩形(MBR)的关系
-
19.5.6. 测试几何类之间空间关系的函数
-
19.6. 优化空间分析
-
-
19.6.1. 创建空间索引
-
19.6.2. 使用空间索引
-
19.7. MySQL的一致性和兼容性
-
-
19.7.1. 尚未实施的GIS特性
-
20. 存储程序和函数
-
-
20.1. 存储程序和授权表
-
20.2. 存储程序的语法
-
-
20.2.1. CREATE PROCEDURE和CREATE FUNCTION
-
20.2.2. ALTER PROCEDURE和ALTER FUNCTION
-
20.2.3. DROP PROCEDURE和DROP FUNCTION
-
20.2.4. SHOW CREATE PROCEDURE和SHOW CREATE FUNCTION
-
20.2.5. SHOW PROCEDURE STATUS和SHOW FUNCTION STATUS
-
20.2.6. CALL语句
-
20.2.7. BEGIN ... END复合语句
-
20.2.8. DECLARE语句
-
20.2.9. 存储程序中的变量
-
20.2.10. 条件和处理程序
-
20.2.11. 光标
-
20.2.12. 流程控制构造
-
20.3. 存储程序、函数、触发程序和复制:常见问题
-
20.4. 存储子程序和触发程序的二进制日志功能
-
21. 触发程序
-
-
21.1. CREATE TRIGGER语法
-
21.2. DROP TRIGGER语法
-
21.3. 使用触发程序
-
22. 视图
-
-
22.1. ALTER VIEW语法
-
22.2. CREATE VIEW语法
-
22.3. DROP VIEW语法
-
22.4. SHOW CREATE VIEW语法
-
23. INFORMATION_SCHEMA信息数据库
-
-
23.1. INFORMATION_SCHEMA表
-
-
23.1.1. INFORMATION_SCHEMA SCHEMATA表
-
23.1.2. INFORMATION_SCHEMA TABLES表
-
23.1.3. INFORMATION_SCHEMA COLUMNS表
-
23.1.4. INFORMATION_SCHEMA STATISTICS表
-
23.1.5. INFORMATION_SCHEMA USER_PRIVILEGES表
-
23.1.6. INFORMATION_SCHEMA SCHEMA_PRIVILEGES表
-
23.1.7. INFORMATION_SCHEMA TABLE_PRIVILEGES表
-
23.1.8. INFORMATION_SCHEMA COLUMN_PRIVILEGES表
-
23.1.9. INFORMATION_SCHEMA CHARACTER_SETS表
-
23.1.10. INFORMATION_SCHEMA COLLATIONS表
-
23.1.11. INFORMATION_SCHEMA COLLATION_CHARACTER_SET_APPLICABILITY表
-
23.1.12. INFORMATION_SCHEMA TABLE_CONSTRAINTS表
-
23.1.13. INFORMATION_SCHEMA KEY_COLUMN_USAGE表
-
23.1.14. INFORMATION_SCHEMA ROUTINES表
-
23.1.15. INFORMATION_SCHEMA VIEWS表
-
23.1.16. INFORMATION_SCHEMA TRIGGERS表
-
23.1.17. 其他INFORMATION_SCHEMA表
-
23.2. SHOW语句的扩展
-
24. 精度数学
-
-
24.1. 数值的类型
-
24.2. DECIMAL数据类型更改
-
24.3. 表达式处理
-
24.4. 四舍五入
-
24.5. 精度数学示例
-
25. API和库
-
-
25.1. libmysqld,嵌入式MySQL服务器库
-
-
25.1.1. 嵌入式MySQL服务器库概述
-
25.1.2. 使用libmysqld编译程序
-
25.1.3. 使用嵌入式MySQL服务器时的限制
-
25.1.4. 与嵌入式服务器一起使用的选项
-
25.1.5. 嵌入式服务器中尚需完成的事项(TODO)
-
25.1.6. 嵌入式服务器示例
-
25.1.7. 嵌入式服务器的许可
-
25.2. MySQL C API
-
-
25.2.1. C API数据类型
-
25.2.2. C API函数概述
-
25.2.3. C API函数描述
-
25.2.4. C API预处理语句
-
25.2.5. C API预处理语句的数据类型
-
25.2.6. C API预处理语句函数概述
-
25.2.7. C API预处理语句函数描述
-
25.2.8. C API预处理语句方面的问题
-
25.2.9. 多查询执行的C API处理
-
25.2.10. 日期和时间值的C API处理
-
25.2.11. C API线程函数介绍
-
25.2.12. C API嵌入式服务器函数介绍
-
25.2.13. 使用C API时的常见问题
-
25.2.14. 创建客户端程序
-
25.2.15. 如何生成线程式客户端
-
25.3. MySQL PHP API
-
-
25.3.1. 使用MySQL和PHP的常见问题
-
25.4. MySQL Perl API
-
25.5. MySQL C++ API
-
-
25.5.1. Borland C++
-
25.6. MySQL Python API
-
25.7. MySQL Tcl API
-
25.8. MySQL Eiffel Wrapper
-
25.9. MySQL程序开发实用工具
-
-
25.9.1. msql2mysql:转换mSQL程序以用于MySQL
-
25.9.2. mysql_config:获取编译客户端的编译选项
-
26. 连接器
-
-
26.1. MySQL Connector/ODBC
-
-
26.1.1. MyODBC介绍
-
26.1.2. 关于ODBC和MyODBC的一般信息
-
26.1.3. 如何安装MyODBC
-
26.1.4. 在Windows平台上从二进制版本安装MyODBC
-
26.1.5. I在Unix平台上从二进制版本安装MyODBC
-
26.1.6. 在Windows平台上从源码版本安装MyODBC
-
26.1.7. 在Unix平台上从源码版本安装MyODBC
-
26.1.8. 从BitKeeper开发源码树安装MyODBC
-
26.1.9. MyODBC配置
-
26.1.10. 与MyODBC连接相关的事宜
-
26.1.11. MyODBC和Microsoft Access
-
26.1.12. MyODBC和Microsoft VBA及ASP
-
26.1.13. MyODBC和第三方ODBC工具
-
26.1.14. MyODBC通用功能
-
26.1.15. 基本的MyODBC应用步骤
-
26.1.16. MyODBC API引用
-
26.1.17. MyODBC数据类型
-
26.1.18. MyODBC错误代码
-
26.1.19. MyODBC与VB:ADO、DAO和RDO
-
26.1.20. MyODBC与Microsoft.NET
-
26.1.21. 感谢
-
26.2. MySQL Connector/NET
-
-
26.2.1. 前言
-
26.2.2. 下载并安装MySQL Connector/NET
-
26.2.3. Connector/NET体系结构
-
26.2.4. 使用MySQL Connector/NET
-
26.2.5. MySQL Connector/NET变更史
-
26.3. MySQL Connector/J
-
-
26.3.1. 基本的JDBC概念
-
26.3.2. 安装 Connector/J
-
26.3.3. JDBC引用
-
26.3.4. 与J2EE和其他Java框架一起使用 Connector/J
-
26.3.5. 诊断 Connector/J方面的问题
-
26.3.6. Changelog
-
26.4. MySQL Connector/MXJ
-
-
26.4.1. 前言
-
26.4.2. 支持平台:
-
26.4.3. Junit测试要求
-
26.4.4. 运行Junit测试
-
26.4.5. 作为JDBC驱动程序的一部分运行
-
26.4.6. 在Java对象中运行
-
26.4.7. MysqldResource API
-
26.4.8. 在JMX代理(custom)中运行
-
26.4.9. 部署在标准的JMX代理环境下 (JBoss)
-
26.4.10. 安装
-
27. 扩展MySQL
-
-
27.1. MySQL内部控件
-
-
27.1.1. MySQL线程
-
27.1.2. MySQL测试套件
-
27.2. 为MySQL添加新函数
-
-
27.2.1. 自定义函数接口的特性
-
27.2.2. CREATE FUNCTION/DROP FUNCTION语法
-
27.2.3. 添加新的自定义函数
-
27.2.4. 添加新的固有函数
-
27.3. 为MySQL添加新步骤
-
-
27.3.1. 步骤分析
-
27.3.2. 编写步骤
-
A. 问题和常见错误
-
-
A.1. 如何确定导致问题的原因
-
A.2. 使用MySQL程序时的常见错误
-
-
A.2.1. 拒绝访问
-
A.2.2. 无法连接到[local] MySQL服务器
-
A.2.3. 客户端不支持鉴定协议
-
A.2.4. 输入密码时出现密码错误
-
A.2.5. 主机的host_name被屏蔽
-
A.2.6. 连接数过多
-
A.2.7. 内存溢出
-
A.2.8. MySQL服务器不可用
-
A.2.9. 信息包过大
-
A.2.10. 通信错误和失效连接
-
A.2.11. 表已满
-
A.2.12. 无法创建文件/写入文件
-
A.2.13. 命令不同步
-
A.2.14. 忽略用户
-
A.2.15. 表tbl_name不存在
-
A.2.16. 无法初始化字符集
-
A.2.17. 文件未找到
-
A.3. 与安装有关的事宜
-
-
A.3.1. 与MySQL客户端库的链接问题
-
A.3.2. 如何以普通用户身份运行MySQL
-
A.3.3. 与文件许可有关的问题
-
A.4. 与管理有关的事宜
-
-
A.4.1. 如何复位根用户密码
-
A.4.2. 如果MySQL依然崩溃,应作些什么
-
A.4.3. MySQL处理磁盘满的方式
-
A.4.4. MySQL将临时文件储存在哪里
-
A.4.5. 如何保护或更改MySQL套接字文件/tmp/mysql.sock
-
A.4.6. 时区问题
-
A.5. 与查询有关的事宜
-
-
A.5.1. 搜索中的大小写敏感性
-
A.5.2. 使用DATE列方面的问题
-
A.5.3. 与NULL值有关的问题
-
A.5.4. 与列别名有关的问题
-
A.5.5. 非事务表回滚失败
-
A.5.6. 从相关表删除行
-
A.5.7. 解决与不匹配行有关的问题
-
A.5.8. 与浮点比较有关的问题
-
A.6. 与优化器有关的事宜
-
A.7. 与表定义有关的事宜
-
-
A.7.1. 与ALTER TABLE有关的问题
-
A.7.2. 如何更改表中的列顺序
-
A.7.3. TEMPORARY TABLE问题
-
A.8. MySQL中的已知事宜
-
-
A.8.1. MySQL中的打开事宜
-
B. 错误代码和消息
-
-
B.1. 服务器错误代码和消息
-
B.2. 客户端错误代码和消息
-
C. 感谢
-
-
C.1. MySQL AB处的开发人
-
C.2. MySQL贡献人
-
C.3. 资料员和译员
-
C.4. MySQL使用和包含的库
-
C.5. 支持MySQL的软件包
-
C.6. 用于创建MySQL的工具
-
C.7. MySQL支持人员
-
D. MySQL变更史
-
-
D.1. 5.1.x版中的变更情况(开发)
-
-
D.1.1. 5.1.2版中的变更情况(尚未发布)
-
D.1.2. 5.1.1版中的变更情况(尚未发布)
-
D.2. MyODBC的变更情况
-
-
D.2.1. MyODBC 3.51.12的变更情况
-
D.2.2. MyODBC 3.51.11的变更情况
-
E. 移植到其他系统
-
-
E.1. 调试MySQL服务器
-
-
E.1.1. 针对调试编译MySQL
-
E.1.2. 创建跟踪文件
-
E.1.3. 在gdb环境下调试mysqld
-
E.1.4. 使用堆栈跟踪
-
E.1.5. 使用日志文件找出mysqld中的错误原因
-
E.1.6. 如果出现表崩溃,请生成测试案例
-
E.2. 调试MySQL客户端
-
E.3. DBUG软件包
-
E.4. 关于RTS线程的注释
-
E.5. 线程软件包之间的差异
-
F. 环境变量
-
G. MySQL正则表达式
-
H. MySQL中的限制
-
-
H.1. 联合的限制
-
I. 特性限制
-
-
I.1. 对存储子程序和触发程序的限制
-
I.2. 对服务器端光标的限制
-
I.3. 对子查询的限制
-
I.4. 对视图的限制
-
I.5. 对XA事务的限制
-
J. GNU通用公共许可
-
K. MySQL FLOSS许可例外
-
索引
表格清单
-
26.1. 连接属性
-
26.2. 转换表
-
26.3. 用于ResultSet.getObject()的MySQL类型和Java类型
-
26.4. MySQL对Java编码名称的翻译
示例清单
-
26.1. 从DriverManager获得连接
-
26.2. 使用java.sql.Statement执行SELECT查询
-
26.3. 存储程序示例
-
26.4. 使用Connection.prepareCall()
-
26.5. 注册输出参数
-
26.6. 设置CallableStatement输入参数
-
26.7. 检索结果和输出参数值
-
26.8. 使用Statement.getGeneratedKeys()检索AUTO_INCREMENT列的值
-
26.9. 使用SELECT LAST_INSERT_ID()检索AUTO_INCREMENT列的值
-
26.10. 在可更新的ResultSets中检索AUTO_INCREMENT列的值
-
26.11. 设置Unix环境下的CLASSPATH
-
26.12. 与J2EE应用服务器一起使用连接池
-
26.13. 重试逻辑的事务示例
这是MySQL参考手册的翻译版本,关于MySQL参考手册,请访问dev.mysql.com。 原始参考手册为英文版,与英文版参考手册相比,本翻译版可能不是最新的。