搜索
首页数据库mysql教程 MySQL再度失势:继维基百科之后,Google也迁移到了MariaDB

请大家先看一下:对子查询优化,各版本的执行计划,就不难发现为啥谷歌要把MySQL给抛弃了。很好的一个产品,被Oracle做成了这样。。。摘要:即使饱受非议,MySQL

请大家先看一下:对子查询优化,各版本的执行计划,就不难发现为啥谷歌要把MySQL给抛弃了。


wKiom1NfVryz56B1AAKC3iZzByU389.jpg

wKioL1NfVpOip4c7AAKT3Ys8zWc220.jpg

wKiom1NfVr3SwMqYAAKzETLgqYM238.jpg

很好的一个产品,被Oracle做成了这样。。。


摘要:即使饱受非议,MySQL当下仍然是开源数据库的人气之王。然而光鲜的背后,其神位似乎已摇摇欲坠。继维基百科及多家Linux发行公司弃用MySQL之后,互联网巨头Google也果断使用MariaDB来替换公司内上万的MySQL实例。


尽管被Oracle捕获后,MySQL上的争议就从未停止;但时至今日,MySQL仍是最具人气的开源数据库:

wKiom1NfVxjzLhOsAAGNNaF2rQU448.jpg

简单、免费、扩展性、相对成熟等一直都是MySQL的吸引所在,然而随着自身脚步的放缓、各个竞争对手的追赶,这些杀手级特性已不在有吸力(甚至沦为弱势)。虽然PostgreSQL一直被当作MySQL的直接竞争对手,然而真正给予其致命一击的似乎更像是MariaDB,这个由MySQL旧部所开发的产品。

那些年被重量级用户抛弃的MySQL

MySQL在各大Linux发行版中的失势

由于不满MySQL被Oracle收购后的日渐封闭与缓慢的更新,众多Linux发行版逐渐抛弃了这个人气开源数据库,而转向了MariaDB,其中包括:

以上是一些不完全的统计(比如还有 openSUSE等等),同时我们也相信,随着MariaDB得到更多的认可,类似的更替将出现在更多的Linux发行版中。


