本文将详细解释MySQL不再支持Berkeley DB添加插件的示例分析。边肖觉得挺实用的,就分享给大家参考。希望你看完这篇文章能有所收获。
在最新的5.1.12版本中,MySQL将从支持的数据库引擎列表中删除Berkeley DB(BDB)存储引擎。一些观察人士认为,这一行动与甲骨文收购Sleepycat有关,下一个可能被移除的可能是InnoDB。不过,MySQL架构总监Brian Aker表示,他们不会放弃InnoDB,伯克利引擎也是因为技术原因被放弃。Brian Ackell还宣布,MySQL将为MySQL发布一个新的memcache存储引擎插件。
这件事和甲骨文收购Sleepycat和Innobase的消息之间的关系显而易见。有人认为甲骨文试图摧毁MySQL的业务,放弃支持BDB引擎的决定。但阿克尔表示,事实并非如此。
MySQL和Oracle都有自己的看法。
如果不是为了神谕,为什么要放弃BDB?一种可能是BDB发动机没有被广泛使用。Ackell表示,Debian应该是唯一有BDB支持的MySQL合作伙伴,“MySQL主程序启用它的方式也很奇怪”。“我相信实际安装的只有少数几个。不是BDB引擎本身不好,主要原因是InnoDB有更积极的开发团队支持。在开源世界中,活动代码是其广泛使用的主要原因。”
甲骨文公司嵌入式系统营销副总裁王皓琨说,实际上是伯克利数据库开发团队要求取消支持。“据我们所知,Berkeley DB现在几乎已经不在MySQL中使用了,所以我们(Oracle)的用户组之间没有冲突。”
虽然BDB没有被广泛使用,但阿克尔说,BDB不会从MySQL 5.0和更早的版本中消失。因此,安装了MySQL 4.x或MySQL 5.0.x并使用BDB的用户无需担心。阿克尔还强调,“MySQL从未为BDB提供过商业支持,因此没有必要做任何改变。”
关于放弃BDB,MySQL没有说太多,但写在了5.1.12版本的MySQL更新说明中。5.1版本一直被认为是测试版,5.1.12还没有发布,所以MySQL没有就此事发布官方声明也就不足为奇了。
有专门的分析师抱怨这是MySQL缺乏与用户沟通的表现之一,认为InnoDB很可能会成为下一个受害者。
Ackell表示,放弃BDB并不意味着我们接下来会攻击InnoDB,也不意味着在InnoDB被甲骨文收购后,MySQL会放弃InnoDB存储引擎。“我的狗总是认为所有的松鼠都是小偷。上周花了几个小时整理InnoDB接口的代码。发现海基还加了新代码。几个月前,我谈到了如何扩展MySQL中的SQL语法,以平衡InnoDB中的全文搜索支持。没有迹象表明InnoDB会消失,也没有迹象表明甲骨文会停止支持它。”而MySQL为什么要抛弃InnoDB呢?我们的许多用户仍然在使用它。我做网站的时候也需要它,所以我个人希望它能顺利运行。"
甲骨文嵌入式系统营销副总裁王力克指出,甲骨文将继续支持MySQL的InnoDB存储引擎。“InnoDB是目前MySQL中使用最广泛的事务性数据存储引擎,Oracle将继续为MySQL提供InnoDB支持,包括推动更新和全面支持。因此,MySQL和Oracle没有必要继续支持第二个事务性存储引擎Berkeley DB。”他强调,BDB是MySQL的第一个事务引擎,但InnoDB发展迅速,成为用户的首选。“因为InnoDB完全支持MySQL这个唯一的用户,而Berkeley DB却要面对一系列的用户和开源社区。MySQL使用的是BDB的修改版本,驱动程序本身并没有针对它进行优化,这个版本已经维护了很多年。InnoDB一直在优化MySQL,现在已经成熟稳定了。”
插件:插件有人吗?
开源的好处是任何需要的人都可以选择使用。如果开源社区有兴趣继续支持BDB,Ackell认为将BDB做为存储引擎插件是非常容易的。给出了不集成就添加MySQL作为插件的引擎实例,如PrimeBase XT的MySQL事务引擎和Solid Information Technology的MySQL存储引擎。
Ackell还提到了他开发的memcache存储引擎插件,可以直接将Memcached函数添加到MySQL中,而无需单独运行Memcached。Memcached是一些高流量网站(如LiveJournal)的一个工具,通过允许访问者在不访问磁盘的情况下访问内存信息来提高性能。Ackell说,使用Memcache作为存储引擎将使开发人员更容易。“数据的往返成本将得到控制,因为数据可以直接从数据库传输。您也可以简单地使用SELECT语句来比较memcache和数据库内容之间的差异。它更易于使用,更易于集成,并且往返数据更少.把这一切都考虑进去是一个非常好的主意。”
这个插件还在早期开发中。Ackell称之为“Alpha前版本”,所以有些SQL语句可能不会在memcache中运行。Ackell表示,SELECT、UPDATE、DELETE和INSERT语句都可以运行,但有些语句如ORDER BY和REPLACE还不能运行。
Memcache会成为MySQL的主流组件吗?Ackell说,“这取决于需求和用途。目前在MySQL主线之外开发memcache更快。我相信有一天我能把它们结合起来。”
这篇关于“MySQL不再支持伯克利DB添加插件”的文章就分享到这里。希望
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/149948.html