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

news2024/11/29 18:46:21

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重启即可。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/589861.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【走进Java框架】什么是Java框架,为什么要学习Java框架.

前言: 大家好,我是良辰丫,今天我们就要开始Java框架之旅了,我们在学习的征途中不断充实自己,提升自己的能力,加油哈,自我勉励一下,跟随我的步伐,一起前行哈.&#x1f48c;&#x1f48c;&#x1f48c; &#x1f9d1;个人主页&#xff1a;良辰针不戳 &#x1f4d6;所属专栏&#…

【前端面试知识点】- 大厂面试(四)

目录 1.什么是尾调用&#xff0c;使用尾调用有什么好处&#xff1f;2.ES6 模块与 CommonJS 模块有什么异同&#xff1f;3.for…in 和 for…of 的区别4.ajax、axios、fetch(前台请求后台数据的方式)5. parseInt()的用法6.浏览器运行机制7.border-radius:50%和100%究竟有什么区别…

Ansible从入门到精通【四】

大家好&#xff0c;我是早九晚十二&#xff0c;目前是做运维相关的工作。写博客是为了积累&#xff0c;希望大家一起进步&#xff01; 我的主页&#xff1a;早九晚十二 专栏名称&#xff1a;Ansible从入门到精通 立志成为ansible大佬 ★ansible-playbook应用 play-book的介绍pl…

lmsys.org最新的LLM排行榜

lmsys.org Large Model Systems Organization (LMSYS Org) 是一个开放的研究组织&#xff0c;由加州大学伯克利分校的学生和教师与加州大学圣地亚哥分校和卡内基梅隆大学合作创立。 他们的目标是通过共同开发开放数据集、模型、系统和评估工具&#xff0c;让每个人都能访问大…

App 应用测试方法以及测试思路

分析三种主流的移动 App 类型&#xff0c;并给出和普通web测试不同的地方&#xff0c;给出测试的思路&#xff0c;并给出部分场景组合。 移动端测试还是 PC 端测试&#xff0c;业务测试其实都属于 GUI 测试的范畴&#xff0c;所以基本的测试思路&#xff0c;比如基于页面对象封…

清凉一夏小风扇-Vue3版

这里写目录标题 前言 一、效果二、代码分享 前言 本片文章主要是做一个小练习&#xff0c;通过Vue来制作一个风扇练习css动画。 上一篇文章主要是讲解了React实现的部分 React实现部分看这里–> 一、效果 二、代码分享 1、主体框架 “sass”: “^1.62.1”, “vue”: “^3…

dvwa靶场通关(四)

第4关&#xff1a;File Inclusion&#xff08;文件包含&#xff09; 1.什么是文件包含&#xff1f; 程序开发人员通常会把可重复使用的函数写到单个文件中&#xff0c;在使用某些函数时&#xff0c;直接调用此文件&#xff0c;无需再次编写&#xff0c;这种调用文件的过程一般…

1. Flask简介

Web应用程序作用 Web&#xff08;World Wide Web&#xff09;诞生最初的目的&#xff0c;是为了利用互联网交流工作文档。 client&#xff08;客户端&#xff09;可以是任何联网的设备&#xff0c;能向服务端发送请求。一次请求一个响应&#xff0c;有多少请求就有多少个响应。…

【计算机视觉 | 目标检测】术语理解6:ViT 变种( ViT-H、ViT-L ViT-B)、bbox(边界框)、边界框的绘制(含源代码)

文章目录 一、ViT & ViT变种1.1 ViT的介绍1.2 ViT 的变种 二、bbox&#xff08;边界框&#xff09;三、边界框的绘制 一、ViT & ViT变种 1.1 ViT的介绍 ViT&#xff0c;全称为Vision Transformer&#xff0c;是一种基于Transformer架构的视觉处理模型。传统的计算机视…

用cmd实现清理系统垃圾

目录 前言一、cmd是什么&#xff1f;二、食用步骤1.第一版本2.第二版本 总结 前言 在使用计算机的过程中&#xff0c;我们经常会产生很多系统垃圾文件&#xff0c;如果不及时清理可能会影响计算机的性能。本文将介绍如何借助cmd帮助我们清理系统垃圾&#xff0c;提高计算机的运…

