MySQL目录权限已修改为何提示无权限

系统运维2025-11-04 13:08:1815412

近期有同学反馈数据库安装的录权时候,已确定目录权限已经设置了,限已修改限但是为何无权还是无法安装的情况。解决后,提示分享一下,录权帮助大家遇到相同问题时更快定位及解决。限已修改限

1、为何无权案例还原

(1)创建目录并创建授权

处理完成后,提示权限如下:

(2)安装数据库 复制bin/mysqld --defaults-file=/data/mysql/mysql3306/etc/my.cnf --initialize --user=mysql1.

此时报错信息如下:

复制mysqld: Cant change dir to /data/mysql/mysql3306/data/ (Errcode: 13 - Permission denied)2022-10-29T19:02:30.058126+08:00 0 [Warning] NO_ZERO_DATE,录权 NO_ZERO_IN_DATE and ERROR_FOR_DIVISION_BY_ZERO sql modes should be used with strict mode. They will be merged with strict mode in a future release.2022-10-29T19:02:30.058209+08:00 0 [Warning] NO_AUTO_CREATE_USER sql mode was not set.2022-10-29T19:02:30.058277+08:00 0 [Note] Ignoring --secure-file-priv value as server is running with --initialize(-insecure) or --bootstrap.2022-10-29T19:02:30.058317+08:00 0 [Note] bin/mysqld (mysqld 5.7.23-24-log) starting as process 9532 ...2022-10-29T19:02:30.099203+08:00 0 [Note] --initialize specifed on an existing data directory.2022-10-29T19:02:30.100460+08:00 0 [ERROR] failed to set datadir to /data/mysql/mysql3306/data/2022-10-29T19:02:30.105066+08:00 0 [ERROR] Aborting2022-10-29T19:02:30.105118+08:00 0 [Note] Binlog end2022-10-29T19:02:30.105494+08:00 0 [Note] bin/mysqld: Shutdown complete1.2.3.4.5.6.7.8.9.10.11.12. (3)原因排查

因之前在大数据机器上安装数据库出现过类似情况,因此想到查看上层目录权限,限已修改限结果果然是为何无权上层目录权限问题。

(4)问题解决

修改目录权限为755.

复制chmod 755 mysql/1. 再进行初始化 复制bin/mysqld --defaults-file=/data/mysql/mysql3306/etc/my.cnf --initialize --user=mysql1.

顺利完成初始化。提示

启动数据库,录权成功。限已修改限

复制/usr/local/mysql5.7/bin/mysqld_safe --defaults-file=/data/mysql/mysql3306/etc/my.cnf1.

2、为何无权相似案例

使用xtrabackup工具还原数据库时,如果配置文件中的数据目录地址在本机中没创建,那么在还原后启动数据库时也不成功,

(1)现场还原

xtrabackup工具备份一个数据库实例,然后恢复至一个新实例(此过程略过,源码下载直接到还原目录不存在的位置)。

先不创建此目录(通常是写错位置,或创建的时候写错目录名等).

开始还原。

复制innobackupex --defaults-file=/root/my.cnf --move-back ./1.

可以看到,还原的步骤能顺利进行。

数据和日志目录也自动创建了。

此时因为我们的配置文件在/root目录下,启动时,因配置文件中指定了tmp目录,因此在/data/mysql/mysql3307下创建一个空的tmp目录,保证目录均存在。之后再创建一个日志文件。目录权限调整为mysql属主。

正常情况下此时启动数据库即可,可惜失败了。

日志文件中也无任何内容。

这种情况,大家可能会想到是权限问题,服务器托管比如有地方没设置mysql属主等,但其实不然。此情况就如同案例1中那样,是因为目录的操作权限不足导致。修改一下即可,例如:

只需要将/data/mysql目录操作权限修改为755(建议子目录也修改为755,但是不修改也可以正常启动)。

复制chmod 755 /data/mysql1.

子目录未调整。

启动数据库。

查看进程已启动。

日志也正常。

3、小结

数据库对目录及文件的操作权限、属主等的要求是比较严格的,其中一条不符合要求就无法创建或启动数据库,以上案例希望对大家有帮助。

本文地址:http://www.bzve.cn/html/502d2899469.html
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

全站热门

oppo手机边充电边玩的危害与防范(揭秘oppo手机边充电边玩的危害以及如何正确使用)

废物管理和垃圾收集公司受益于物联网解决方案

物联网在医疗保健领域的应用

6G和工业物联网会带来什么

探索电脑最上面一排键的错误代码(解读键盘故障,提升电脑使用体验)

量子计算机、物联网和网络安全之间的相互作用

如何用树莓派Pico针对IoT编程?

物联网通信协议综合指南

友情链接

滇ICP备2023006006号-39