西宁做网站的公司力请君博d,网站app程序制作企业,wordpress中文版主题,企业宽带 做网站起因
大约15年前#xff0c;Oracle收购了Sun公司#xff0c;从而也拥有了MySQL#xff0c;互联网上关于Oracle何时会“扼杀MySQL”的讨论此起彼伏。
当时流传着各种理论#xff1a;从彻底扼杀 MySQL 以减少对 Oracle 专有数据库的竞争#xff0c;到干掉 MySQL 开源项目Oracle收购了Sun公司从而也拥有了MySQL互联网上关于Oracle何时会“扼杀MySQL”的讨论此起彼伏。
当时流传着各种理论从彻底扼杀 MySQL 以减少对 Oracle 专有数据库的竞争到干掉 MySQL 开源项目只留下 “MySQL企业版” 作为唯一选择。这些谣言的传播对 MariaDBPostgreSQL 以及其他小众竞争者来说都是好生意因此这些谣言在当时传播得非常广泛。
然而实际上Oracle 最终把 MySQL 管理得还不错。MySQL 团队基本都保留下来了由 MySQL 老司机 Tomas Ulin 掌舵。MySQL 也变得更稳定、更安全。许多技术债务也解决了许多现代开发者想要的功能也有了例如 JSON支持和高级 SQL 标准功能的支持。
虽然有 “MySQL企业版”它实际上关注的是开发者不太在乎的企业需求如可插拔认证、审计、防火墙等。虽然也有专有的 GUI 图形界面、监控与备份工具例如 MySQL 企业监控但同样有许多开源和商业软件竞争者因此并没有产生特别大的供应商锁定效应。
在这段时间里我也常为 Oracle 辩护因为许多人都觉得 MySQL 会遭受虐待就因为 —— 它是Oracle。
我认为在那段期间Oracle 一致遵守了这个众所周知的开源成功的黄金定律“转换永远不应该妨碍采用。” 注“Conversion should never compromise Adoption” 这句话指在开发或改进开源软件时转换或升级过程中的任何变动都不应妨碍现有用户的使用习惯或新用户的加入。 近年变化
然而近些年来随着 Oracle 推出了 “MySQL Heatwave”一种 MySQL 云数据库服务事情开始起变化了。
MySQL Heatwave 引入了许多 MySQL 社区版或企业版中没有的功能例如加速分析查询与机器学习。
在“分析查询”上MySQL 的问题相当严重到现在甚至都不支持并行查询。市场上新出来的 CPU 核数越来越多都到几百个了但单核性能并没有显著增长而这严重制约了 MySQL 的分析性能提升 —— 不仅仅是分析应用的查询受限像日常应用里简单的 GROUP BY 查询也会受影响。备注MySQL 8 对 DDL 有一些 并行支持但查询没有这种支持
这么搞的原因是不是希望用户能够有更多理由去买 MySQL Heatwave但或者人们其实也可以直接选择用分析能力更强的 PostgreSQL 和 ClickHouse。
另一个开源 MySQL 极为拉垮的领域是 向量检索
其他主流开源数据库都已经添加了向量检索功能MariaDB 也正在努力实现这个功能但就目前而言MySQL 生态里只有云上限定的 MySQL Heatwave[5] 才有这个功能这实在在是令人遗憾。
然后是最奇怪的决策 —— Javascript 支持是一个只在企业版中提供的功能我认为 MySQL 应该竭尽所能地去赢得 Javascript 开发者的心而现在很多 JS 开发者都更倾向于更简单的 MongoDB 了。
我认为上述举措都违背了前面提到的开源黄金法则 —— 因为它们显然限制了 MySQL 的采用 —— 不论是这些“XX限定”的特定功能还是对 MySQL 未来政策变化的担忧。
如果这还不够MySQL 的性能也出现了严重下降似乎是因为多年来对性能工程部门的忽视[6]。与MySQL 5.6 相比单线程简单工作负载上的性能出现了大幅下滑。你可能会说增加功能难免影响性能但 MariaDB 的性能退化要轻微得多而 PostgreSQL 甚至能在 新增功能的同时显著提升性能。
显然我无法窥视甲骨文管理团队的讨论也不能说这到底是蠢还是坏但过去几年的这些产品决策显然不利于MySQL的普及特别是在同一时间PostgreSQL 在引领用户心智上大步向前在 DB-Engines 排名上大幅缩小了与 MySQL 的热度差距而根据 StackOverflow开发者调查甚至已经超过 MySQL 成为最流行的数据库了。 无论如何除非甲骨文转变其关注点顾及现代开发者对关系数据库的需求否则 MySQL 将坐以待毙 —— 无论是被 Oracle 的行为杀死还是被 Oracle 的不作为杀死。 MySQL 介绍
MySQL是一个关系型数据库管理系统由瑞典 MySQL AB 公司开发属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一在 WEB 应用方面MySQL是最好的RDBMS (Relational Database Management System关系数据库管理系统)应用软件之一。 MySQL是一种关系型数据库管理系统关系数据库将数据保存在不同的表中而不是将所有数据放在一个大仓库内这样就增加了速度并提高了灵活性。 MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策分为社区版和商业版由于其体积小、速度快、总体拥有成本低尤其是开放源码这一特点一般中小型和大型网站的开发都选择 MySQL作为网站数据库。 MySQL 特性
1MySQL使用 C和 C编写并使用了多种编译器进行测试保证了源代码的可移植性。 2支持 AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统。 3为多种编程语言提供了 API。这些编程语言包括 C、C、Python、Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。 4支持多线程充分利用 CPU 资源。 5优化的 SQL查询算法有效地提高查询速度。 6既能够作为一个单独的应用程序应用在客户端服务器网络环境中也能够作为一个库而嵌入到其他的软件中。 7提供多语言支持常见的编码如中文的 GB 2312、BIG5日文的 Shift_JIS等都可以用作数据表名和数据列名。 8提供 TCP/IP、ODBC 和 JDBC等多种数据库连接途径。 9提供用于管理、检查、优化数据库操作的管理工具。 10支持大型的数据库。可以处理拥有上千万条记录的大型数据库。 11支持多种存储引擎。 12MySQL 是开源的所以你不需要支付额外的费用。 13MySQL 使用标准的 SQL数据语言形式。 14MySQL 对 PHP 有很好的支持PHP是比较流行的 Web 开发语言。 15MySQL是可以定制的采用了 GPL协议你可以修改源码来开发自己的 MySQL 系统。 16在线 DDL/更改功能数据架构支持动态应用程序和开发人员灵活性5.6新增 17复制全局事务标识可支持自我修复式集群5.6新增 18复制无崩溃从机可提高可用性5.6新增 19复制多线程从机可提高性能5.6新增 203倍更快的性能5.7 新增 21新的优化器5.7新增 22原生JSON支持5.7新增 23多源复制5.7新增 24GIS的空间扩展5.7新增