为什么要 MySQL 迁移到 Maria DB
在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也有很多的优势:
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未来肯定分道扬镳,兼容性会越来越差。
参考链接:
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