在Oracle收购了SUN公司之后, MySQL很不幸的落在了Oracle的手中,MySQL与Oracle DB存在竞争关系,很可能导致Oracle公司影响MySQL的开发与开放。MySQL之父Widenius在意识到Oracle会对MySQL做动作之前对MySQL另开了一个Branch:MariaDB。作为一个能够完全兼容MySQL的开源开放产品(向下兼容),受到了很多公司的青睐,Red Hat Fedora ,openSUSE ,维基百科,谷歌,淘宝等公司都先后把MySQLDB迁移到Maria DB,从而更好的应对未来。

当然,未来还未来,如果MariaDB的价值仅仅在未来,或许没有那么多公司愿意承担风险,进行数据库的迁移,特别是谷歌这样实力雄厚的科技公司,更不会担心技术不可控性。

  可见,哪怕是现在,Maria比之MySQL也有很多的优势:

  1. 性能提升。 http://blog.mariadb.org/sysbench-oltp-mysql-5-6-vs-mariadb-10-0/

  

  

  2. 安全透明。(完全开源,开放,MariaDB的商标属于Maria基金会,以保障MariaDB不会再次发生MySQL这种事儿 www.oschina.net/translate/mariadb-foundation-trademark-agreement )

  3. 支持更多存储引擎。(NoSql backend :Cassandra )

  4. MariaDB Galera Cluster ( http://code.oneapm.com/database/2015/07/02/mariadb-galera-cluster/ )

    • 同步复制真正的multi-master,即所有节点可以同时读写数据库。
    • 自动的节点成员控制,失效节点自动被清除。
    • 新节点加入数据自动复制;真正的并行复制,行级。
    • 用户可以直接连接集群,使用感受上与MySQL完全一致。

    优势:

    • 因为是多主,所以不存在Slavelag(延迟);
    • 不存在丢失事务的情况;同时具有读和写的扩展能力;
    • 更小的客户端延迟;
    • 节点间数据是同步的,而Master/Slave模式是异步的,不同slave上的binlog可能是不同的。

  5. 与MySQL完全兼容(至少是现在)。

  风险评估。这是最现实的问题,如果数据迁移风险过大,或者迁移之后发现Maria DB上各种不适,将会对产品造成极大的伤害。值得庆幸的是,从Maria DB的官方Blog上,我们看到MySQL可以无缝迁移到Maria的文章,还有MySQL 与Maria混用的相关实例。集群方面,Maria采用的 Galera Cluster同样适用于MySQL,应该不会有接入的风险。

   当然,还有一个因素,就是尽早迁移会尽量降低复杂度,Maria DB与MySQL未来肯定分道扬镳,兼容性会越来越差。

 

参考链接:

https://mariadb.org/

http://news.csdn.net/tag.html?tag=maria%20db

http://www.csdn.net/article/2013-07-12/2816207-5-reasons-its-time-to-ditch-mysql

http://www.oschina.net/translate/mariadb-vs-mysql-a-comparison

https://seravo.fi/2015/10-reasons-to-migrate-to-mariadb-if-still-using-mysql

http://www.oschina.net/translate/from-mysql-mmm-to-mariadb-galera-cluster-a-high-availability-makeover

为什么要 MySQL 迁移到 Maria DB的更多相关文章

  1. Maria DB数据库基础知识

    Maria DB连接 与MariaDB建立连接的一种方法是在命令提示符下使用mysql二进制文件. Maria DB命令行登录数据库服务: mysql -u root -p -- 换行输入密码 上面给 ...

  2. CentOS7系统安装 Maria Db(MYSQL)教程

    一.背景Maria Db是流行的跨平台MySQL数据库管理系统的分支,被认为是MySQL 的完全替代品.Maria Db是由Sun在Sun Micro systems合并期间被Oracle收购后,于2 ...

  3. Linux中数据库的安装和配置(MySQL与Maria DB)

    目录 MySQL和Maria DB的介绍 MySQL和Maria DB的安装 yum源安装MySQL(Centos6.5+Mysql5.1) 源码包安装MySQL yum源安装Maria DB 源码包 ...

  4. mariadb,maria db

    mariadb,maria db 继续紧逼Oracle:在占领谷歌等公司之后,MariaDB迈向企业端 发表于2013-10-25 13:00|10618次阅读|10条评论 MariaDB在Googl ...

  5. 将数据从MySQL迁移到Oracle的注意事项

    将数据从MySQL迁移到Oracle的注意事项1.自动增长的数据类型处理MYSQL有自动增长的数据类型,插入记录时不用操作此字段,会自动获得数据值.ORACLE没有自动增长的数据类型,需要建立一个自动 ...

  6. Linux 上从 MySQL 迁移到 MariaDB 的简单步骤

    大家好!这是一篇介绍如何在服务器或个人电脑上从MySQL迁移到MariaDB的教程.也许你会问为什么我们要将数据库管理从MySQL迁移到MariaDB.往下看我们告诉你为什么这样做.为什么要用Mari ...

  7. 数据库 SQL Server 到 MySQL 迁移方法总结

    最近接手一起老项目数据库 SQL Server 到 MySQL 的迁移.因此迁移前进行了一些调查和总结.下面是一些 SQL Server 到 MySQL 的迁移方法. 1. 使用 SQLyog 迁移 ...

  8. MySQL迁移[转]

    http://dbarobin.com/2015/09/15/migration-of-mysql-on-different-scenes/ MySQL 迁移方案概览 MySQL 迁移无非是围绕着数据 ...

  9. 在 Linux 中怎样将 MySQL 迁移到 MariaDB 上

    自从甲骨文收购 MySQL 后,由于甲骨文对 MySQL 的开发和维护更多倾向于闭门的立场,很多 MySQL 的开发者和用户放弃了 MySQL.在社区驱动下,促使更多人移到 MySQL 的另一个叫 M ...

随机推荐

  1. iOS学习17之OC内存管理

    1.内存管理的方式 1> iOS应用程序出现Crash(闪退),90%的原因是因为内存问题. 2> 内存问题 野指针异常:访问没有所有权的内存,如果想要安全的访问,必须确保空间还在 内存泄 ...

  2. 当编译CCBReader时出现 “ CCBAnimationManager.m Use of undeclared identifier 'other‘ ” 解决方法

    第一种解决方法是去github上下载最新的CCBReader 第二种解决方法是把other替换成self.inner 建议用新版本的

  3. [深入浅出WP8.1(Runtime)]文本块(TextBlock)

    4.3 文本块(TextBlock) 文本块(TextBlock)控件是用于显示少量文本的轻量控件,可以通过TextBlock呈现只读的文本,你可以把TextBlock控件理解为一种纯文本的展示控件. ...

  4. git 设置多项目实现多账号登陆

    9:45 2015/11/18git 设置多项目时实现多账号用户登陆git config --global user.name "your_name" git config --g ...

  5. BZOJ4518: [Sdoi2016]征途

    Description Pine开始了从S地到T地的征途. 从S地到T地的路可以划分成n段,相邻两段路的分界点设有休息站. Pine计划用m天到达T地.除第m天外,每一天晚上Pine都必须在休息站过夜 ...

  6. BZOJ3456: 城市规划

    Description 刚刚解决完电力网络的问题, 阿狸又被领导的任务给难住了. 刚才说过, 阿狸的国家有n个城市, 现在国家需要在某些城市对之间建立一些贸易路线, 使得整个国家的任意两个城市都直接或 ...

  7. 自定义plain 样式的 tableview,模拟器上不显示分割线,真机上却显示分割线.

    一, 经历 1> 自定义plain 样式的 tableview,模拟器上不显示分割线,真机上却显示cell 下面的分割线. 2> 尝试使用表格的separatorStyle属性,尝试失败. ...

  8. Java_Servlet 中文乱码问题及解决方案剖析

    一.常识了解 1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.java.nio.charset.Charset.defaultCharset() 获得 ...

  9. C#常用方法集合

    public class Utility:Page { #region 数据转换 /// <summary> /// 返回对象obj的String值,obj为null时返回空值. /// ...

  10. HTTP头部解析

    当我们打开一个网页时,浏览器要向网站服务器发送一个HTTP请求头,然后网站服务器根据HTTP请求头的内容生成当次请求的内容发送给浏览器.你明白HTTP请求头的具体含意吗?下面一条条的为你详细解读,先看 ...