MySQL的命名机制使用由3个数字和一个后缀组成的版本号。例如,像mysql-5.0.9-beta的版本号这样解释:
· 第1个数字(5)是主版本号,描述了文件格式。所有版本5的发行都有相同的文件格式。
· 第2个数字(0)是发行级别。主版本号和发行级别组合到一起便构成了发行序列号。
· 第3个数字(9)是在此发行系列的版本号,随每个新分发版递增。通常你需要已经选择的发行(release)的最新版本(版本)。
每次更新后,版本字符串的最后一个数字递增。如果相对于前一个版本增加了新功能或有微小的不兼容性,字符串的第二个数字递增。如果文件格式改变,第一个数字递增。
后缀显示发行的稳定性级别。通过一系列后缀显示如何改进稳定性。可能的后缀有:
· alpha表明发行包含大量未被彻底测试的新代码。已知的缺陷应该在新闻小节被记录。在大多数alpha版本中也有新的命令和扩展。alpha版本也可能有主要代码更改等开发。但我们在发布前一定对其进行测试。
· beta意味着该版本功能是完整的,并且所有的新代码被测试了,没有增加重要的新特征,应该没有已知的缺陷。当alpha版本至少一个月没有出现报导的致命漏洞,并且没有计划增加导致已经实施的功能不稳定的新功能时,版本则从alpha版变为beta版。
在以后的beta版、发布版或产品发布中,所有API、外部可视结构和SQL命令列均不再更改。
· rc是发布代表;是一个发行了一段时间的beta版本,看起来应该运行正常。只增加了很小的修复。(发布代表即以前所称的gamma 版)
· 如果没有后缀,这意味着该版本已经在很多地方运行一段时间了,而且没有非平台特定的缺陷报告。只增加了关键漏洞修复修复。这就是我们称为一个产品(稳定)或“通用”版本的东西。
MySQL的命名机制于其它产品稍有不同。一般情况,我们可以很放心地使用已经投放市场两周而没有被相同发布系列的新版本所代替的版本。
MySQL所有版本都经过我们的标准测试和基准测试运行,以保证它们可相当安全地使用。因为标准测试不断扩充以检测以前发现的缺陷,测试套件一直在改进之中。
所有版本都至少已经用下列套件进行了测试:
· 一个内部测试套件
mysql-test目录包含一整套测试案例。我们针对每个二进制服务器进行这些测试。
· MySQL基准套件
它运行一定范围的普通查询。它也是一个测试,检测最新的优化处理是否真的使代码更快。
· crash-me测试
这尝试决定数据库支持什么功能和它的能力与限制是什么。
另一个测试是在内部生产环境中使用最新MySQL版本,至少在一台机器上。我们有超过100GB的数据可供使用。