MYSQL时代是否将结束
前言
已知MariaDB预计于今年下半年将以spac形式完成上市,最近也看了不少文章,发现MariaDB正在以一个迅猛的速度超越mysql,mysql 可以说是开源数据库中最具代表性的一个,甚至可以说是一个时代,但MariaDB在一定程度上也确实表现出了优于mysql的特性,这让MySQL的未来发展形式让人担忧。从以下几个方面可以得出上述结论

出身
它是由MySQL的创始人Michael Widenius主导开发的,MySQL数据库中最重要的一个分支,之后SUN收购 了MySQL,于是就有了Oracle MySQL这个分支,在SUN被Oracle收购后,MySQL的所有权也落入Oracle的手中。之后 Michael Widenius在2009年创立了MariaDB。是完全兼容MySQL的存在。事实证明MariaDB的更新版本早已经超过了Oracle维护下的MySQL版本,所以MariaDB的血统在根本上说就是继承于mysql,而当下的mysql8.x版本及以后都是拥有oracle血统的mysql,这之中就有了商业模式的区别,oracle是闭源产品,而原先的mysql及现在的MariaDB仍选择开源商业模式,模式不同盈利手段也就不多做赘述。
发展潜力
MariaDB 根据当下云时代的市场特性推出了两款产品即SkySQL和Enterprise
SkySQL是MariaDB在2020年推出的企业级数据库即服务,增速迅猛、存储安全性等方面的表现均比mysql,AuroraDB更出色。以容器为基础,更能够跨云部署迁移,其Xpand技术,可以将资料切分成片,并且同步对扩展的数据库节点写入资料,由于资料能够在多节点同时读取和写入,因此分布式SQL不只可以提供线性的规模扩展,同时也能保持交易强一致性和ACID特性。
MariaDB Xpand可以容忍单节点故障,因为Xpand会跨多个数据库节点,存储资料的冗余副本,而分布式SQL的节点故障容忍程度更高,SkySQL上的Xpand在云计算地区(Region)中的不同区域(Zone)分散冗余副本,比如说上海区的云服务器上的数据,在北京区的服务器上同样可以并存,官方提到,即便整个区域都故障,用户也不会丢失任何资料,因为至少有一个人信息料副本存储在另一个区域中,容灾能力更强。
Enterprise作为MariaDB基于服务器端的企业版本,Enterprise旨在将开源与企业功能相结合,具有更强的可靠性和稳定性,并包含许多向后兼容的功能,让企业不需要经常性的承担升级的风险和不确定性,但同时又能使用新功能。其主要竞品正是如今隶属于Oracle的MySQL。

