站点软件升级

文章大纲

CentOS Stream 9 是一个持续发布的版本,不断新的代码和软件包经过测试后加入到项目中,离上次更新已经稳定运行半年了,是时候来一波 dnf update -y 升级来应用新的补丁和软件包了!

大部分的软件包直接升级没有什么问题,其中 MariaDB 软件包升级后还需手动升级,Nginx 想要使用更新的版本需要切换模块流。

MariaDB

系统更新的时候将 MariaDB 升级到了 10.11.6 版本,重启后日志会提示以下内容:

mariadb-check-upgrade[994]: The datadir located at /var/lib/mysql needs to be upgraded using 'mariadb-upgrade' tool. This can be done using the following steps:
mariadb-check-upgrade[994]:   1. Back-up your data before with 'mariadb-upgrade'                                                     
mariadb-check-upgrade[994]:   2. Start the database daemon using 'systemctl start mariadb.service'                                       
mariadb-check-upgrade[994]:   3. Run 'mariadb-upgrade' with a database user that has sufficient privileges                                     
mariadb-check-upgrade[994]: Read more about 'mariadb-upgrade' usage at: https://mariadb.com/kb/en/mysql_upgrade/

根据上述提供的步骤,在 MariaDB 运行的时候,首先需要备份数据库,然后运行升级命令。

备份指定的数据库:

mysqldump -u <username> -p <password> <database-name> > database-name-backup-$(date +%Y-%m-%d)

运行升级的命令:

mariadb-upgrade -u <username> -p <password>

如果重复运行会提示已经升级了:

This installation of MariaDB is already upgraded to 10.11.6-MariaDB.
There is no need to run mysql_upgrade again for 10.11.6-MariaDB.
You can use --force if you still want to run mysql_upgrade

至此 MariaDB 升级完成,最后可以重启一下:

systemctl restart mariadb

Nginx

运行 dnf module list 的时候发现 Nginx 已经提供了两个版本的模块流,分别是 1.221.24,索性就升级到 1.24 吧。

第一步依旧是备份 Nginx 现有的配置:

tar -czf nginx-backup-$(date +%Y+%m-%d).tar.gz /etc/nginx

第二步 reset 模块流,安装其它模块流之前需要将模块进行重置:

dnf module reset nginx

第三步安装新的模块流:

dnf module install nginx:1.24

安装完成后,重启 Nginx 并验证版本已升级:

systemctl daemon-reload
systemctl restart nginx

nginx -v
nginx version: nginx/1.24.0

没什么问题话,下次更新应该在半年后吧。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部