当前位置: 首页 > news >正文

MySQL数据文件迁移(不关闭SELinux)

背景

日常实施中可能会出现在部署MySQL时未更改数据默认存储路径(默认:/var/lib/mysql),然而一般分配服务器的人只会给系统分区分配50G的空间,这导致后续空间不够用的情况,也就出现了需要迁移数据的问题。

当前测试环境

╰─$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
╰─$ mysqladmin --version
mysqladmin  Ver 8.0.32 for Linux on x86_64 (MySQL Community Server - GPL)
╰─$ 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
Max kernel policy version:      31

迁移步骤

mysql默认的数据文件存储目录为/var/lib/mysql。假如要把目录移到/data/app/下需要进行以下几步:

1、创建目录

mkdir -p /data/app

2、停止mysql服务

systemctl stop mysqld.service

3、移动数据默认文件夹到新位置

cp -rf /var/lib/mysql /data/app/

4、修改my.cnf配置文件

编辑/etc/my.cnf文件,如果不存在改配置文件,到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中后再修改。命令如下:

cp /usr/share/mysql/my-medium.cnf /etc/my.cnf

在/etc/my.cnf文件中找到以下两行并将等号后的/var/lib/路径修改为新路径/data/app/

#socket=/var/lib/mysql/mysql.sock
socket=/data/app/mysql/mysql.sock
#datadir=/var/lib/mysql
datadir=/data/app/mysql/

5、更改新目录的文件属主

chown -R mysql:mysql /data/app/mysql

6、启动mysql服务

systemctl start mysqld.service

问题

mysqld: File './binlog.index' not found (OS errno 13 - Permission denied)

大概是因为SELinux的限制,可以将SELinux关掉。但是Every time you run setenforce 0, you make Dan Walsh weep. Dan is a nice guy and he certainly doesn't deserve that.,Seriously, stop disabling SELinux. Learn how to use it before you shut it off. 😂😂😂

可以尝试了解一下Red Hat Chapter 3. SELinux Contexts

我通过以下步骤,在保证SELinux开启的状态下,解决了这个问题。

1、设置文件安全上下文

To set mysql selinux on a directory you can:

semanage fcontext -a -t mysqld_db_t "/data/app/mysql(/.*)?"

2、修改目录安全上下文

restorecon -Rv /data/app/mysqlls -lZ

3、设置文件所属人和组

Set permissions if needed:

chown -R mysql:mysql /data/app/mysql

参考:

  • MySQL 8.0.13 systemctl start throws error 13
  • mysql bin-log.index not found
  • How to set selinux permission for non-standard mysql bin log path?
  • SELinux默认安全上下文的查询和修改(semanage命令)
  • chcon 修改对象(文件)的安全上下文

相关文章:

MySQL数据文件迁移(不关闭SELinux)

背景 日常实施中可能会出现在部署MySQL时未更改数据默认存储路径(默认:/var/lib/mysql),然而一般分配服务器的人只会给系统分区分配50G的空间,这导致后续空间不够用的情况,也就出现了需要迁移数据的问题。…...

uboot / linux添加/去除 版本号LOCALVERSION

