MySQL之 mysqld 生成文件的权限与UMASK 的关系

今天因为binlog 文件的权限问题,最终追踪是mysql 安装初始化修改了文件的权限,于是记录下来:

一. 默认情况下mysqld 程序生产的目录的权限是UMASK 的值是 0700,文件的权限是UMASK 的值是 0660.

[mysql@localhost ~]$ ll /export/servers/data/my3306/data/test/ -ld 
drwx------. 2 mysql root 4096 6月  10 11:19 /export/servers/data/my3306/data/test/  #目录 0700 

[mysql@localhost ~]$ ll /export/servers/data/my3306/binlog/ -ld   #文件 0660
  -rw-rw----  1 mysql myinstall 150 9月  24 15:12 mysql-bin.000019
  -rw-rw----  1 mysql myinstall 150 9月  24 15:12 mysql-bin.000020     

如果要修改mysqld 生成文件的权限,则增加环境变量到 mysql 的  .bash_profile  .bashrc。 

export UMASK=0600   #或者是十进制数值 =384 ,以 0 开头的话就是八进制
export UMASK_DIR=0750

修改后:

[mysql@localhost ~]$ ll /export/servers/data/my3306/data/hhl -ld 
drwx--x--- 2 mysql myinstall 4096 9月  24 15:34 /export/servers/data/my3306/data/hhl [mysql@localhost ~]$ ll /export/servers/data/my3306/binlog/ -l

-rw-------  1 mysql myinstall 450 9月  24 15:34 mysql-bin.000025 # 0600 
-rw-------  1 mysql myinstall 188 9月  24 15:34 mysql-bin.000026

总结:这里的UMASK 和 系统 的umask 不是一个含义,不要混淆了啊,UMASK变量控制了文件生产的权限,注意在mysql 权限最小化控制选择合适的权限。 



本文出自 “My DBA life” 博客,请务必保留此出处http://huanghualiang.blog.51cto.com/6782683/1557770

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。