自从2012年来,维基百科已经开始从MySQL迁移到MariaDB的过程,是维基媒体数据库架构变革的一个重大里程碑,将英文和德文版的维基百科数据库Wikidata移植到了MariaDB 5.5版本上。
在过去几年中,维基百科一直使用 Facebook 的 MySQL 5.1 衍生版本 作为我们的产品数据库,构建版本号是r3753。我们很高兴该产品的性能表现,Facebook 有着全世界最棒的数据库工程师,他们为 MySQL 生态系统带去了很多改进。
现在 MariaDB 的优化器的增强、Percona 的 XtraDB 的特性以及 Oracle 5.5 的一些原因促使我们考虑升级的问题。同样重要的是,我们作为自由文化运动的支持者,维基媒体基金会强烈希望使用自由软件项目,不希望使用不同的许可证来区分自由版和企业版,我们非常欢迎和支持 MariaDB 基金会作为一个非盈利机构对 MySQL 相关数据库社区做的工作。
在做正式迁移前我们做了大量的准备工作,包括兼容性测试和性能测试,详情请看官方说明。
MySQL是世界上最流行的开源关系数据,它的名字取 自于创始人Michael "Monty" Widenius的长女“My”。2008年,Sun收购MySQL;2009年,甲骨文收购了Sun,MySQL落入了与开源社区关系紧张的甲骨文手中。Widenius与他的旧团队在2009初创建了MySQL的分支MariaDB,它的名字取自于Widenius的幼女“Maria”,他希望通过保留核心开发者和日益增长的社区帮助MariaDB挑战甲骨文的MySQL。
甲骨文与开源社区关系的恶化正促使许多发行版用MariaDB取代MySQL,现在使用MySQL的流行网站维基百科也宣布从MySQL迁移到MariaDB,部分原因是甲骨文的MySQL有免费版和企业版,而企业版的新功能没有公开源码,而MariaDB则没有这方面的问题。
ArchLinux已宣布将使用MariaDB作为MySQL的默认提供包,openSUSE已经在新近发布的12.3版中默认使用MariaDB, 连Fedora也正在考虑更换为MariaDB....
接下来,我们就来看一下Linux环境下从MySQL迁移到MariaDB的实际操作方法。
对 Arch 用户来说很简单,照着官方新闻里面的来就是了:
systemctl stop mysqld pacman -S mariadb libmariadbclient mariadb-clients systemctl start mysqld mysql_upgrade -p
而对于 openSUSE 就更傻瓜式了,毕竟是默认的嘛: zypper in mariadb 一句就够。
至于 Debian/Ubuntu 用户就要稍微复杂一些,不过整个过程还是很流畅的:
首先到 MariaDB 官方的 Repository Configuration Tool 去选一个合适的源,然后把给出来的地址放到 /etc/apt/sources.list 文件底部:
# MariaDB 5.5 repository list - created 2013-03-26 14:20 UTC # http://mariadb.org/mariadb/repositories/ deb http://mirror2.hs-esslingen.de/mariadb/repo/5.5/debian squeeze main deb-src http://mirror2.hs-esslingen.de/mariadb/repo/5.5/debian squeeze main接下来执行以下命令:
apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db apt-get update apt-get install mariadb-server mariadb-client
于是 MySQL(或者 Percona)就自动卸载并且替换成 MariaDB 了,在某些具体环境下,可能还需要执行这些命令:
apt-get autoremove apt-get upgrade # or apt-get dist-upgrade mysql_upgrade -p
然后就搞定了!尽情折腾吧
问题内容: 我有一个现有的PHP / MySQL应用程序,我正尝试将其迁移到AngularJS / Firebase,以作为学习这些较新技术的一种方式。 该应用程序在MySQL中具有自己的表架构。一个这样的表如下所示: 我的问题是:如何将这个表结构及其中的数据从MySQL迁移到Firebase? 我尝试通过查询将数据导出到JSON字符串中,例如: 这给出了有效的JSON字符串,例如: 我将其保存在
问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 3年前关闭。 我已经将数据库从postgresql更改为mysql,但是我不知道如何将数据从一个转移到另一个。 有谁知道任何命令可以将数据库从postgresql复制/迁移到mysql? 问题答案: 几年 前面 对这个问题,并用 pg2mysql 编辑20
本文向大家介绍Linux下实现C++操作Mysql数据库,包括了Linux下实现C++操作Mysql数据库的使用技巧和注意事项,需要的朋友参考一下 想用C++写项目,数据库是必须的,所以这两天学了一下C++操作MySQL数据库的方法。也没有什么教程,就是在网上搜的知识,下面汇总一下。 连接MySQL数据库有两种方法:第一种是使用ADO连接,不过这种只适合Windows平台;第二种是使用MySQL自
本文向大家介绍PDO操作MySQL的基础教程(推荐),包括了PDO操作MySQL的基础教程(推荐)的使用技巧和注意事项,需要的朋友参考一下 PHP中的PDO扩展为PHP访问数据库定义了一个轻量级的、一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数据。 PDO支持的PHP版本为PHP5.1以及更高的版本,而且在PHP5.2下PDO默认为开启状态
move key db-index 返回1成功。0 如果key不存在,或者已经在指定数据库中
问题内容: 将Solr核心迁移到elasticsearch索引的最佳方法是什么? 不推荐使用solr-river-plugin(https://github.com/javanna/elasticsearch-river- solr )。 问题答案: OpenSource Connections中有一个不错的,由爱心人士精心制作的自定义Python工具,您可以用来执行以下操作: https://g