背景 偶然的机会,在insmod驱动模块的时候,遇到报错: 查找原因,说是当前系统内核版本和模块编译使用版本不同! 使用如下命令查看当前系统内核版本: uname -r 使用modinfo命令(嵌入式设备没有此…...

2023北京养老展,北京养老展会,北京养老产业展览会

CBIAIE第十届中国(北京)国际老年产业博览会,8月28-30日在北京亦创国际会展中心举办; 预期效果:中国(北京)国际老年产业博览会China (Beijing) International Aged industry Expo(CB…...

华为OD机试 - 分糖果(Java) | 机试题算法思路 【2023】

使用说明 参加华为od机试,一定要注意不要完全背诵代码,需要理解之后模仿写出,通过率才会高。 华为 OD 清单查看地址:https://blog.csdn.net/hihell/category_12201821.html 华为OD详细说明:https://dream.blog.csdn.net/article/details/128980730 分糖果 小明从糖果…...

带你彻底了解浮点型数据的存储

🚀🚀🚀大家觉不错的话,就恳求大家点点关注,点点小爱心,指点指点🚀🚀🚀 目录 🐰浮点型在内存的存储 🤔提示:数据类型的存储范围 &a…...

【牛客刷题专栏】0x0C:JZ4 二维数组中的查找(C语言编程题)

前言 个人推荐在牛客网刷题(点击可以跳转),它登陆后会保存刷题记录进度,重新登录时写过的题目代码不会丢失。个人刷题练习系列专栏:个人CSDN牛客刷题专栏。 题目来自:牛客/题库 / 在线编程 / 剑指offer: 目录前言问题…...

「mysql是怎样运行的」第5章 盛放记录的大盒子---InnoDB数据页结构

「mysql是怎样运行的」第五章 盛放记录的大盒子—InnoDB数据页结构 文章目录「mysql是怎样运行的」第五章 盛放记录的大盒子---InnoDB数据页结构[toc]一、不同类型的页介绍二、数据页结构的快速浏览三、记录在页中的存储记录头信息的秘密四、Page Directory(页目录)五、Page He…...

模电中的负反馈

文章目录一、反馈是什么?二、负反馈对于放大性能的影响1.负反馈的作用三、正反馈总结– 一、反馈是什么? 反馈的定义:凡是将放大电路输出端信号(电压或电流)的一部分或者全部引回到输入端,与输入信号叠加…...

eclipse中整理左侧项目栏文件

💡在使用eclipse的过程中,随着项目越来越多,会使得项目管理变得困难,介绍一下eclipse中对于项目分类存放(Java Working Set)的解决方案。如果按照默认的方式查看项目列表是这种效果:⭕当创建使用小项目过多…...

IDEA性能优化设置(解决卡顿问题)修改内存

在我们日常使用IDEA进行开发时,可能会遇到许多卡顿的瞬间,明明我们的机器配置也不低啊?为什么就会一直卡顿呢? 原来这是因为IDEA软件在我们安装的时候就设置了默认的内存使用上限(通常很小),这就…...

Android ABI

概念 不同的 Android 设备使用不同的 CPU,而不同的 CPU 支持不同的指令集。CPU 与指令集的每种组合都有专属的应用二进制接口 (ABI)。ABI 包含以下信息: 可使用的 CPU 指令集(和扩展指令集)。运行时内存存储和加载的字节顺序。Android 始终是 little-endian。在应用和系统…...

决策树算法和CART决策树算法详细介绍及其原理详解

相关文章 K近邻算法和KD树详细介绍及其原理详解朴素贝叶斯算法和拉普拉斯平滑详细介绍及其原理详解决策树算法和CART决策树算法详细介绍及其原理详解 文章目录相关文章前言一、决策树算法二、CART决策树算法2.1 基尼系数2.2 CART决策树算法总结前言 今天给大家带来的主要内容包…...

ChatGPT风口下的中外“狂飙”,一文看懂微软、谷歌、百度、腾讯、华为、字节跳动们在做什么?

毫无疑问,ChatGPT正成为搅动市场情绪的buzzword。 历史经历过无线电,半导体,计算机,移动通讯,互联网,移动互联网,社交媒体,云计算等多个时代,产业界也一直在寻找Next Big…...

前端的核心技术有哪些?

前端即网站前台部分,运行在PC端,移动端等浏览器上展现给用户浏览的网页。随着互联网技术的发展,HTML5,CSS3,前端框架的应用,跨平台响应式网页设计能够适应各种屏幕分辨率,合适的动效设计&#x…...

Talk预告 | 悉尼科技大学澳大利亚人工智能研究所讲师方震:广义分布外检测的学习理论

本期为TechBeat人工智能社区第476期线上Talk! 北京时间2月22日(周三)20:00,悉尼科技大学澳大利亚人工智能研究所讲师——方震的Talk将准时在TechBeat人工智能社区开播! 他与大家分享的主题是: “广义分布外检测的学习理论”,届时将…...

企业微信的聊天机器人来了,免费下载(Python版)

大家好,这里是程序员晚枫,个人网址:python-office.com 上次分享了微信机器人的视频以后,视频下面有一个热门评论: 什么时候开发企业版微信机器人?自动回复、自动群发等等~ 在经历了一段时间的查找和开发以…...

DataGear 4.5.0 发布,数据可视化分析平台

DataGear 4.5.0 发布,带来数据集计算属性新功能,具体更新内容如下: 新增:数据集属性新增计算表达式功能,可对原始数据进行二次计算处理;新增:HTTP接口数据集新增文本、XML请求体类型支持&#…...

Java使用Aria2c进行文件下载

在Java服务中有复杂网络环境下下载大文件的需求,一开始自己写了一个多线程下载,但遇到校园网下载1G以上大文件时直接卡死了。 经调研后决定用aria下载器,成熟稳定,避免自己去处理各种网络问题。下面记录一下windows和ubuntu系统上…...

Dart 表达式以及语法糖汇总

前言 Dart语言中有许多语法糖或者说lambda表达式,语法和代码量是简洁了许多,但给想要入门的我添加了许多困扰,我经常看官方API或者第三方文档API的时候,在示例中大量的使用了类似的语法糖,让代码的可读性大大下降&…...

支付宝支付功能使用

1、进入“蚂蚁金服开放平台” https://open.alipay.com/https://open.alipay.com/ 2、下载支付宝官方 demo,进行配置和测试 文档地址 手机网站支付 DEMO | 网页&移动应用支付宝文档中心https://opendocs.alipay.com/open/02no47 demo下载 网页…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型:架构设计与关键步骤 在当今数字化转型的浪潮中,大语言模型(LLM)已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中,不仅可以优化用户体验,还能为业务决策提供…...

7.4.分块查找

一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...

stm32G473的flash模式是单bank还是双bank?

今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

三维GIS开发cesium智慧地铁教程(5)Cesium相机控制

一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点&#xff1a; 路径验证&#xff1a;确保相对路径.…...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中&#xff0c;手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力&#xff0c;既支持点击、长按、拖拽等基础单一手势的精细控制&#xff0c;也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣&#xff08;LeetCode&#xff09; 思路 使用两个栈&#xff1a;一个存储重复次数&#xff0c;一个存储字符串 遍历输入字符串&#xff1a; 数字处理&#xff1a;遇到数字时&#xff0c;累积计算重复次数左括号处理&#xff1a;保存当前状态&a…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...