记一次mariadb升级故障

Posted yunweidf

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记一次mariadb升级故障相关的知识,希望对你有一定的参考价值。

由于做mariadb集群,将版本从自带的5.5升级到10.0.3,升级成功后发现起不来

查journal log,只有一行warning

can’t create test file /var/lib/mysql/core.lower-test

google了一下,有两种方案

第一是说selinux导致的,但是ucloud的镜像默认就是关闭selinux的,所以不是这个问题

第二说是apparmor限制了进程的目录读写,但是没有安装这个东西,所以也不是这个问题。

其他文件权限之类的都检查过了,也不会出现问题。

这时我发现,如果直接用mysqld_safe和mysqld命令,跳过systemctl启动进程,能够让MariaDB正常起来,于是就去检查mariadb.service

发现其中有一行

ProtectHome=true

注释是

# Prevent accessing /home, /root and /run/user

而我的datadir=/home/mysql

于是有两个方案

1.把它改成false,就能够正常启动服务了

2.移动mysql的数据库文件到非  /home, /root and /run/user 目录

解决

以上是关于记一次mariadb升级故障的主要内容,如果未能解决你的问题,请参考以下文章

记一次因硬盘故障导致的docker服务无法启动

记一次Mysql魔鬼实训

国庆记一次mysqld_safe引发mysql进程故障

centos7 Mariadb5.5升级到Mariadb10.2

20180719记录一次MariaDB主从复制由于tokudb出现主键1062错误问题

记一次 Ubuntu 内核升级故障处理