### 附录C:感谢
在本附录中,列出了帮助MySQL达到其现状的开发人员、贡献人和支持人员。
### C.1. MySQL AB处的开发人
他们是MySQL AB公司雇佣或曾经雇佣的、负责MySQL数据库软件的开发人员,大概按照他们与我们一起工作的时间顺序排列。在每位开发人员后面,列出了其负责的一些任务,或取得的部分成就。所有的开发人员均参与支持。
· Michael (Monty) Widenius
o 领导MySQL服务器的开发人员和主要作者(**mysqld**)。
o 用于字符串库的新函数。
o 大多数mysys库。
o ISAM和MyISAM库(B-tree索引文件处理程序,以及索引压缩和不同的记录格式)。
o HEAP库。内存表系统,以及优异的全动态混编处理功能。1981年其使用,1984年左右发布。
o **replace**程序(不妨一看,它很酷!)
o Connector/ODBC (MyODBC),用于Windows的ODBC驱动程序。
o 更正了MIT-pthreads中存在的问题,使之能与MySQL服务器一起工作。以及Unireg,具备众多功能的基于光标的应用工具。
o mSQL工具的移植,如msqlperl、DBD/DBI和DB2mysql等。
o 大多数crash-me,以及MySQL基准的建立。
· David Axmark
o “参考手册”的最初主要作者,包括对**texi2html**的增强。
o 从手动更新到自动网站更新。
o 最初的Autoconf、Automake和Libtool支持。
o 许可事宜.
o 参与了所有文本文件的编制(目前仅剩下README。其余仅出现在手册中)。
o 众多对新特性的测试。
o 我方内部的免费软件法律专家。
o 邮件列表维护人(从没时间恰当维护它)。
o 我方最初的移植代码(到目前为止超过10年)。目前仅剩下mysys的一部分。
o 当他刚使新特性起作用时,是Monty半夜呼叫的重要人物。
o 首席"开放源码人员"(MySQL社区关系)
· Jani Tolonen
o ** mysqlimport**
o 对命令行的众多扩展。
o PROCEDURE ANALYSE()
· Sinisa Milivojevic(目前提供支持服务)
o 客户端/服务器协议中的压缩(用zlib)。
o 完美的混编,针对词汇分析器阶段。
o 多行INSERT。
o **mysqldump**–e选项。
o LOAD DATA LOCAL INFILE
o SQL_CALC_FOUND_ROWSSELECT选项。
o --max-user-connections=...选项。
o net_read and net_write_timeout
o GRANT/REVOKE和SHOW GRANTS FOR
o 新的客户端/服务器协议,用于4.0
o 4.0中的UNION。
o 多表DELETE/UPDATE。
o 4.1中的导出表。
o 用户资源管理。
o MySQL++ C++ API和MySQLGUI客户端的最初开发人员
· Tonu Samuel(过去的开发人员)
o VIO接口(加密客户端/服务器协议的基础)。
o MySQL Filesystem(将MySQL数据库作为文件和目录使用的一种方式)
o CASE表达式
o MD5()和COALESCE()函数。
o 对MyISAM表的RAID支持。
· Sasha Pachev(过去的开发人员)
o 最初的复制史事(直至4.0版)。
o SHOW CREATE TABLE.
o mysql-bench
· Matt Wagner
o MySQL测试套件。
o Webmaster(直到2002)。
· Miguel Solorzano(目前提供支持服务)
o Win32开发和版本创建。
o Windows NT服务器代码。
o WinMySQLAdmin
· Timothy Smith(目前提供支持服务)
o 动态字符集支持。
o 配置、RPM、以及创建系统的其他部分。
o 嵌入式服务器libmysqld的最初开发人员。
· Sergei Golubchik
o 全文本搜索。
o 为MERGE库增加了多个 键。
o 精度数学
· Jeremy Cole(过去的开发人员)
o 本精细手册的较对和编辑。
o ALTER TABLE ... ORDER BY ....
o UPDATE ... ORDER BY ....
o DELETE ... ORDER BY ....
· Indrek Siitan
o 我方Web接口的设计/编程。
o 我方时事通报管理系统的作者。
· Jorge del Conde(目前提供支持服务)
o **MySQLCC** (**MySQL****控制中心**)
o Win32开发
o 网站门户的最初实施。
· Venu Anuganti(过去的开发人员)
o MyODBC 3.51
o 用于4.1的新客户端/服务器协议(对于预处理语句)。
· Arjen Lentz(目前负责社区事宜)
o MySQL参考手册的维护人员。
o 准备了该手册的O'Reilly印刷版。
· Alexander (Bar) Barkov、Alexey (Holyfoot) Botchkov、以及Ramil Kalimullin
o 针对4.1的空间数据(GIS)和R-Trees实施。
o 用于4.1的Unicode和字符集,以及文档。
· Oleksandr (Sanja) Byelkin
o 4.0中的查询高速缓冲。
o 子查询的实施(4.1)。
o 视图和导出表的实施(5.0)。
· Aleksey (Walrus) Kishkin和Alexey (Ranger) Stroganov
o 基准设计和分析。
o MySQL测试套件的维护。
· Zak Greant(以前的雇员)
o 开放源码宣传人,MySQL社区关系。
· Carsten Pedersen
o MySQL认证计划。
· Lenz Grimmer
o 生产(创建和发布)工程。
· Peter Zaitsev
o SHA1()、AES_ENCRYPT()和AES_DECRYPT()函数。
o 调试并整理了各种特性。
· Alexander (Salle) Keremidarski
o 支持。
o 调试。
· Per-Erik Martin
o 存储程序的主要开发人员(5.0)。
· Jim Winstead
o 以前的首席Web开发人员。
o 改进了服务器,更正了缺陷。
· Mark Matthews
o Connector/J driver (Java).
· Peter Gulutzan
o SQL标准兼容。
o 现有MySQL代码/算法的文档记录。
o 字符集文档。
· Guilhem Bichot
o 复制,从MySQL 4.0板开始。
o 更正了DECIMAL指数的处理功能。
o Author of mysql_tableinfo.
o 备份(5.1中)。
· Antony T. Curtis
o 将MySQL数据库软件移植到OS/2。
· Mikael Ronstrom
o 2000年前,大量关于NDB簇的初始工作。在那时完成了约一半的代码基数。事物协议、节点恢复、系统重启、以及API功能的重启代码和部分内容。
o 1994~2004,NDB簇的首席设计师、开发人员和调试人员。
o 众多优化。
· Jonas Oreland
o 在线备份
o MySQL簇的自动测试环境
o 用于NDB簇的移植库
o 众多其他事项
· Pekka Nouisiainen
o MySQL簇的有序索引实施
o MySQL簇中的BLOB支持
o MySQL簇中的字符集支持。
· Martin Skold
o MySQL簇的为一索引实施
o 将NDB簇集成到MySQL
· Magnus Svensson
o MySQL簇的测试架构
o 将NDB簇集成到MySQL
· Tomas Ulin
o 大量关于配置变更方面的工作,简化了MySQL簇的安装和使用。
· Konstantin Osipov
o 预处理语句。
o 光标
· Dmitri Lenev
o 时区支持。
o 触发程序(5.0中)。
### C.2. MySQL贡献人
尽管MySQL AB公司拥有MySQL服务器和MySQL手册的所有版权,对那些为MySQL的发布作出这样或那样贡献的人员,我们深表感谢和赞赏。下面按一定的随机顺序列出了这些贡献者:
· Gianmassimo Vigazzola <[qwerg@mbox.vol.it](#)> or <[qwerg@tin.it](#)>
对Win32/NT的最初移植
· Per Eric Olsson
或多或少的有建设性意义的批评,以及对动态记录格式实际测试。
· Irena Pancirov <[irena@mail.yacc.it](#)>
与Borland 编译器一起使用的Win32端口。mysqlshutdown.exe和mysqlwatch.exe
· David J. Hughes
为了创建共享软件SQL数据库,在MySQL AB公司的前身TcX,我们从mSQL着手,但发现它不能满足的目的要求,因此,我们为自己的应用程序构造程序Unireg编写了SQL接口。**Mysqladmin**和**mysql**客户端是在很大程度上受其mSQL对等物影响的程序。我们进行了大量努力,努力使MySQL语法成为mSQL的超集。我们从mSQL借鉴了很多API的概念,以便能更容易地将免费的mSQL程序移植到MySQL API。MySQL软件不含任何来自mSQL的代码。分发版中的两个文件(client/insert_test.c和client/select_test.c)分别基于mSQL发布版中对应的(非版权保护)文件,但作为示例对其进行了更改,给出了从mSQL代码转换为MySQL服务器所需的更改(mSQL的版权归David J. Hughes所有)。
· Patrick Lynch
帮助我们获得[http://www.mysql.com/](http://www.mysql.com/)。
· Fred Lindberg
设置了qmail以处理MySQL邮件列表,并在管理MySQL邮件列表方面为我们提供了无与伦比的帮助。
· Igor Romanenko <[igor@frog.kiev.ua](#)>
**Mysqldump**(以前为msqldump,但被Monty移植并予以增强)。
· Yuri Dario
保持并扩展了MySQL OS/2端口。
· Tim Bunce
**mysqlhotcopy**的作者。
· Zarko Mocnik <[zarko.mocnik@dem.si](#)>
为斯洛文尼亚语进行了分类。
· "TAMITO" <[tommy@valley.ne.jp](#)>
_MB字符集宏以及ujis和sjis字符集。
· Joshua Chamas <[joshua@chamas.com](#)>
为并发插入奠定了基础,扩展了日期语法,在NT上进行了调试,并在MySQL邮件列表上回答问题。
· Yves Carlier <[Yves.Carlier@rug.ac.be](#)>
**Mysqlaccess**,显示用户访问权限的程序。
· Rhys Jones <[rhys@wales.com](#)> (And GWE Technologies Limited)
提供了早期的JDBC驱动程序之一。
· Dr Xiaokun Kelvin ZHU <[X.Zhu@brad.ac.uk](#)>
进一步发展了早期的JDBC驱动程序之一,并开发了其他与MySQL有关的Java工具。
· James Cooper <[pixel@organic.com](#)>
在他的站点建立了可搜索的邮件列表档案。
· Rick Mehalick <[Rick_Mehalick@i-o.com](#)>
贡献了xmysql,一种用于MySQL服务器的图形化X客户端。
· Doug Sisk <[sisk@wix.com](#)>
为Red Hat Linux提供了MySQL的RPM软件包。
· Diemand Alexander V. <[axeld@vial.ethz.ch](#)>
为Red Hat Linux-Alpha提供了MySQL的RPM软件包。
· Antoni Pamies Olive <[toni@readysoft.es](#)>
为Intel和SPARC提供了众多MySQL客户端的RPM版本。
· Jay Bloodworth <[jay@pathways.sde.state.sc.us](#)>
为MySQL 3.21提供了RPM版本。
· David Sacerdote <[davids@secnet.com](#)>
贡献了关于DNS主机名安全检查的多项概念。
· Wei-Jou Chen <[jou@nematic.ieo.nctu.edu.tw](#)>
对中文字符(BIG5)的一些支持。
· Wei He <[hewei@mail.ied.ac.cn](#)>
为中文字符集(GBK)提供了众多功能。
· Jan Pazdziora <[adelton@fi.muni.cz](#)>
捷克语分类顺序。
· Zeev Suraski <[bourbon@netvision.net.il](#)>
FROM_UNIXTIME()时间格式化,ENCRYPT()函数,以及**bison**顾问。主动邮件列表成员。
· Luuk de Boer <[luuk@wxs.nl](#)>
将基准套件移植到(并扩展了它)DBI/DBD。对于crash-me和运行基准很有帮助。一些新的日期函数。**mysql_setpermission**脚本。
· Alexis Mikhailov <[root@medinf.chuvashia.su](#)>
用户定义函数(UDFs),CREATE FUNCTION和DROP FUNCTION。
· Andreas F. Bobak <[bobak@relog.ch](#)>
对用户定义函数的AGGREGATE扩展。
· Ross Wakelin <[R.Wakelin@march.co.uk](#)>
帮助创建了用于MySQL-Win32的InstallShield。
· Jethro Wright III <[jetman@li.net](#)>
libmysql.dll库。
· James Pereria <[jpereira@iafrica.com](#)>
Mysqlmanager,1种用于管理MySQL服务器的Win32 GUI工具。
· Curt Sampson <[cjs@portal.ca](#)>
将MIT-pthreads移植到NetBSD/Alpha和NetBSD 1.3/i386。
· Martin Ramsch <[m.ramsch@computer.org](#)>
MySQL教程中的示例。
· Steve Harvey
使得创建**mysqlaccess**更安全。
· Konark IA-64 Centre of Persistent Systems Private Limited
[ http://www.pspl.co.in/konark/](http://www.pspl.co.in/konark/)。为MySQL服务器的Win64端口提供了帮助。
· Albert Chin-A-Young.
为Tru64配置了更新项,大文件支持和更好的TCP包装支持。
· John Birrell
模拟了用于OS/2的pthread_mutex()。
· Benjamin Pflugmann
扩展了MERGE表以处理INSERTS。MySQL邮件列表上的积极成员。
· Jocelyn Fournier
准确判定并通报了无数缺陷(尤其是在MySQL 4.1子查询代码中)。
· Marc Liyanage
维护Mac OS X软件包,并就如何创建Mac OS X PKG提供了无价的反馈意见。
· Robert Rutherford
就QNX端口提供了无价的信息和反馈。
· NDB簇以前的开发人员
以各种途径包含众多人员,访问学生、做课题的学生、雇员。总数超过100,人数太多,不可能在此意义提及。著名人员包括Ataullah Dabaghi,在1999年之前,贡献了约1/3的代码基数。特别感谢AXE系统的开发人员,该系统为具备块、信号和崩溃跟踪功能的NDB簇提供了结构基础。此外,还要感谢从1992年到现在、对这些理念坚信不疑并将其预算用于该项开发的人员。
其他的贡献人、缺陷发现人和测试人:James H. Thompson,Maurizio Menghini,Wojciech Tryc,Luca Berra,Zarko Mocnik,Wim Bonis,Elmar Haneke,<[jehamby@lightside](#)>,<[psmith@BayNetworks.com](#)>,<[duane@connect.com.au](#)>,Ted Deppner <[ted@psyber.com](#)>,Mike Simons,Jaakko Hyvatti。
此外,还有很多由邮件列表上的人员贡献的缺陷通报/补丁。
十分感谢那些帮助我们在MySQL邮件列表上回答问题的人员:
· Daniel Koch <[dkoch@amcity.com](#)>
Irix设置。
· Luuk de Boer <[luuk@wxs.nl](#)>
基准问题。
· Tim Sailer <[tps@users.buoy.com](#)>
DBD::mysql问题。
· Boyd Lynn Gerber <[gerberb@zenez.com](#)>
与SCO有关的问题。
· Richard Mehalick <[RM186061@shellus.com](#)>
与xmysql有关的问题和基本的安装问题。
· Zeev Suraski <[bourbon@netvision.net.il](#)>
Apache模块配置问题(登录和鉴定),与PHP有关的问题,与SQL语法有关的问题,以及其他一般问题。
· Francesc Guasch <[frankie@citel.upc.es](#)>
一般问题。
· Jonathan J Smith <[jsmith@wtp.net](#)>
与Linux操作系统有关的问题,SQL语法,以及需要某些工作的其他事宜。
· David Sklar <[sklar@student.net](#)>
从PHP和Perl使用MySQL。
· Alistair MacDonald <[A.MacDonald@uel.ac.uk](#)>
尚未指定,但很灵活,并能处理与Linux以及或许HP-UX有关的问题,帮助用户使用**mysqlbug**。
· John Lyon <[jlyon@imag.net](#)>
关于在Linux系统上安装MySQL的问题,使用.rpm文件,或从源码进行编译。
· Lorvid Ltd. <[lorvid@WOLFENET.com](#)>
简单的记账/许可/支持/版权事宜。
· Patrick Sherrill <[patrick@coconet.com](#)>
与ODBC和VisualC++接口有关的问题。
· Randy Harmon <[rjharmon@uptimecomputers.com](#)>
与DBD、Linux、以及一些SQL语法有关的问题。
### C.3. 资料员和译员
下述人员帮助我们编写了MySQL文档,并翻译了文档以及MySQL中的错误信息。
· Paul DuBois
正在为本手册的正确性和可理解性提供帮助。包括改写了Monty和David的英文尝试,使其成为其他人理解的英语。
· Kim Aldale
帮助改写了Monty和David的英文早期尝试,将其改写为英语。
· Michael J. Miller Jr. <[mke@terrapin.turbolift.com](#)>
第1版MySQL手册。更正了关于常见问题的很多拼写/语言问题(很久以前被纳入MySQL手册)。
· Yan Cailin
2000年初,将MySQL参考手册翻译为简体中文的译员,Big5和HK编码([http://mysql.hitstar.com/](http://mysql.hitstar.com/))版本以其翻译本为基础。[在linuxdb.yeah.net上的个人主页](http://linuxdb.yeah.net)。
· Jay Flaherty <[fty@mediapulse.com](#)>
本手册中Perl DBI/DBD一节的很大部分。
· Paul Southworth <[pauls@etext.org](#)>, Ray Loyzaga <[yar@cs.su.oz.au](#)>
校对参考手册。
· Therrien Gilbert <[gilbert@ican.net](#)>, Jean-Marc Pouyot <[jmp@scalaire.fr](#)>
法语错误消息。
· Petr Snajdr, <[snajdr@pvt.net](#)>
捷克语错误消息。
· Jaroslaw Lewandowski <[jotel@itnet.com.pl](#)>
波兰语错误消息。
· Miguel Angel Fernandez Roiz
西班牙语错误消息。
· Roy-Magne Mo <[rmo@www.hivolda.no](#)>
挪威语错误消息,以及MySQL 3.21.xx的测试。
· Timur I. Bakeyev <[root@timur.tatarstan.ru](#)>
俄语错误消息。
· <[brenno@dewinter.com](#)> & Filippo Grassilli <[phil@hyppo.com](#)>
意大利语错误消息。
· Dirk Munzinger <[dirk@trinity.saar.de](#)>
德语错误消息。
· Billik Stefan <[billik@sun.uniag.sk](#)>
斯洛伐克语错误消息。
· Stefan Saroiu <[tzoompy@cs.washington.edu](#)>
罗马尼亚语错误消息。
· Peter Feher
匈牙利语错误消息。
· Roberto M. Serqueira
葡萄牙语错误消息。
· Carsten H. Pedersen
丹麦语错误消息。
· Arjen G. Lentz
荷兰语错误消息,完成了早期的部分翻译(也负责一致性和拼写问题)。
### C.4. MySQL使用和包含的库
下面列出了在MySQL服务器源码中包含的库的创建人,源码简化了MySQL的编译和安装。对于创建这些库的所有个人我们深表谢意,它使得我们的生活变得简单。
· Fred Fish
感谢他提供的优异C调试和跟踪库。Monty对库进行了大量的小改进(速度和额外选项)。
· Richard A. O'Keefe
感谢他提供的公共域字符串库。
· Henry Spencer
感谢他的regex库,用在WHERE列REGEXP regexp中。
· Chris Provenzano
便携用户级别的pthreads。由于版权:本产品包含由加利福尼亚大学伯克利分校的Chris Provenzano以及多名贡献人开发的软件。我们目前使用的是由Monty修补的1_60_beta6版(请参见mit-pthreads/Changes-mysql)。
· Jean-loup Gailly and Mark Adler
zlib库(用于Windows平台上的MySQL)。
· Bjorn Benson
感谢他的safe_malloc(内存检验器)软件包,当你用“--debug”配置MySQL时将用到它。
· Free Software Foundation
readline库(由**mysql**命令行客户端使用)。
· The NetBSD foundation
libedit软件包(可被**mysql**命令行客户端使用)。
### C.5. 支持MySQL的软件包
下面列出了一些最重要API/软件包/应用程序的创建人和维护人,很多人员与MySQL一起使用了它们。
我们无法在此列出所有的软件包,这是因为,如果这样,该列表将很难维护。关于其他软件包,请访问软件门户站点[http://solutions.mysql.com/software/](http://solutions.mysql.com/software/)。
· Tim Bunce, Alligator Descartes
DBD (Perl)接口。
· Andreas Koenig <[a.koenig@mind.de](#)>
用于MySQL服务器的Perl接口。
· Jochen Wiedmann <[wiedmann@neckar-alb.de](#)>
维护Perl DBD::mysql模块。
· Eugene Chan <[eugene@acenet.com.sg](#)>
移植针对MySQL服务器的PHP。
· Georg Richter
MySQL 4.1测试和缺陷追踪。新的PHP 5.0 mysqli扩展(API),用于MySQL 4.1和更高版本。
· Giovanni Maruzzelli <[maruzz@matrice.it](#)>
移植iODBC (Unix ODBC)。
· Xavier Leroy <[Xavier.Leroy@inria.fr](#)>
LinuxThreads的作者(供Linux平台上的MySQL服务器使用)。
### C.6. 用于创建MySQL的工具
下面列出了一些我们用于创建MySQL的工具。我们借此表达对那些创建了它们的人员的谢意,如果没有它们,我们将无法使MySQL达到目前的状况。
· 自由软件基金会
从该基金会,我们获得了优异的编译器(**gcc**),良好的调试器(**gdb)**和libc库(我们从中借用了strto.c,从而使得部分代码能工作在Linux环境下)。
· 自由软件基金会和Xemacs开发团队
MySQL AB公司几乎人员使用的强大的编辑器/环境。
· Julian Seward
valgrind的作者,valgrind是一种优异的内存检验器工具,它帮助我们找到了MySQL中很多用其他方法难以发现的缺陷。
· Dorothea Lutkehaus和Andreas Zeller
DDD(数据显示调试器),1种优秀的gdb图形前端。
### C.7. MySQL支持人员
尽管MySQL AB公司拥有MySQL服务器和MySQL手册的所有版权,对那些从财政上帮助我们开发MySQL服务器(如向我们支付开发新特性的费用,或为我们提供用于MySQL服务器开发的硬件)的下述公司,我们深表感谢和赞赏。
· VA Linux / Andover.net
资助复制。
· NuSphere
MySQL手册的编辑。
· Stork Design studio
1998-2000期间使用的MySQL网站。
· Intel
为Windows和Linux平台上的开发提供了捐助。
· Compaq
为Linux/Alpha平台上的开发提供了捐助。
· SWSoft
嵌入式**mysqld**版本的开发
· FutureQuest
--skip-show-database
这是MySQL参考手册的翻译版本,关于MySQL参考手册,请访问[dev.mysql.com](http://dev.mysql.com/doc/mysql/en)。 原始参考手册为英文版,与英文版参考手册相比,本翻译版可能不是最新的。
- 前言
- 1. 一般信息
- 2. 安装MySQL
- 3. 教程
- 4. MySQL程序概述
- 5. 数据库管理
- 6. MySQL中的复制
- 7. 优化
- 8. 客户端和实用工具程序
- 9. 语言结构
- 10. 字符集支持
- 11. 列类型
- 12. 函数和操作符
- 13. SQL语句语法
- 14. 插件式存储引擎体系结构
- 15. 存储引擎和表类型
- 16. 编写自定义存储引擎
- 17. MySQL簇
- 18. 分区
- 19. MySQL中的空间扩展
- 20. 存储程序和函数
- 21. 触发程序
- 22. 视图
- 23. INFORMATION_SCHEMA信息数据库
- 24. 精度数学
- 25. API和库
- 26. 连接器
- 27. 扩展MySQL
- A. 问题和常见错误
- B. 错误代码和消息
- C. 感谢
- D. MySQL变更史
- E. 移植到其他系统
- F. 环境变量
- G. MySQL正则表达式
- H. MySQL中的限制
- I. 特性限制
- J. GNU通用公共许可
- K. MySQL FLOSS许可例外
- 索引