vue3-实战-01-管理后台项目初始化和项目配置

目录 1-项目初始化 1.1-环境准备 1.2-项目初始化 2-项目配置 2.1-eslint配置 2.2-配置prettier 2.3-配置stylelint 2.4-配置husky 2.5-配置commitlint 2.6-强制使用pnpm包管理器工具 1-项目初始化 从0开始搭建一个vue3版本的后台管理系统。一个项目要有统一的规范&…

fastjson 1.2.24 反序列化导致任意命令执行漏洞复现

前言 fastjson是阿里巴巴的开源JSON解析库&#xff0c;它可以解析JSON格式的字符串&#xff0c;的作用就是把java对象转换为json形式&#xff0c;也可 以用来将json转换为java对象。 fastjson在解析json的过程中&#xff0c;支持使用autoType来实例化某一个具体的类&#xff…

【计算机网络】1.3 ——计算机网络的定义和分类

计算机网络的定义和分类 计算机网络定义 最简单的定义是 一些互相连接的、自治的计算机的集合 互连&#xff0c;指计算机之间可以通过有线或无线的方式进行数据通信自治&#xff0c;是指独立的计算机&#xff0c;它有自己的硬件和软件&#xff0c;可以单独运行使用集合&#…

面试专题:java 多线程(1)----synchronized关键字相关问答

在java 多线程 面试中最多问题1.悲观锁和乐观锁&#xff1b;2.synchronized和lock的区别&#xff1b;3.可重入锁和非可重入锁的区别&#xff1b;4.多线程是解决什么问题的&#xff1b;5.线程池解决什么问题的&#xff1b;6.线程池原理&#xff1b;7.线程池使用注意事项&#xf…

安卓中集成高德地图

安卓中集成高德地图 1.高德地图的优缺点 高德开放平台 | 高德地图API 高德地图优点&#xff1a; 1、领先的地图渲染技术&#xff1a;性能提升10倍&#xff0c;所占空间降低80&#xff05;&#xff0c;比传统地图软件节省流量超过90&#xff05; 2、专业在线导航功能&#x…

JVM之类的初始化与类加载机制

类的初始化 clinit 初始化阶段就是执行类构造器方法clinit的过程。此方法不需定义&#xff0c;是javac编译器自动收集类中的所有类变量的赋值动作和静态代码块中的语句合并而来。构造器方法中指令按语句在源文件中出现的顺序执行。clinit不同于类的构造器。(关联&#xff1a;…

C++-stack题型->最小栈,栈的压入与弹出,逆波兰表达式

目录 最小栈 栈的压入与弹出 逆波兰表达式 最小栈 155. 最小栈 - 力扣&#xff08;Leetcode&#xff09; 设计一个支持 push &#xff0c;pop &#xff0c;top 操作&#xff0c;并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void …

App 测试流程及资料合集

/1 / 测试理论知识:跟其他 web 等测试一样; /2 / 整体测试流程:同 web 类似 具体差异化见下方内容 /3 / App 独特测试点: 客户端兼容性测试:系统版本、不同深度定制的 rom、屏幕分辨率、中断测试、 安装、卸载、升级、对其他程序的干扰等 需要的一些工具: appnium / lr / …

测试工程师转型开发?还是继续磨练测试技能?

测试五年&#xff0c;没有积累编程脚本能力和自动化经验&#xff0c;找工作时都要求语言能力&#xff0c;自动化框架。 感觉开发同事积累的经历容易找工作。 下一步&#xff0c;想办法转开发岗还是继续测试&#xff1f;&#xff1f;&#xff1f; 正常情况下&#xff0c;有了四年…

pdf怎么在线阅读?一键查阅并不难

PDF格式的文件已经成为现代生活中不可或缺的一部分&#xff0c;无论是学术论文、电子书、工作文件还是表格&#xff0c;都有可能以PDF格式出现。然而&#xff0c;为了读取这些文件&#xff0c;我们需要安装PDF阅读器&#xff0c;这在某些情况下可能会带来不便。因此&#xff0c…