MYSQL5.7 切换datadir数据目录

Mysql5.7修改data存储路径 阅读详情

众所周知,centos7操作系统mysql5.7采用安装方式部署的情况下,他的数据目录默认是在/var/lib/mysql,而其占用的是根路径对应的磁盘空间,一般服务器都是会额外外挂一个磁盘空间,理论上应该把数据目录放外挂的磁盘空间。否则就会导致我们的根路径磁盘空间马上就不够用了。所以后知后觉的人们就会需要下面的操作,对已有的数据库数据目录进行转移。

开始之前,请你做好数据备份工作,备份好你的数据库
上面的备份事项弄清楚了,再往下看!

1. 停止mysql服务

在迁移数据文件之前,首先需要停止MySQL服务,以确保数据文件不会在迁移过程中发生变化。

sudo systemctl stop mysqld

或者,如果您使用的是init系统:

bash sudo service mysql stop

2. 复制数据文件到新位置

使用rsync或cp命令将/var/lib/mysql目录下的所有文件复制到新的位置。例如,如果您想将数据文件迁移到/new/location/mysql,可以使用以下命令:

sudo cp -Rp /var/lib/mysql /new/location/

当你以为只是简单的复制就ok那就想简单了。因为centos7使用了SELinux,系统会控制应用能访问的目录,所以如果不更改相关配置,则会导致启动数据库失败,提示没有权限。

#使用此命令看你新目录的mysql文件夹
ll -Z
#正确的应该是下面这样
drwxr-x--x. mysql mysql unconfined_u:object_r:mysqld_db_t:s0 mysql

如果不是则按如下操作。

sudo semanage fcontext -a -t mysqld_db_t "/new/location/mysql(/.*)?"
sudo restorecon -R /new/location/mysql

确保在复制过程中保留文件的权限和所有权,这对于MySQL的正常运行至关重要。

SELinux(Security-Enhanced
Linux)是一个安全模块,集成在Linux内核中,它提供了一种强制访问控制(MAC)机制,用于增强操作系统的安全性。SELinux由美国国家安全局(NSA)开发,并在2000年12月发布,随后被合并到Linux内核的主线版本中。

如需判断系统是否开启了SELinux,使用以下语句

sestatus
如果出现下面的结果,就是开启了。

SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Memory protection checking: actual (secure)
Max kernel policy version: 31

3.修改mysql 配置文件

编辑MySQL的配置文件my.cnf(通常位于/etc/mysql/my.cnf或/etc/my.cnf),更新datadir参数以指向新的数据文件位置。

vi /etc/my.cnf

在配置文件中找到以下行:

datadir = /var/lib/mysql

将其修改为:

datadir = /new/location/mysql

保存 esc :wq 关闭文件。

4. 启动mysql数据库

现在可以启动MySQL服务,并检查是否一切正常。

复制

sudo systemctl start mysqld

或者,如果您使用的是init系统:

复制

bash sudo service mysql start

5.其他事项

正常情况下,上面的步骤是一切顺利的,至此已经完成迁移工作。

但你不能删了原来的mysql文件夹,针对性的删除一些大数据,除非你确保你的my.cnf配置已经完全把所有路径更改了。因为还有sock等。

如果启动失败了,那么已经超出此篇博文的内容了。需要看一下具体失败原因再进行解决。实在不行,就切回去从长计议。切回去只要更改配置文件my.cnf datadir改为原来的路径即可。

#查看当前数据库服务的状态
systemctl status mysqld

默认的mysqld的日志在

#排查数据库启动失败的原因
tail -f /var/log/mysqld.log
数据目录驱动测试——深入探讨Pytest插件 pytest-datadir 在项目开发中,通过应用 pytest-datadir 插件,你可以更高效地编写和管理测试用例,提高测试代码的质量。pytest-datadir 是Pytest的一个插件,它允许你使用外部目录中的文件作为测试数据源,将测试数据与测试代码分离。pytest-datadir 插件的基本用法非常简单。我们使用 pytest-datadir 插件来测试这个函数,通过数据目录中的不同文件测试不同的输入数据:​​​​​​​。考虑一个更复杂的测试场景,我们有一个处理数据的函数 process_data:​​​​​​​。 阅读详情

相关推荐

Debian7.8源码安装MySQL5.7

sudo apt-get install g++ gdb libncurses5-dev cmake make chkconfig libpcre+* zlib1g* libssl1.0.0 libssl-dev grep // 安装环境 sudo groupadd mysql

陌上出 2982

修改MySQL默认数据目录 (datadir) 的步骤

然而,有时我们希望将默认的数据目录修改为自己想要的路径。请注意,修改MySQL的默认数据目录可能会对系统和应用程序造成影响,请谨慎操作,并确保在进行任何更改之前备份数据。一旦MySQL服务启动成功,我们可以验证新的数据目录是否生效。在修改数据目录之前,我们需要先停止正在运行的MySQL服务。在进行修改之前,我们应该先将之前的数据目录备份到新的目录中。该命令将显示MySQL当前使用的数据目录路径。我们还需要确保新的数据目录具有正确的文件权限。接下来,我们需要修改MySQL的配置文件以指定新的数据目录。

