×

CentOS7下更改、移动mysql数据存储的位置 附os 错误码13问题

dingpeng dingpeng 发表于2023-10-16 21:05:34 浏览223 评论0

抢沙发发表评论

CentOS7下更改、移动mysql数据存储的位置 附os 错误码13问题


1、看一下目前mysql数据存储的位

select @@datadir;


从这个结果我们可以看出,当前mysql的datadir是在/var/lib/mysql 目录里的


 2、关掉连接mysql的各种程序服务

systemctl stop mysqld

service mysql stop

3、在期望的位置创建目录(datadir的新位置)

将目录的user和group变更为mysql(老位置也是这样的)


mkdir /home/data/mysql

chown -R mysql:mysql /home/data/mysql

4、将老位置目录下的东西复制到新位置下

cp -Rp /var/lib/mysql/* /home/local/data/mysql

5、修改mysql的config文件

默认情况下,mysql的config信息在/etc/my.cnf 里

先对当前的config文件做个备份


cp /etc/my.cnf /etc/my.cnf.orign


然后把vi my.cnf 修改成以下内容


[mysqld]

datadir=/data/mysql

socket=/data/mysql/mysql.sock

 

[client]:

port=3306

socket=/data/mysql/mysql.sock

有文章成添加 client可以防止启动报错,不清楚,我保持原样 出现了 


(OS errno 13 - Permission denied) 错误 


6、开启mysql服务

# mysql + centos7/8

systemctl start mysqld

 

# mysql + centos 5/6

service mysqld start


7、验证结果

用客户端连接mysql,发现数据库存在,查询数据目录位置已经变化;


OS errno 13 - Permission denied  错误处理

迁移后启动服务时报错


运行提示命令检查


错误信息不是很明显,检查MySQL日志



解决方案:


这可能是由于SElinux的安全上下文导致的,可尝试setenforce 0 命令关闭selinux以验证该问题。


[root@localhost ~]# getenforce    //查看selinux状态

Enforcing

[root@localhost ~]# setenforce 0    //临时关闭selinux,重启后失效

 

[root@localhost ~]# getenforce

Permissive

[root@localhost ~]# systemctl start mysqld     //启动mysql服务成功

如此,可证明确实是由selinux导致的,可尝试:


1、查看一下原本的数据目录的该属性


SELinux安全上下文查看方法(超详细):http://c.biancheng.net/view/1149.html


[root@localhost ~]# ls -Z /var/lib/mysql

#使用选项-Z查看文件和目录的安全上下文

-rw-r--r--.root root system_u:object_r:mysqld_db_t:s0 install.log

-rw-r--r--.root root system_u:object_r:mysqld_db_t:s0 install.log.syslog

2、确定了原来数据目录属性为mysqld_db_t,将你的新datadir属性更改为mysqld_db_t:


chcon -R -t mysqld_db_t <你的新datadir>


3、修改完后,查看你的新datadir的属性,ls -Z <你的新datadir>


若发现存在部分目录属性还不是mysqld_db_t,使用命令(chcon -R -t mysqld_db_t <你的目录>)继续修改


4、使用systemctl start mysqld重启即可。

————————————————

版权声明:本文为CSDN博主「bingfengzhihuo521」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/bingfengzhihuo521/article/details/130953274