兼容性
从兼容性上来说MariaDB简直可以说是完败mysql,就单单MariaDB的向后兼容就可以让从众多用户不必担心升级带来的影响,而反观mysql从mysql5.X到mysql8.X就是不可逾越的(这其中当然原因也比较复杂),两者技术同源,而MariaDB可以对MySQL实现一键迁移,并且不论是在数据写入或是查询方面,都更有优势。
可替代性
讲到可替代性,对于中小企业来说理由就很简单了,就是性价比,说的直白了就是谁更稳定,更便宜就选择谁,在这上面可不存在什么情怀,对于程序员来说就更是如此了,老板,客户用什么数据库,就掌握什么技能就行了,需要考虑的就是稳定性,和升级问题,安全问题等等,学了mysql的在MariaDB上依旧可以操作,完全属于平滑过渡,但随着版本更新,差异也会雨来越大,最后也必须回归到二选一的局面。
MYSQL时代是否将结束的更多相关文章
- [CB]Intel 2018架构日详解:新CPU&新GPU齐公布 牙膏时代有望明年结束
Intel 2018架构日详解:新CPU&新GPU齐公布 牙膏时代有望明年结束 北京时间12月12日晚,Intel在圣克拉拉举办了架构日活动.在五个小时的演讲中,Intel揭开了2021年CP ...
- MySql开始日期、结束日期查询
str_to_date('2016-08-24', '%Y-%m-%d %H') validStartTime str_to_date('2016-09-16', '%Y-%m-%d %H') val ...
- mysql 查询表死锁 和结束死锁的表步骤
1.查询是否锁表 show OPEN TABLES ; 2.查询进程 show processlist 查询到相对应的进程===然后 kill id 3.查看正在锁的事务 SELECT * FR ...
- mysql查询表死锁和结束死锁的方法
1.查询是否锁表 show open tables where in_use>0; 2.查询进程 show processlist 查询到相对应的进程,然后 kill id 3.查看正在锁的事务 ...
- mysql 查询表死锁 和结束死锁的表步骤以及锁表等级
1.查询是否锁表show OPEN TABLES where In_use > 0; 2.查询进程 show processlist 查询到相对应的进程===然后 kill id 补充: ...
- 数据库 之MySQL 简单教程
So Easy系列之MySQL数据库教程 1. 数据库概述 1.1. 数据库概述 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和 ...
- MySQL操作使用
这只是一些简单的数据库命令,作为新手记录一下,以供后面查询使用. 查询服务器版本号和当前日期: select version(), current_date; 一个命令通常用一个SQL语句组成,后面跟 ...
- Windows mysql提示:1045 access denied for user 'root'@'localhost' using password yes
Windows mysql提示:1045 access denied for user 'root'@'localhost' using password yes http://blog.csdn.n ...
- 平时一些mysql小技巧及常识
>navicat premium 快捷键1.ctrl+q 打开查询窗口2.ctrl+/ 注释sql语句3.ctrl+shift +/ 解除注释4.ctrl+r 运行查询窗口的sql语句5.ctr ...
随机推荐
- 【分布式技术专题】「Zookeeper中间件」给大家学习一下Zookeeper的”开发伴侣”—Curator-Framework(基础篇)
CuratorFramework基本介绍 CuratorFramework是Netflix公司开源的一套Zookeeper客户端框架,它作为一款优秀的ZooKeeper客户端开源工具,主要提供了对客户 ...
- Java反射详解:入门+使用+原理+应用场景
反射非常强大和有用,现在市面上绝大部分框架(spring.mybatis.rocketmq等等)中都有反射的影子,反射机制在框架设计中占有举足轻重的作用. 所以,在你Java进阶的道路上,你需要掌握好 ...
- 解决excel两表之间数据关联关系,知道这几招就够了
用过SAP的凭证批量录入模板(Excel文件)的都知道,一个凭证由[抬头]和多个[行项目]组成,这是一个关于excel两表信息关联的典型场景. 这里头蕴藏着一个麻烦:当我们需要一次性录入多个凭证时,如 ...
- 【刷题-LeetCode】208. Implement Trie (Prefix Tree)
Implement Trie (Prefix Tree) Implement a trie with insert, search, and startsWith methods. Example: ...
- 【记录一个问题】redis中执行事务出现错误“EXECABORT Transaction discarded because of previous errors”
执行事务的大致代码如下: redisClient := GetRedisClient() pipe := redisClient.TxPipeline() err := pipe.ZAdd(k, ar ...
- 游戏mod启动器原理
基本原理 游戏程序会按一定顺序读取游戏文件夹根目录的文件. 所以我们制作mod和补丁的时候需要使得我们的文件先读取,从而使得后面读取到重复内容时候,游戏运行的内存中舍弃掉原本的文件. 游戏mod启动器 ...
- elasticsearch源码分析及插件开发
ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Apach ...
- 网络支持IPV6地址测试校验与思考
概述 大背景:随着移动端的快速扩张,互联网的规模越来越广阔,早于2011年耗尽的IPV4地址越来越无法满足互联网的网络地址需求,IPV6地址推广进入快车道.实际情况:近期公司应上级部门邀请对公司的主域 ...
- spring内嵌cglib包,这里藏着一个大坑
问题发现 2022-01-21 早上 9 点,订单系统出现大面积的"系统未知错误"报错,导致部分用户无法正常下单.查询后台日志,可以看到大量的 duplicate class at ...
- 简单socket服务器编程
package socket; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; ...