Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


B.3.3.1 文件权限问题

如果您遇到文件权限问题,可能是UMASKUMASK_DIR环境变量在mysqld启动时设置不正确,例如当您创建表时:mysqld可能会出现以下错误信息:

ERROR: Can't find file: 'path/with/file_name' (Errcode: 13)

默认的UMASKUMASK_DIR值分别是06400750mysqld假设UMASKUMASK_DIR值如果以零开头,则认为是八进制。例如,设置UMASK=0600等同于UMASK=384因为0600八进制是384十进制。

假设您使用mysqld_safe启动mysqldUMASK值:

UMASK=384  # = 600 in octal
export UMASK
mysqld_safe &
Note

如果使用mysqld启动mysqld_safe,则有一个例外:mysqld_safe 不会尊重 UMASKmysqld_safe 可能在启动mysqld 之前创建错误日志文件,如果不存在,且mysqld_safe 使用的 umask 值为 0137。如果这不合适,手动创建错误文件,以期望的访问模式执行mysqld_safe

默认情况下,mysqld 创建数据库目录的访问权限值为 0750。要修改这个行为,设置 UMASK_DIR 变量。如果设置了该值,新创建的目录将使用组合的 UMASKUMASK_DIR 值。例如,要为所有新目录赋予组访问权限,请按照以下方式启动mysqld_safe

UMASK_DIR=504  # = 770 in octal
export UMASK_DIR
mysqld_safe &

更多详细信息,请参见第6.9节,“环境变量”