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。
原始参考手册为英文版,与英文版参考手册相比,本翻译版可能不是最新的。