Debian 10 MariaDB 修改 datadir 权限错误无法启动

Debian 10 MariaDB 修改 datadir 权限错误无法启动

修改 MariaDB 数据目录后遇到权限错误导致无法启动的问题及解决。

问题描述

在 Debian 10 上修改 MariaDB 的 datadir 到新位置后,服务启动失败,报权限错误。

解决方法

1. 创建新数据目录

mkdir -p /new/data/path

2. 复制原数据

cp -R -p /var/lib/mysql/* /new/data/path/

或使用 rsync:

rsync -av /var/lib/mysql/ /new/data/path/

3. 修改配置

编辑 /etc/mysql/mariadb.conf.d/50-server.cnf

datadir = /new/data/path

4. 权限关键点

chown -R mysql:mysql /new/data/path

5. AppArmor 配置(Debian 特有)

Debian 10 默认启用 AppArmor,需要添加新路径别名:

echo "/new/data/path/ r," >> /etc/apparmor.d/local/usr.sbin.mysqld
echo "/new/data/path/** rwk," >> /etc/apparmor.d/local/usr.sbin.mysqld
systemctl reload apparmor

6. 重启服务

systemctl restart mariadb

常见错误

  • Permission denied:通常是 AppArmor 或 selinux 阻止
  • Can't create test file:权限配置不正确
  • 查看日志:journalctl -u mariadb
THE END
喜欢就支持一下吧
点赞0 分享 收藏
评论 抢沙发
欢迎您留下宝贵的见解!(至少 2 字)
提交
昵称

昵称

昵称 表情 快捷回复

    暂无评论内容