服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - MySQL目录权限已修改为何提示无权限

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

2023-05-07 01:10未知服务器之家 Mysql

近期有同学反馈数据库安装的时候,已确定目录权限已经设置了,但是还是无法安装的情况。解决后,分享一下,帮助大家遇到相同问题时更快定位及解决。 1、案例还原 (1)创建目录并创建授权 处理完成后,权限如下: (2)安

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

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

1、案例还原

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

处理完成后,权限如下:

(2)安装数据库

bin/mysqld --defaults-file=/data/mysql/mysql3306/etc/my.cnf  --initialize  --user=mysql

此时报错信息如下:

mysqld: Can't 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] Aborting


2022-10-29T19:02:30.105118+08:00 0 [Note] Binlog end
2022-10-29T19:02:30.105494+08:00 0 [Note] bin/mysqld: Shutdown complete

(3)原因排查

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

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

(4)问题解决

修改目录权限为755.

chmod 755 mysql/

再进行初始化

bin/mysqld --defaults-file=/data/mysql/mysql3306/etc/my.cnf  --initialize  --user=mysql

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

顺利完成初始化。

启动数据库,成功。

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

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

2、相似案例

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

(1)现场还原

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

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

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

开始还原。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

chmod 755 /data/mysql

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

子目录未调整。

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

启动数据库。

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

查看进程已启动。

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

日志也正常。

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

3、小结

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

延伸 · 阅读

精彩推荐
  • Mysql分享101个MySQL调试与优化技巧

    分享101个MySQL调试与优化技巧

    随着越来越多的数据库驱动的应用程序,人们一直在推动MySQL发展到它的极限。这里是101条调节和优化MySQL安装的技巧。一些技巧是针对特定的安装环境的,...

    MYSQL教程网2712020-07-29
  • Mysql关于MySQL中的 like操作符详情

    关于MySQL中的 like操作符详情

    这篇文章主要介绍了MySQL之like操作符,当对未知或者说知道某一部分的值进行过滤时,可以使用like操作符;like操作符用于模糊匹配。下面我们一起进入文...

    李子捌10352021-12-06
  • Mysqlmysql修改密码的三方法和忘记root密码的解决方法

    mysql修改密码的三方法和忘记root密码的解决方法

    这篇文章主要介绍了mysql修改密码的三方法和忘记root密码的解决方法,需要的朋友可以参考下 ...

    MYSQL教程网4282020-03-13
  • Mysqlmysql字符集乱码问题解决方法介绍

    mysql字符集乱码问题解决方法介绍

    解决乱码的方法是,在执行SQL语句之前,将MySQL以下三个系统参数设置为与服务器字符集character-set-server相同的字符集 ...

    MYSQL教程网3532019-12-03
  • Mysqlmysql5.7安装教程(windows)

    mysql5.7安装教程(windows)

    这篇文章主要为大家详细介绍了windows下mysql5.7安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 ...

    默识12962020-07-06
  • Mysql如何备份MySQL的用户和权限?

    如何备份MySQL的用户和权限?

    概述 对于mysql的备份,常见的有物理备份和逻辑备份。对于逻辑备份,我们常用的工具是mydump,它可以对库、表进行逻辑的备份。但是在我们的实际工作中...

    未知502023-05-07
  • MysqlMySQL开启慢查询日志功能的方法

    MySQL开启慢查询日志功能的方法

    今天小编就为大家分享一篇关于MySQL开启慢查询日志功能的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小...

    CODETC1902020-09-14
  • MysqlUbuntu18.04安装mysql5.7.23的教程

    Ubuntu18.04安装mysql5.7.23的教程

    这篇文章主要为大家详细介绍了Ubuntu18.04安装mysql5.7.23的教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...

    登峰小蚁5722019-06-05