近期Wordpress的站点健康页面提示Mariadb 10.3 版本过旧,及 php 可选的模块 imagick 未安装,以下为安装的记录,为自己留档,也供大家参考,有建议欢迎评论。
环境为阿里云的轻量服务器
系统版本 Alibaba Cloud Linux 3
Linux version 5.10.23-5.al8.x86_64
Mariadb 10.3 升级 10.11
Mariadb 10.11 是目前最新的长期支持版本
1.备份数据库
艺高人胆大可不进行
# 1.停止数据库
systemctl stop mariadb
# 2.对数据库进行全库备份
mysqldump -uroot -p -A > /tmp/mydb.sql
# 3.对数据库配置文件进行备份
cp /etc/my.cnf /etc/my.cnf.bak
cp -r /etc/my.cnf.d /etc/my.cnf.d.bak
2.配置Mariadb源
官方当然不会有 Alibaba Cloud Linux 3 的源,但我们可以选用兼容的 Red Hat Enterprise Linux 8、CentOS 8
前往官网,选择Red Hat Enterprise Linux 8、10.11版本、Alibaba Cloud。新建文件:vim /etc/yum.repos.d/MariaDB.repo,保存官网提供的源内容。
# MariaDB 10.11 RedHatEnterpriseLinux repository list - created 2023-09-07 07:10 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
# rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details.
# baseurl = https://rpm.mariadb.org/10.11/rhel/$releasever/$basearch
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.11/rhel/$releasever/$basearch
module_hotfixes = 1
# gpgkey = https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB
gpgkey = https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1
## 以上即为官网提供的源内容,但 Alibaba Cloud Linux 3 的 /$releasever/$basearch 无法与源仓库对应上,经查看源仓库目录,我将该部分该为 /8Server/x86_64 ,即最后源内容如下:
# MariaDB 10.11 RedHatEnterpriseLinux repository list - created 2023-09-07 00:13 UTC
# https://mariadb.org/download/
[mariadb]
name = MariaDB
# rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https://mariadb.org/mirrorbits/ for details.
# baseurl = https://rpm.mariadb.org/10.11/rhel/8Server/x86_64/
baseurl = https://mirrors.aliyun.com/mariadb/yum/10.11/rhel/8Server/x86_64/
module_hotfixes = 1
# gpgkey = https://rpm.mariadb.org/RPM-GPG-KEY-MariaDB
gpgkey = https://mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck = 1
清除 yum 源缓存并建立数据源(或用dnf)
yum clean all
yum makecache
3.升级Mariadb
# 1.首先要先卸载 Mariadb
yum remove mariadb-server
# 2.重新安装 Mariadb
yum install mariadb-server
# 3.重新启动 Mariadb
systemctl start mariadb
systemctl enable mariadb
# 4.#升级MySQL中的系统表
mysql_upgrade -uroot -p --force
运行以上命令如果没出错误,那就好了,但在我执行过程中出现了这样一个警告:
……
Phase 4/8: Fixing views
mysql.user
Warning : The user specified as a definer ('mariadb.sys'@'localhost') does not exist
status : OK
sys.host_summary
……
提示 mariadb.sys 用户不存在,可以执行以下命令添加用户
grant all privileges on *.* to 'mariadb.sys'@'localhost' identified by 'root' with grant option;
完成后可以再执行一次 mysql_upgrade 看是否还有其他警告或错误。
如果没有,则这次数据库升级成功了。
参考文章
Installing MariaDB with yum/dnf
centos7 使用 mariadb 10.6.4 意外错误
安装 imagick 模组
# 1.首先安装 ImageMagick
yum install ImageMagick ImageMagick-devel
convert --version # 确认是否安装成功
# 2.通过 pecl 安装 imagick模块
yum install php-pear php-devel #安装pecl
pecl install imagick
# 安装过程会提示输入ImageMagick的安装路径,留空让其自动检测即可
最后在php.ini
中添加extension=imagick.so
输出php -m
,如果看到 imagick 就说明安装成功了。
Comments | 1 条评论
博主 沙发剑
看不懂啦!