【发布时间】:2017-12-10 15:29:41
【问题描述】:
背景信息:
我让 CentOS 7 安装程序自动分区。
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 50G 43G 7.9G 85% /
devtmpfs 32G 0 32G 0% /dev
tmpfs 32G 0 32G 0% /dev/shm
tmpfs 32G 9.3M 32G 1% /run
tmpfs 32G 0 32G 0% /sys/fs/cgroup
/dev/sda1 492M 123M 369M 25% /boot
/dev/mapper/centos-home 476G 54G 422G 12% /home
tmpfs 6.3G 0 6.3G 0% /run/user/1000
tmpfs 6.3G 0 6.3G 0% /run/user/0
但没想到大部分磁盘空间都到了/root目录下, 并且 MariaDB 现在 35GB 在 /var/lib/mysql 中的空间很快就会用完。
所以我通过下面的命令更改了数据目录,但随后无法启动
systemctl stop mariadb
cp -fR /var/lib/mysql /home/
chown -R mysql:mysql /home/mysql
vi /etc/my.cnf.d/server.cnf 并添加以下行
[mysqld]
datadir=/home/mysql
systemctl 启动 mariadb
但它失败并且符合“无法创建测试文件”
Jul 06 22:32:26 ging2 systemd[1]: Starting MariaDB database server...
Jul 06 22:32:26 ging2 mysqld[9450]: 2017-07-06 22:32:26 140114825693312 [Note] options --log-slow-admin-statements, --log-queries-not-us...s not set
Jul 06 22:32:26 ging2 mysqld[9450]: 2017-07-06 22:32:26 140114825693312 [Note] /usr/sbin/mysqld (mysqld 10.2.5-MariaDB) starting as process 9450 ...
Jul 06 22:32:26 ging2 mysqld[9450]: 2017-07-06 22:32:26 140114825693312 [Warning] Can't create test file /home/mysql/ging2.lower-test
Jul 06 22:32:26 ging2 mysqld[9450]: [87B blob data]
Jul 06 22:32:26 ging2 mysqld[9450]: 2017-07-06 22:32:26 140114825693312 [ERROR] Aborting
我不知道为什么它不起作用,我认为权限和所有权与旧的 datadir 相同。
我想你们中的一些人知道为什么。那么有人可以帮忙吗?
谢谢!!
【问题讨论】:
-
对于初学者,请尝试禁用强制执行 SELinux,看看是否有帮助。
-
我试过了,没用
-
我可以在 /var/lib/ 中创建或初始化新数据库,但不能在 /home/xxxx 中创建或初始化数据库