[2021/08/06]Ubuntu20 安装指定小版本Mysql(本文示例mysql8.0.18)
参考
- dpkg用管道批量删除deb
- Mysql官网下载地址(可以选择小版本)
- Ubuntu Linux 下tar unzip解压压缩文件
- Ubuntu18.04国内源安装MySQL8.0
- 二进制包安装Mysql
- Ubuntu下彻底卸载MySQL
起因
- 因为我本地的mysql环境为8.0.18,线上通过apt自动安装的mysql为8.0.26,导致springboot的mysql扩展版本不一致而连接数据库失败。
- 然后使用 apt 搜索mysql 的指定版本找不到,所以只能通过手动下载deb进行安装指定小版本的mysql
环境
- Ubuntu 20.04 (未安装过mysql的服务器)
- Mysql8.0.18
本文用到的命令
# 下载 mysql bundle-deb(选择bundle是因为包含了所有要安装的软件)
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.18-1ubuntu19.10_amd64.deb-bundle.tar
# 解压下载的 bundle-deb,默认解压到当前文件夹
tar -xvf mysql-server_8.0.18-1ubuntu19.10_amd64.deb-bundle.tar
# 批量安装 mysql deb
# 安装的时候第一次会提示输入密码,第二次选择 1强密码 还是 2弱密码 (建议强密码 输入1)
sudo dpkg -i *.deb
# 因为有些依赖没有,所以第一次安装会报错,安装依赖
sudo apt-get -f -y install
# 我这边测试,安装依赖之后还是会报错,所以卸载刚刚安装的mysql
dpkg -l |grep mysql|awk '{print $2}'|xargs sudo dpkg -P
# 再次安装
# 这里重新设置密码与选择密码强度,与上面的安装步骤一致
sudo dpkg -i *.deb
# 查看mysql 状态, mysql.service 前面的点显示绿色就代表正常
# ● mysql.service - MySQL Community Server
service mysql status
# 进入mysql,输入密码即可
mysql -uroot -p
正文
- 复制3的下载链接,使用命令下载到ubuntu服务器,我这里选择的是 ubuntu 8.0.18
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-server_8.0.18-1ubuntu19.10_amd64.deb-bundle.tar
- 下载完毕后进行解压,默认解压到当前文件夹
tar -xvf mysql-server_8.0.18-1ubuntu19.10_amd64.deb-bundle.tar
- 使用命令进行安装,因为有些依赖不会自动安装,
sudo dpkg -i *.deb
...
# 显示 [More] 的时候按回车键就可以
...
# 会提示安装密码
Now that you have selected a password for the root account, please confirm by typing it again. Do not share the password with anyone.
Re-enter root password:
...
# 会提示设置密码强度(这里我选择1)
After installation, the default can be changed by setting the default_authentication_plugin server setting.
1. Use Strong Password Encryption (RECOMMENDED) 2. Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)
...
# 因为有些依赖不存在,会报错(应该是因为之前没有安装过mysq,所以会出现依赖不存在的问题)
Job for mysql.service failed because the control process exited with error code.
See "systemctl status mysql.service" and "journalctl -xe" for details.
Setting up mysql-server (8.0.18-1ubuntu19.10) ...
Processing triggers for libc-bin (2.31-0ubuntu9) ...
Processing triggers for man-db (2.9.1-1) ...
Errors were encountered while processing:
mysql-community-test
mysql-community-test-debug
mysql-testsuite
- 使用apt自动安装依赖
sudo apt-get -f -y install
- 实测安装依赖后也会报错,所以卸载重装
dpkg -l |grep mysql|awk '{print $2}'|xargs sudo dpkg -P
- 重装,同步骤6(显示下面的内容就成功安装了)
...
Created symlink /etc/systemd/system/multi-user.target.wants/mysql.service → /lib/systemd/system/mysql.service.
Setting up mysql-community-test (8.0.18-1ubuntu19.10) ...
Setting up mysql-community-test-debug (8.0.18-1ubuntu19.10) ...
Setting up mysql-server (8.0.18-1ubuntu19.10) ...
Setting up mysql-testsuite (8.0.18-1ubuntu19.10) ...
Processing triggers for libc-bin (2.31-0ubuntu9) ...
Processing triggers for man-db (2.9.1-1) ...
- 查看mysql 状态, mysql.service 前面的点显示绿色就代表正常
...
● mysql.service - MySQL Community Server
...
结束
博 主 :夏秋初
地 址 :https://www.cnblogs.com/xiaqiuchu/p/15107630.html
如果对你有帮助,可以点一下 推荐 或者 关注 吗?会让我的分享变得更有动力~
转载时请带上原文链接,谢谢。
地 址 :https://www.cnblogs.com/xiaqiuchu/p/15107630.html
如果对你有帮助,可以点一下 推荐 或者 关注 吗?会让我的分享变得更有动力~
转载时请带上原文链接,谢谢。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义