博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql报错文档_mysql报错小记-Can't create test file xxx lower-test
阅读量:7069 次
发布时间:2019-06-28

本文共 1328 字,大约阅读时间需要 4 分钟。

在linux中碰到提示mysql提示[Warning] Cant create test file xxx lower-test了,下面有碰到此类问题的朋友一起来看看解决办法。

我想,你一定是从搜索引擎搜索这个标题进来的!你一定是想改变mysql默认安装的数据目录!

你已经修改了my.cnf中的datadir的值

首先是查看数据库日志

mysqld started

[Warning] Can't create test file xxx.lower-test

[Warning] Can't create test file xxx.lower-test

/usr/libexec/mysqld: Can't change dir to '/xxx' (Errcode: 13)

[ERROR] Aborting

你已经chown和chmod了数次新数据目录或者其父路径的属主和权限

你无数次地试图service mysql start,或者 /etc/init.d/mysql start,以及mysql_install_db!

恭喜你看见这篇文章,我在被系统坑了几个小时之后,找到了解决的方法。

这个原因有二,其中任意的一个原因都会造成你被系统告知这个warning。如果你不是一个专业的linux系统安全工程师,或者你只是个PHP程序员,并没有对系统安全有深入的研究,你就不会太容易找到它的答案。

第一,selinux,记得当年念书时,字符界面安装redhat(很古老的操作系统么。。。)的时候,有这么一个选项,通常大家都听取前辈的建议,改变默认值以不安装它。但如果你恰好要操作的这台机器开着selinux,它确实能够使你的mysql无法在新目标位置进行mysql_install_db的操作,并爆出标题所示的警告。一个简单的解决办法是使用命令暂时关闭selinux,以便让你的操作可以继续下去

setenforce 0

但最好使用一个永久方法,以便在重启后继续不要这货。

修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启或等待下次重启。

第二,apparmor,这个坑爹货和selinux一样的坑爹,它也对mysql所能使用的目录权限做了限制

在 /etc/apparmor.d/usr.sbin.mysqld 这个文件中,有这两行,规定了mysql使用的数据文件路径权限

/var/lib/mysql/ r,

/var/lib/mysql/** rwk,

你一定看到了,/var/lib/mysql/就是之前mysql安装的数据文件默认路径,apparmor控制这里mysqld可以使用的目录的权限

我想把数据文件移动到/data/mysql下,那么为了使mysqld可以使用/data/mysql这个目录,照上面那两条,增加下面这两条就可以了

/data/mysql/ r,

/data/mysql/** rwk,

重启apparmor,/etc/inid.d/apparmor restart

原文:http://www.111cn.net/database/mysql/55211.htm

转载地址:http://hpqll.baihongyu.com/

你可能感兴趣的文章
svn 常用命令总结
查看>>
行迁移、行链接
查看>>
8数码问题(2)
查看>>
1001. A+B Format (20)
查看>>
html5: 新特性(一)
查看>>
屏幕尺寸,分辨率,像素,PPI之间到底什么关系?
查看>>
Java输入输出流练习
查看>>
Redis中的批量删除数据库中的Key
查看>>
Git
查看>>
Docker 安装部署
查看>>
一种增加图像自然饱和度的方法
查看>>
Python基础之range()
查看>>
布尔类型
查看>>
MusicPlayer
查看>>
eclipes安装ADT错误处理
查看>>
Java 中的System.exit
查看>>
使用SVN钩子强制提交日志和限制提交文件类型
查看>>
AngularJS in Action读书笔记3——走近Services
查看>>
学习SpringMVC——你们要的REST风格的CRUD来了
查看>>
Java:输入输出流 java.io包的层次结构
查看>>