-1

我有两个服务器。ClientServ 和 DevServ。客户端服务器位于带有 Mysql 5.5.49-0+deb7u1 的 Debian 7 上。我的目标是在我的 DevServ 中拥有相同的包。

不幸的是,我尝试 apt-get install 我只得到“5.5.55-0+deb7u1”。我检查了 repo,实际上 wheezy 中没有任何 5.5.49 包...

我什么都试过了。

使用 mysql 的 .deb,它只提供具有正确版本的 mysql,但不提供其他组件(mysql-server 等)。

我看到在 Jessie repo 中有一个“mysql-server-5.5 5.5.49-0+deb8u1”可以使用吗?请帮我... :)

非常感谢您,美好的一天

4

1 回答 1

2

只需下载所有 *.deb 包并为相关版本的 mysql 服务器安装它们应该没有问题。请注意,您还需要同时获取所需的任何 mysql 模块的 *.deb 文件。

然后,在首先清除所有已安装的 mysql 软件包( apt-get remove --purge mysql* )之后,您只需使用 dpkg 直接安装它们。但就我个人而言,我不会这样做,我从来没有发现在 live 和 dev 机器之间使用不同的 mysql 服务器版本有任何重大问题,特别是如果两者都是相同的版本,5.5,我不明白你为什么会遇到任何重大问题,但如果运行完全相同的版本实际上是非常必要的,那么直接安装 deb 文件应该可以正常工作。

只需确保下载它们并将您可能需要的所有 mysql 文件存储在某个目录中,这样您就可以安装它们,以防您需要的版本消失,或者您意识到您忘记了一个模块或其他东西.

如果这只是一个开发系统,我个人认为我会直接安装 debs 以避免版本更改。

但是,除非您绝对确定这两个 debian 版本之间存在一些关键差异,但情况可能并非如此,它可能只是一些安全更新或对 mysql 服务器如何处理 sql 没有影响的东西,我只会使用里面的内容杰西,不用担心。

示例: http: //mirrors.kernel.org/debian/pool/main/m/mysql-5.5/

例如,您会看到服务器的版本 47 和 55,并且您还可以获取“核心”包以进行匹配。Tnen 你会在这里寻找你可能需要的任何其他模块:

http://mirrors.kernel.org/debian/pool/main/

请记住,使用 dpkg,您必须先安装依赖项,然后再安装下一个软件包,或者在某些情况下同时安装两者。但是,在您的情况下,我首先要做的,而不是最后做的是,在处理尝试使用 dpkg deb 软件包安装维护服务器所涉及的潜在问题之前,确保不同的 5.5 版本之间确实存在功能差异。

例如,这里是您可能需要的 mysql 软件包列表。请注意,我只是从开发框中获取的,这不是一个权威列表,只是一个示例,但它确实表明 mysql 在系统上的许多不同地方使用,您可能会在尝试降级时遇到问题手动,这就是为什么我通常会避免尝试这种方法(为了说明目的,我将 5.6 更改为 5.5)。关键是采取绝对最小包列表手动下载deb文件。

dpkg -l | grep mysql | awk '{print $2}'
libaprutil1-dbd-mysql:i386
libdbd-mysql-perl
libmysqlclient15off
libmysqlclient16
libmysqlclient18:i386
libqt4-sql-mysql:i386
libqt5sql5-mysql:i386
mysql-client-5.5
mysql-client-core-5.5
mysql-common
mysql-server-5.5
mysql-server-core-5.5
php5-mysql

您只需使用正在运行的现有 mysql 安装并运行该命令以查看您需要下载的软件包。如您所见,这很痛苦,这就是为什么我通常会避免尝试以这种方式进行开发安装,我从未遇到任何 sql 问题,或者使用截然不同的 mysql 版本返回问题,所以除非您的 sql 查询正在使用仅在特定版本中找到的东西,这不太可能,您不太可能获得太多收益。但如果未来的搜索者登陆这里,这就是你的做法。

请注意,大多数开发盒可能都在运行桌面,并且具有更多的 mysql 依赖项,而不仅仅是用于 Web 开发的 mysql 服务器的东西,这可能会导致问题。

于 2017-06-12T18:45:28.720 回答