从MySQL迁移到MariaDB很容易!

谈到(关系型)数据库,MySQL一直是无可争议的赢家。

但现在它面临着严重的竞争!

与其他数据库比较不同,MySQL vs. MariaDB这个比较几乎没有真正的、客观的价值。它们几乎是一样的(而且在一段时间内它们确实是一样的!),有相同的目录结构和语法,以及相同的性能。

是的,在MariaDB的10版发布之后,事情开始变得更加分歧,但是运行MariaDB的命令甚至被称为“mysql”!

所以,当你在这里学习如何从MySQL迁移到MariaDB时,我认为了解这个突然出现的竞争对手是非常有趣的。如果你是MySQL的新手,那么你可能考虑参加这个online course

MariaDB的故事背后

不打算完全展开百科全书模式,让我简要介绍一下主要内容。

MySQL最初于1995年由Michael Widenius发布,作为对限制性、昂贵的产品(如微软的SQL Server或甲骨文的套件)的替代品。而剩下的,就像他们所说的那样,已经是历史了:MySQL变得如此受欢迎,以至于开发者很快忘记了SQL和MySQL是两个不同的东西。估计有所不同,但可以说,截至目前,MySQL在数据库市场上占据了接近45%的份额。

来源:eversql.com

长话短说,MySQL被Sun Microsystems收购,而后者又被……没错,Oracle收购了。结果,最大的开源数据库引擎现在归最成功的商业数据库公司所有了。对于MySQL的原始创造者来说,这是一个被数百万人使用和喜爱的数据库引擎的丧钟。

他们feared,Oracle只关心MySQL惊人的用户群,会逐渐扼杀项目的精神,并且对其进行大规模商业化。

结果,一个名为MariaDB的纯GPL分支在2010年诞生。

那么,你应该迁移到MariaDB吗?

很难说是这样还是那样,对于独立开发者来说,没有什么区别。就受欢迎程度而言,MariaDB仍然远远落后于MySQL,但人们开始知道它了。

例如,WordPress的安装常见问题中同时提到了MySQL和MariaDB。

对于长期解决方案的大型团队而言,这取决于他们有多少信任Oracle能够保持MySQL原本的理念。很难说他们会在一夜之间强制实施严苛的许可条款,但这也不是不可想象的。

此外,MariaDB可以更快地创新,并且很快将与MySQL在基本层面上不兼容,这是一个有力的理由来进行切换。除此之外,目前并不重要,除了一些多疑的企业,MySQL的用户仍然留在原地。

如何从MySQL迁移到MariaDB?

在你的生活中,从MySQL迁移到MariaDB可能是你做过的最愚蠢简单的迁移之一。没有什么需要做的,完成后你会想:“就这样了吗?!”实质上,你只需要:

  • 确保你的软件包管理器可以访问MariaDB。
  • 停止MySQL。
  • 安装MariaDB。

是的,就是这样!

例如,如果你使用的是Ubuntu 18.04,第一步是像这样向系统添加MariaDB源:

sudo apt-get install software-properties-common
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://suro.ubaya.ac.id/mariadb/repo/10.3/ubuntu bionic main'
sudo apt-get update

现在是时候停止MySQL了:

sudo service mysql stop

然后安装MariaDB,安装完成后将启动:

apt install mariadb-server

然后就是……什么都没有了!

是的,就是这样 – 你已经成功从MySQL迁移到MariaDB。不过,很难相信吧。

我的意思是,肯定不只是2-3个命令吧?

那么导出和导入数据库呢?

数据库用户、密码和权限呢?

优化设置(针对数据库管理员)呢?

老实说,这些都不需要。MariaDB是MySQL的“插拔式”替代品。记住,它只是现有MySQL项目的开源分支,因此必然是相同的。如我之前所说,差异会随时间增加,但目前来看,除了停止MySQL并安装MariaDB外,不需要做任何事情。🙂

如果你还是不相信(我很佩服!),我鼓励你访问官方migration docs,它声称:

你决定从MySQL迁移到MariaDB,但你有点紧张。你最不希望的就是陷入一片混乱之中。别担心,因为MariaDB被设计成可以直接替代MySQL。你应该能够在你的MySQL服务器上安装MariaDB,然后继续你的工作而不会有任何问题。

我希望这能解决问题。别担心,我个人已经成功迁移了一些MySQL数据库,没有任何问题,所以没有什么可担心的。🙂

最后,如果你使用的是Ubuntu 18.04之外的平台,MariaDB有一个tool可以为你生成必要的命令,你只需复制粘贴即可。

在我结束这篇文章之前,要提醒一点:在升级之前,请备份你的MySQL数据文件。

同样重要的是,如果你使用了一些预先构建的第三方工具(如Magento、Drupal等),请对你要安装的MariaDB版本的兼容性进行彻底的研究。

类似文章