井底圈小蛙
关注科技圈

Mariadb、Mysql数据库启动出现Can’t Create Test File错误的解决方法

Mariadb出现Can't Create Test File错误

CentOS安装Mariadb后,数据库服务可以正常启动,默认的数据目录是/var/lib/mysql,通过my.cnf修改数据目录为/home/mysql后,启动服务后,出现报错:

[Warning] Can't create test file /home/mysql/data/......

自查发现:

1.已经给予/home/mysql/数据目录mysql用户的所有者权限:chown -R mysql.mysql /home/mysql/
2.已经保证/home/mysql/数据目录的所有父级目录对用户、用户组、以及其他均有“x”执行权限,甚至都给了777还不行:chmod -R 777 /home/mysql/
3.临时禁用SELinux,执行:setenforce 0

还不行,继续在Mariadb官方网站查找发现了解决方法:

默认的systemd管理单元mariadb.service中会有ProtectHome=true的配置,即数据目录设置在/home、/root、/run/user下的时候,通过systemctl或者Service启动是无法启动数据库服务的,因为home目录受保护了,只有编辑mariadb.service 中的ProtectHome修改为false后才可以正常启动。

在/lib/systemd/system/mariadb.service文件里修改ProtectHome=false,修改完成后执行systemctl daemon-reload即可解决。

Mysql出现Can't Create Test File错误

一般出现这种情况也是data数据目录的问题,删除data数据目录,重新初始化,命令行输入

mysqld --initialize-insecure
重新启动Mysql即可。
圈小蛙现已开通Telegram。单击此处加入我们的频道 (@quanxiaowa)并随时了解最新科技圈动态!

除特别注明外,本站所有文章均系根据各大境内外消息渠道原创,转载请注明出处。
文章名称:《Mariadb、Mysql数据库启动出现Can’t Create Test File错误的解决方法》
文章链接:https://www.qxwa.com/mariadb-mysql-database-startup-cant-create-test-file-error-solution.html
分享到: 生成海报

评论 抢沙发

科技圈动态,尽在圈小蛙

联系我们关注我们