MySQL在重量级公司中的失势

  • Apple:在2011年Sun被Oracle收购不久后,Apple就抛弃了MySQL。当然,他们选择的是PostgreSQL,这里不得不佩服一下Apple高层的远见。

  • Wikipedia:在2012年底,Wikipedia曾公布了一个测试:英文维基的一个从(slave)数据库从MySQL5.1 + Facebook补丁集迁移到了MariaDB 5.5.28。通过全面测试发现,MariaDB的查询效率提升了3%-15%,平均提升了8%,期间并没有任何异常发生;以qp为单位,吞吐量提升了2%-10%。而时隔将近半年,Wikipedia已正式完成迁移。

  • 互联网巨头Google的倒戈

    作为最具人气开源数据库,MySQL绝非浪得虚名——除了Apple之外,,Google、Facebook、Twitter也大量使用了MySQL,纷纷发布了自己的MySQL分支/补丁集,并为不少公司所采用。然而据国外媒体Theregister了解到,搜索巨头谷歌正在致力于MySQL到MariaDB的迁移,远离这个Oracle支持下的开源数据库:

    消息来自11日斯坦福的Extremely Large Databases会议上,在Google指派了一个工程师去MariaDB基金会的一星期后。虽然消息并非Google官方发布,但是却是基于Google高级系统工程师 Jeremy    Cole对MySQL生态系统现状的展示。

    据悉,为了让MariaDB更有效,Google正在致力于对它的升级和修补——用以迁移Google上万的MySQL实例。Cole说道:

    当下主要运行的MySQL 5.1版本已经不能匹配公司的脚步,因此我们转移到了MariaDB 10.1。

    根据SkySQL(MariaDB合并后的公司名,大部分员工由MySQL旧部组成,点击查看详情)Patrik Sallner还透露,在年初Google已经开始与MariaDB基金会达成协作:

    他们将先前许多运行在MySQL上的数据库迁移至了MariaDB,我们已经与他们达成合作来致力特性的开发,帮助完成这项迁移。对于我们来说,这是个非常好的借鉴。

    Cole还透露,迁移将涉及到上万台的MySQL服务器,当下两个公司正在致力MariaDB可靠性及特性的研发。

    同时,Google会将所有MySQL服务器转换成MariaDB。不管Oracle动机与否,通过这项举措,Google将完全消除对其技术的依赖。自MySQL 4.0版本以来,这个开源数据库(经大量修改)就在Google大量使用,最近使用的版本是5.1。据Cole了解到,MariaDB 10.0大致相当于MySQL5.6版本,因此工作量并不是很大。在被问到为什么会选择MariaDB作为MySQL替代,Cole如此解释:

    在我看来,除下个别特性及实现方法,两个数据库有着太多相同的特性。但是在理念上,它们却存在着众多的不同。我很希望看到MySQL能有一个单独的社区,然而在Oracle的统治下显然并不可能,而MariaDB的未来则存在太多的可能。

    Google大范围的MariaDB可能会从Chocolate Factory尝试开始,用以减少开发者对MySQL的依赖,同样也是对Oracle开源数据库生态系统影响力的削弱。

    写在最后

    基于Google在开发者心目中的地位,这一举措对MySQL的影响可想而知。虽然我们无法理解Oracle当初间接收购MySQL的动机所在,但是却可以断定当下的局面绝对不是这个数据库巨头想看到的。在未来,MySQL的地位可能会受到更多数据库管理系统的威胁,然而当下给予其“致命一击”的显然当属MariaDB!(审校/王鹏)


    文章转自:



    本文出自 “贺春旸的技术专栏” 博客,请务必保留此出处

    声明
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
    MySQL的位置:数据库和编程MySQL的位置:数据库和编程Apr 13, 2025 am 12:18 AM

    MySQL在数据库和编程中的地位非常重要,它是一个开源的关系型数据库管理系统,广泛应用于各种应用场景。1)MySQL提供高效的数据存储、组织和检索功能,支持Web、移动和企业级系统。2)它使用客户端-服务器架构,支持多种存储引擎和索引优化。3)基本用法包括创建表和插入数据,高级用法涉及多表JOIN和复杂查询。4)常见问题如SQL语法错误和性能问题可以通过EXPLAIN命令和慢查询日志调试。5)性能优化方法包括合理使用索引、优化查询和使用缓存,最佳实践包括使用事务和PreparedStatemen

    MySQL:从小型企业到大型企业MySQL:从小型企业到大型企业Apr 13, 2025 am 12:17 AM

    MySQL适合小型和大型企业。1)小型企业可使用MySQL进行基本数据管理,如存储客户信息。2)大型企业可利用MySQL处理海量数据和复杂业务逻辑,优化查询性能和事务处理。

    幻影是什么读取的,InnoDB如何阻止它们(下一个键锁定)?幻影是什么读取的,InnoDB如何阻止它们(下一个键锁定)?Apr 13, 2025 am 12:16 AM

    InnoDB通过Next-KeyLocking机制有效防止幻读。1)Next-KeyLocking结合行锁和间隙锁,锁定记录及其间隙,防止新记录插入。2)在实际应用中,通过优化查询和调整隔离级别,可以减少锁竞争,提高并发性能。

    mysql:不是编程语言,而是...mysql:不是编程语言,而是...Apr 13, 2025 am 12:03 AM

    MySQL不是一门编程语言,但其查询语言SQL具备编程语言的特性:1.SQL支持条件判断、循环和变量操作;2.通过存储过程、触发器和函数,用户可以在数据库中执行复杂逻辑操作。

    MySQL:世界上最受欢迎的数据库的简介MySQL:世界上最受欢迎的数据库的简介Apr 12, 2025 am 12:18 AM

    MySQL是一种开源的关系型数据库管理系统,主要用于快速、可靠地存储和检索数据。其工作原理包括客户端请求、查询解析、执行查询和返回结果。使用示例包括创建表、插入和查询数据,以及高级功能如JOIN操作。常见错误涉及SQL语法、数据类型和权限问题,优化建议包括使用索引、优化查询和分表分区。

    MySQL的重要性:数据存储和管理MySQL的重要性:数据存储和管理Apr 12, 2025 am 12:18 AM

    MySQL是一个开源的关系型数据库管理系统,适用于数据存储、管理、查询和安全。1.它支持多种操作系统,广泛应用于Web应用等领域。2.通过客户端-服务器架构和不同存储引擎,MySQL高效处理数据。3.基本用法包括创建数据库和表,插入、查询和更新数据。4.高级用法涉及复杂查询和存储过程。5.常见错误可通过EXPLAIN语句调试。6.性能优化包括合理使用索引和优化查询语句。

    为什么要使用mysql?利益和优势为什么要使用mysql?利益和优势Apr 12, 2025 am 12:17 AM

    选择MySQL的原因是其性能、可靠性、易用性和社区支持。1.MySQL提供高效的数据存储和检索功能,支持多种数据类型和高级查询操作。2.采用客户端-服务器架构和多种存储引擎,支持事务和查询优化。3.易于使用,支持多种操作系统和编程语言。4.拥有强大的社区支持,提供丰富的资源和解决方案。

    描述InnoDB锁定机制(共享锁,独家锁,意向锁,记录锁,间隙锁,下一键锁)。描述InnoDB锁定机制(共享锁,独家锁,意向锁,记录锁,间隙锁,下一键锁)。Apr 12, 2025 am 12:16 AM

    InnoDB的锁机制包括共享锁、排他锁、意向锁、记录锁、间隙锁和下一个键锁。1.共享锁允许事务读取数据而不阻止其他事务读取。2.排他锁阻止其他事务读取和修改数据。3.意向锁优化锁效率。4.记录锁锁定索引记录。5.间隙锁锁定索引记录间隙。6.下一个键锁是记录锁和间隙锁的组合,确保数据一致性。

    See all articles

    热AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智能驱动的应用程序,用于创建逼真的裸体照片

    AI Clothes Remover

    AI Clothes Remover

    用于从照片中去除衣服的在线人工智能工具。

    Undress AI Tool

    Undress AI Tool

    免费脱衣服图片

    Clothoff.io

    Clothoff.io

    AI脱衣机

    AI Hentai Generator

    AI Hentai Generator

    免费生成ai无尽的。

    热门文章

    R.E.P.O.能量晶体解释及其做什么(黄色晶体)
    3 周前By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O.最佳图形设置
    3 周前By尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O.如果您听不到任何人,如何修复音频
    3 周前By尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25:如何解锁Myrise中的所有内容
    4 周前By尊渡假赌尊渡假赌尊渡假赌

    热工具

    适用于 Eclipse 的 SAP NetWeaver 服务器适配器

    适用于 Eclipse 的 SAP NetWeaver 服务器适配器

    将Eclipse与SAP NetWeaver应用服务器集成。

    禅工作室 13.0.1

    禅工作室 13.0.1

    功能强大的PHP集成开发环境

    SecLists

    SecLists

    SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

    Dreamweaver CS6

    Dreamweaver CS6

    视觉化网页开发工具

    螳螂BT

    螳螂BT

    Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。