MySQL 8.0.27 在用于连接 Azure 时出现一个错误,它会使用所有 CPU 资源但永远不会连接。
因此我想降级到 8.0.26
到目前为止我已经尝试过:
#uninstall any mysql references
get remove --purge -s 'mysql*'
sudo apt-get autoremove
sudo apt-get autoclean
#install mysql-client 8.0.26
wget -c https://dev.mysql.com/get/mysql-community-client_8.0.26-1ubuntu20.04_amd64.deb
sudo dpkg -i mysql-client_8.0.26-1ubuntu20.04_amd64.deb
sudo apt-get update
sudo apt-get install -y --no-install-recommends mysql-client
这将引发以下异常:
mysql-client depends on mysql-community-client (>= 8.0.26-1ubuntu20.04); however:
Package mysql-community-client is not installed.
我以为 Ubuntu 会自动安装 community-client 依赖项,但显然没有。我该如何安装 8.0.26 的适当依赖项?
答案1
如果您想继续使用官方 Ubuntu 软件包,并且更旧的版本 8.0.19 适合您,您只需提供版本号即可降级。
sudo apt install mysql-client=8.0.19-0ubuntu5
您可以使用 列出可用的版本apt show mysql-client -a
,目前版本8.0.19-0ubuntu5
和8.0.27-0ubuntu0.20.04.1
可从官方镜像中获取适用于 Ubuntu 20.04 的版本。
之后,您应该运行apt-mark hold mysql-client
以阻止软件包的进一步更新,直到您可以验证新版本是否适合您。
答案2
在全新(干净)的 Ubuntu 20.04 容器中,这是我运行的命令。在您的系统上,您可能需要删除一些东西来清理旧安装。不确定是什么。我还认为以这种方式安装可能不是一个好主意,因为它不会自动更新。当有更新版本可用时,您需要删除这些软件包并手动安装新版本,或者使用 apt repo 中可用的版本。
$ docker run --rm -it ubuntu:20.04
root@# apt update ; </dev/null apt install --yes --no-install-recommends wget ca-certificates &&
mkdir mysql_8.0.26 ; cd mysql_8.0.26 &&
wget -c \
https://dev.mysql.com/get/mysql-community-client_8.0.26-1ubuntu20.04_amd64.deb \
https://dev.mysql.com/get/mysql-community-client-core_8.0.26-1ubuntu20.04_amd64.deb \
https://dev.mysql.com/get/mysql-community-client-plugins_8.0.26-1ubuntu20.04_amd64.deb \
https://dev.mysql.com/get/mysql-common_8.0.26-1ubuntu20.04_amd64.deb &&
</dev/null apt install --yes --no-install-recommends \
./mysql-community-client_8.0.26-1ubuntu20.04_amd64.deb \
./mysql-community-client-core_8.0.26-1ubuntu20.04_amd64.deb \
./mysql-community-client-plugins_8.0.26-1ubuntu20.04_amd64.deb \
./mysql-common_8.0.26-1ubuntu20.04_amd64.deb
# ... lots of installing output.
root@# mysql --version
mysql Ver 8.0.26 for Linux on x86_64 (MySQL Community Server - GPL)