带你成为别人眼中的大佬! 2160

windows安装mysql 5.7

下面记载一下自己在本地安装mysql5.7的过程以及其中遇到的一点二坑爹的问题,希望对看到的小伙伴有所帮助, 1、官网下载mysql,选择对应的版本,我这里选择的是5.7版, 2、下载到本地的某个目录后进行解压,解压完毕,进入到这个目录中,二进制安装需要创建一个配置文件,即my.ini, 3、下面是my.ini的配置文件信息, [mysql] # 设置mysql客户端默认字符集 default...

congge 7322

告别‘抓瞎’:CANoe的Trace、Graphics和Logging窗口实战技巧,高效分析总线故障

本文深入解析CANoe的Trace、Graphics和Logging窗口实战技巧,帮助工程师高效分析总线故障。通过智能过滤、可视化监控和智能日志管理,构建系统级问题定位工作流,显著提升车载网络故障排查效率。

weixin_42709044的博客 292

极简JEPA世界模型实战:低门槛复现LeWorldModel,CPU可跑

这次我们来看一个能让普通开发者真正上手跑起来的“世界模型”项目。如果你对Yann LeCun提出的JEPA(联合嵌入预测架构)框架感兴趣,但又苦于Meta官方实现过于庞大复杂,那么这个GitHub上4k star的项目就是为你准备的。它用极简的PyTorch代码(核心文件仅160-278行)完整复刻了包括LeWorldModel在内的五个JEPA核心变体,最大的亮点是: 门槛极低,普通笔记本甚至CPU就能跑,显存占用友好,非常适合学习和原理验证。 这个项目名为 keon/jepa ,完全开源。它剥离了工业级

weixin_29031161的博客 421

【全解析 | PTA】浙大版《Python 程序设计》题目集-第一章

Python浙大版PTA题解

wzhh_的博客 5527

如何用Deep OC-SORT提升多目标跟踪精度?实战配置与性能优化指南

本文是一份针对开发者的Deep OC-SORT多目标跟踪实战指南。详细解析了如何通过部署其核心的“动态外观记忆”与“相机防抖”模块来有效应对遮挡与抖动,从而显著提升跟踪精度与连续性。内容涵盖从环境搭建、参数调优到性能压榨的全流程,并提供针对不同场景的配置建议与工程落地技巧。

f9g0h的博客 670

从原理到实践:详解RGBD相机深度与彩色图像对齐(D2C)算法

本文深入解析了RGBD相机深度与彩色图像对齐(D2C)算法的原理与实现。针对自组装相机中深度图与彩色图不匹配的核心痛点,文章从相机模型、坐标系变换等数学基础讲起,剖析了传统点映射算法的缺陷,并重点介绍了高效的矩形区域映射算法。该算法通过将深度像素视为矩形区域进行映射,有效解决了空洞和遮挡问题,并附有可直接复用的C++代码与优化技巧,为三维重建、机器人视觉等应用奠定坚实基础。

weixin_28363123的博客 241

6.6kW的车载充电器(On-Board Charger, OBC)电路分析

图片展示了6.6kW的车载充电器(On-Board Charger, OBC)电路,其中包含双向和单向两种拓扑结构。接下来我们将深入分析每个模块的设计、原理及其优势,以帮助理解不同结构在实际应用中的选型和应用。

weixin_43199439的博客 5658

深度解析:C# Modbus TCP协议解析与异常处理(工控上位机必备)

协议解析要精准:掌握MBAP头和PDU的结构,尤其是常用功能码的请求/响应格式,避免因字节处理错误导致通信失败;异常处理要全面:覆盖通信层、协议层、数据层的所有异常类型,针对工业场景制定重试、重连、滤波等策略;资源管理要规范:使用释放资源,采用连接池复用连接,避免端口泄露;工业场景要适配:结合工控现场的特点(网络波动、电磁干扰、设备忙),优化通信效率和数据处理逻辑。通过以上解析和策略,可确保C#上位机与工业设备的Modbus TCP通信具备高稳定性、高可靠性、高容错性,满足工控领域的严苛要求。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 997

【华为OD机试真题E卷】474、推荐多样性 | 机试真题+思路参考+代码解析(E卷复用)(C++、Java、Py)

题目描述 >推荐多样性需要从多个列表中选择元素,一次性要返回 N 屏数据(窗口数量),每屏展示 K 个元素(窗口大小),选择策略:   各个列表元素需要做穿插处理,即先从第一个列表中为每屏选择一个元素,再从第二个列表中为每屏选择一个元素,依次类推   每个列表的元素尽量均分为 N 份,如果不够 N 个,也要全部分配完,参考样例图:

KJ.JK 4434

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

上一篇: Linux服务器自动监听Web应用接口,未响应自动重启JAVA应用脚本
下一篇: MYSQL 批量删除连接
呆呆的小青蛙
博客等级 码龄16年 1815粉丝 46原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆呆的小青蛙

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值