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

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

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

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

[[email protected] ~]$ 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

修改后:

[[email protected] ~]$ ll /export/servers/data/my3306/data/hhl -ld 
drwx--x--- 2 mysql myinstall 4096 9月  24 15:34 /export/servers/data/my3306/data/hhl [[email protected] ~]$ 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 权限最小化控制选择合适的权限。

时间: 2024-11-07 19:12:35

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

linux 文件夹权限及umask

先创建一个目录,看看权限: $ ll 总用量 20 drwxrwxr-x 3 huangxm huangxm 4096 2月 16 16:35 ./ drwxr-xr-x 128 huangxm huangxm 12288 2月 16 16:35 ../ drwxrwxr-x 2 huangxm huangxm 4096 2月 16 16:35 test/ 然后我们将权限更改为444, 即所有都是r权限 $ ll 总用量 20 drwxrwxr-x 3 huangxm huangxm 4096

文件默认权限:umask

umask 指定目前用户在新建文件或目录时候的权限默认值. [[email protected] data]# umask  0022 第一个数字是图书权限使用,后三个分别为onwer,group,other在777的基础上前去的权限值,r.w.x分别是4.2.1,即新建文件的权限为755. 修改umask的方法如下: [[email protected] data]# umask 002    注:此方法修该的umask为临时生效 此时新建文件的默认权限为775. root用户的umask值默

linux权限与umask的关系

linux文件的权限主要针对三类对象进行定义    owner: 属主, u    group: 属组, g    other: 其他, o每个文件针对每类访问者都定义了三种权限    r: Readable    w: Writable    x: eXcutablerw-r--r--前三位:表示用户所拥有的权限中三位:表示用户所在组的权限后三们:表示其他用户的权限 权限 二进制 八进制 --- 000 0 --x 001 1 -w- 010 2 -wx 011 3 r-- 100 4 r-x

Linux下MySQL的写文件时权限错误(Errcode: 13)解决方法

在数据库中select * into outfile '/home/mysql/data.sql',mysql又提示错误: ERROR 1 (HY000): Can't create/write to file '/home/mysql/data.sql' (Errcode: 13)   权限错误(Errcode: 13)解决方法 1  查看导出目录的权限 是否有mysql用户写的权限 2 如果有多级目录,要确保到处目录的上级目录有可执行权限,如果是/root目录 700要修改705 否则写不进

MySQL笔记-最简单的方法来解决找不到mysqld.sock文件的问题

首先,环境:ubuntu 14.04,采用apt-get的方式安装的,手动安装可能路径设置稍有区别. 1.安装MySQL后,用命令行首次启动时发现找不到Mysqld.sock文件,提示: ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2),如图: 2.网上的方法很多不实用,这里介绍一种最简单的方法来解决这个问题. # sudo /etc/i

获取mysql内容,生成xml文件,并且以webservice形式发送

<xyt> <news id> <url></url> <title></title> </news> </xyt> 其实是三个知识点综合到一起的,包括如何访问mysql,如何生成xml文件,如何使用进行webservice开发 好了,话不多说,直接粘代码 package com.service; import java.io.FileOutputStream; import java.io.IOExcepti

获得mysql内容,生成xml文件,另外,为了webservice发送

<xyt> <news id> <url></url> <title></title> </news> </xyt> 事实上是三个知识点综合到一起的.包含怎样訪问mysql.怎样生成xml文件,怎样使用进行webservice开发 好了.话不多说.直接粘代码 package com.service; import java.io.FileOutputStream; import java.io.IOExcept

如何设置WebLogic生成的日志文件的权限?

在运维的过程中,有时我们需要以有别于启动WebLogic的用户去访问或收集日志等信息,以及时了解系统运行情况,这就要求日志文件的访问权限是允许其他用户访问的.一般情况下,新生成的文件默认权限是根据操作系统的umask的设置决定的.那如何改变WebLogic运行时产生的日志文件的访问权限呢? 如果通过操作系统的umask命令修改是不会生效的,因为在WebLgoic的启动脚本startWebLogic.sh中有类似这么一条命令"umask 022",其覆盖了操作系统的设置. 比如start

MySQL 架构组成--物理文件组成

博主QQ:819594300 博客地址:http://zpf666.blog.51cto.com/ 有什么疑问的朋友可以联系博主,博主会帮你们解答,谢谢支持! 一.MySQL Server 简介 什么是MySQL? 答:是目前IT行业最流行的开放源代码的数据库管理系统之一,它同时也是一个支持多线程高并发多用户的关系型数据库管理系统. 特点: 简单:安装简单 高效:读写性能高,仅次于oracle 可靠:运行稳定 MySQL 与其他数据库的简单比较: 1)       功能比较 2)       易