从 dotdeb 的 MySQL 包迁移到 Oracle 的 MySQL 包最直接的方法是什么?

从 dotdeb 的 MySQL 包迁移到 Oracle 的 MySQL 包最直接的方法是什么?

我正在升级已运行 MySQL 5.6 的 dotdeb 包的 Debian 安装。由于 dotdeb 不再支持 MySQL,我想迁移到 Oracle 直接托管的存储库。

删除 dotdeb 很容易:只需从 中删除 repo 即可/etc/apt/sources.list。同样,添加 Oracle repo 也很容易:编辑同一个文件来添加它。

但我想确保我:

  1. 不要删除任何重要的东西——例如配置文件、数据等。
  2. 不要留下任何旧的、过时的软件包或文件
  3. apt继续前进时不要出现任何错误

我想我只是想这样做:

  1. apt-get remove mysql-server(以及任何相关包)
  2. 从中删除 dotdeb repo /etc/apt/sources.list,添加 Oracle 的 repo
  3. apt-get install mysql-server(以及任何相关先决条件)

我会确保备份所有内容,但我宁愿第一次就把事情做好,并且如果可能的话不需要任何恢复。

答案1

尝试在现有机器上执行此操作似乎不必要地危险。

建立一个新的服务器。

根据需要进行配置。

转储并加载数据,将新系统配置为现有系统的实时 MySQL 本机副本。

验证它是否处于活动状态且正在复制,以及所有数据是否完整。

关闭原始服务器,断开复制以将新机器提升为主机,然后切换应用程序以使用新服务器。


作为一名长期从事 MySQL 工作的 DBA,我从来不会允许包管理器触碰我的数据库安装。诚然,这只是个人看法,但作为一名 DBA,我最终要负责的不是服务器,而是它们存储的信息……实际数据库. 数据的完整性远比任何想象中的软件包管理带来的好处或便利更重要。我决定何时进行更新和升级,并完全控制整个过程,不受软件包管理开发人员似乎做出的假设的影响,其中一些假设可能非常荒谬。Oracle 还提供了二进制 tarball,这些 tarball 更加简单,不易出现软件包管理意外。

答案2

最终,我选择简单地卸载 dotdeb 包(保留配置文件)并从 Debian 包管理器安装 MariaDB。

这对我来说没有任何问题。

MariaDB 软件包可以读取所有旧配置文件/etc/mysql//etc/mysql/conf.d/因此它立即恢复了,没有任何问题。当然,在生产升级之前,我们在另外两个系统上尝试了这种方法,一切正常。

虽然将一个全新的服务器配置为复制从属服务器是一个 100% 万无一失的解决方案,但对我来说这不是必需的。

相关内容