用软连接改变了/var/lib/mysql的位置,并设置好mysql.mysql的权限,但是发现还是不能启动。

发现/var/log/mysqld.log

150308 16:16:02 [Warning] Can't create test file /var/lib/mysql/Gadget.lower-test

150308 16:16:02 [Warning] Can't create test file /var/lib/mysql/Gadget.lower-test
/usr/libexec/mysqld: Can't change dir to '/var/lib/mysql/' (Errcode: 13)

想了想应该还是某种权限问题,经过查帖子发现

chcon  -t var_lib_t /home
chcon -R -t mysqld_db_t /home/mysql

原因是

看最初的时候/var/lib/mysql目录的属性:
[root@centos6 mysql]# ls -alZ
drwxr-xr-x. mysql mysql system_ubject_r:mysqld_db_t:s0 .
drwxr-xr-x. root  root  system_ubject_r:var_lib_t:s0   ..
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 centos6-relay-bin.000001
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 centos6-relay-bin.000002
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 centos6-relay-bin.index
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 ibdata1
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 ib_logfile0
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 ib_logfile1
-rw-rw----. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 master.info
drwx------. mysql mysql unconfined_ubject_r:mysqld_db_t:s0 mysql
-rw-rw----. mysql mysql unconfined_u:object_r:mysqld_db_t:s0 mysqld-relay-bin.000001
-rw-rw----. mysql mysql unconfined_u:object_r:mysqld_db_t:s0 mysqld-relay-bin.index
srwxrwxrwx. mysql mysql unconfined_u:object_r:mysqld_var_run_t:s0 mysql.sock
-rw-rw----. mysql mysql unconfined_u:object_r:mysqld_db_t:s0 relay-log.info
drwx------. mysql mysql unconfined_u:object_r:mysqld_db_t:s0 test

发现/var/lib的selinux属性是var_lib_t
/var/lib/mysql以下所有文件的selinux属性是mysqld_db_t

所以这两步必须执行。

linux上改变mysql数据文件的位置的更多相关文章

  1. 修改MySQL数据文件的位置

    1:查看MySQL服务名称 2:管理员启动控制台 3:修改配置文件my.ini中数据文件的位置,[注]修改完成之后要把响应的数据文件从旧目录拷贝到新目录当中. 4:重新启动服务 5:登录数据库查看数据 ...

  2. Linux Centos 迁移Mysql 数据位置

    Linux Centos 迁移Mysql 数据位置 由于业务量增加导致安装在系统盘(20G)磁盘空间被占满了, 现在进行数据库的迁移. Mysql 是通过 yum 安装的. Centos6.5Mysq ...

  3. windows下更换MySql数据库数据文件夹位置

    详细解决地址 ,感谢博主  :https://blog.csdn.net/u010953266/article/details/56499361 概述 由于更换硬盘,系统重新安装了一遍,原来的mysq ...

  4. 怎样在 Ubuntu Linux 上安装 MySQL

    本教程教你如何在基于 Ubuntu 的 Linux 发行版上安装 MySQL.对于首次使用的用户,你将会学习到如何验证你的安装和第一次怎样去连接 MySQL. -- Sergiu MySQL 是一个典 ...

  5. 转】[MySQL优化]为MySQL数据文件ibdata1瘦身

    原博文出自于: http://blog.fens.me/category/%E6%95%B0%E6%8D%AE%E5%BA%93/page/2/ 感谢! [MySQL优化]为MySQL数据文件ibda ...

  6. 【数据库开发】在Windows上和Linux上配置MySQL的过程

    [数据库开发]在Windows上和Linux上配置MySQL的过程 标签(空格分隔): [编程开发] 首先是在Windows上尝试用QT进行MySQL数据库开发,结果总出现driver不能load的错 ...

  7. linux上安装 mysql

    一.linux 上安装 mysql 1.查看mysql是否安装 rpm -qa|grep mysql 2.卸载 mysql yum remove mysql mysql-server mysql-li ...

  8. sqlyog连接Linux上的mysql报错误号码2013,错误号码1130的解决办法

    sqlyog连接Linux上的mysql报错误号码2013,错误号码1130的解决办法 1.报错误号码2013,可能是端口号不是默认的3306,需要改成对应的,检查命令是: [root@host et ...

  9. Linux上通过MySQL命令访问MySQL数据库时常见问题汇总

    Linux上通过mysql命令访问MySQL数据库时常见问题汇总 1)创建登录账号 #创建用户并授权 #允许本地访问 create user 'test'@'localhost' identified ...

随机推荐

  1. To Use Ubuntuubunt

    1.rename PC; modify the /etc/hostname. 2.Use root account; 1.set the password for root account: sudo ...

  2. 利用PHP SOAP实现WEB SERVICE

    php有两个扩展可以实现web service,一个是NuSoap,一个是php 官方的soap扩展,由于soap是官方的,所以我们这里以soap来实现web service.由于默认是没有打开soa ...

  3. github研究

    一个程序猿一定会用git,但是我还没怎么用过,平时真是懒啊,学习之!...

  4. 创建DB2数据库时报错--SQL1052N 数据库路径不存在(Windows)(转载)

    用DB2 v9.7新建数据库的时候,默认路径为:D:\ 把缺省路径“写的是D:\XXX(此目录存在),新建时提示如下:SQL1052N 数据库路径 "D:\XXX" 不存在.如下: ...

  5. 李洪强漫谈iOS开发[C语言-006]-程序的描述方式

  6. RTMP/RTP/RTSP/RTCP的区别

    RTCP RTMP/RTP/RTSP/RTCP的区别 http://blog.csdn.net/frankiewang008/article/details/7665547 流媒体协议介绍(rtp/r ...

  7. Linux命令(3):wc命令

    Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 1.命令格式: wc [选项]文件... 2.命令功能: 统计指定文件中的字节数. ...

  8. JSP的设计模式

    1.JSP模型1(JSP+JavaBean) JSP页面负责处理请求,并将响应发送给客户端.JSP页面文件包括:login.html.loginchk.jsp.welcome.jsp.JavaBean ...

  9. BZOJ 1415 聪聪和可可(概率DP)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=1415 题意:一个无向图,一个猫.一只老鼠.在任意时刻猫知道老鼠在哪个顶点上.每次移动猫先 ...

  10. C#中的转换

    11.3  转换 到目前为止,在需要把一种类型转换为另一种类型时,使用的都是类型转换.而这并不是唯一的方式. 在计算过程中,int可以采用相同的方式隐式转换为long或double,还可以定义所创建的 ...