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

ubuntu18 下更改 mysql 数据目录

一、修改步骤

更改 MySQL 的数据目录需要注意以下几个步骤:

  1. 停止 MySQL 服务

    在 Ubuntu 中,你可以使用以下命令停止 MySQL 服务:

    sudo systemctl stop mysql
    ```
  2. 复制现有数据

    假设你的新的数据目录是 /new/dir/mysql,你应该使用 rsync 复制现有的数据。这样可以保留文件和目录的权限。

    sudo rsync -av /var/lib/mysql /new/dir
    ```
  3. 更改 MySQL 配置

    在 /etc/mysql/mysql.conf.d/mysqld.cnf 文件中找到 datadir 行,更改为新的目录:

    datadir=/new/dir/mysql
    ```你可能需要使用 `sudo` 权限编辑此文件。
  4. 更新 AppArmor 权限

    Ubuntu 使用 AppArmor 作为访问控制系统,你需要更新 MySQL 的配置文件以允许访问新的数据目录。在 /etc/apparmor.d/tunables/alias 文件中添加以下内容:

    alias /var/lib/mysql/ -> /new/dir/mysql/,
    ```你可能需要使用 `sudo` 权限编辑此文件。
  5. 重启 AppArmor

    使用以下命令重启 AppArmor:

    sudo systemctl restart apparmor
    ```
  6. 启动 MySQL 服务

    最后,你可以启动 MySQL 服务:

    sudo systemctl start mysql
    ```如果 MySQL 服务启动失败,你应该检查 MySQL 的日志文件以找到可能的问题。
    
  7. sql 语句验证

SHOW VARIABLES LIKE 'datadir';

SHOW DATABASES;

SELECT DATABASE();

SHOW TABLES;

SELECT * FROM 表名

请注意,这些步骤需要高级的系统管理技能,如果你不确定,应该寻求专业的帮助。同时,更改数据目录可能会影响到备份和其他依赖 MySQL 的应用,因此在操作前应该进行充分的规划和测试。

二、新知识点注入 

rsync命令

功能介绍:

rsync 是一个用于文件传输和备份的命令行工具,它可以在本地或远程系统之间同步文件和目录。它的设计目标是快速、灵活和安全地传输数据。下面是 rsync 命令的详细说明:

基本语法:

rsync [OPTION]... SRC [SRC]... DEST

常用选项:

  • -a, --archive:以归档模式传输文件和目录,保持文件属性、权限、时间等信息。
  • -v, --verbose:显示详细输出,可用于跟踪传输过程。
  • -r, --recursive:递归传输目录及其内容。
  • -z, --compress:在传输过程中压缩数据,以减少传输的数据量。
  • -u, --update:仅传输源目录中新于目标目录的文件。
  • -n, --dry-run:执行模拟运行,显示将要执行的操作而不实际执行。
  • --delete:删除目标目录中不在源目录中的文件。
  • --exclude=PATTERN:排除符合指定模式的文件或目录。
  • --progress:显示传输进度信息。

示例用法:

1. 本地文件同步:

rsync -avz /path/to/source /path/to/destination

该命令将本地源目录 /path/to/source 下的文件和目录以归档模式同步到本地目标目录 /path/to/destination

2. 本地到远程同步:

rsync -avz /path/to/source username@remote:/path/to/destination

该命令将本地源目录 /path/to/source 下的文件和目录以归档模式同步到远程服务器的目标目录 /path/to/destination,需要提供远程服务器的用户名和登录地址。

3. 远程到本地同步:

rsync -avz username@remote:/path/to/source /path/to/destination

该命令将远程服务器的源目录 /path/to/source 下的文件和目录以归档模式同步到本地的目标目录 /path/to/destination,需要提供远程服务器的用户名和登录地址。

这只是 rsync 命令的一些常见用法,还有更多的选项和用法可以根据具体需求进行探索和使用。可以通过运行 man rsync 或 rsync --help 命令获取完整的 rsync 命令手册和帮助信息。

AppArmor是什么

AppArmor(Application Armor)是一种增强安全性的 Linux 内核安全模块,用于限制应用程序的访问权限,从而提供额外的安全保护。它通过定义应用程序的访问策略,限制其对系统资源的访问,以减轻潜在的安全风险。

下面是关于 AppArmor 的详细说明:

工作原理:

AppArmor 通过为每个应用程序创建一个安全策略配置文件来工作。这个配置文件定义了应用程序在运行时可以访问的文件、目录、网络端口等资源。当应用程序运行时,AppArmor 监视其行为,并根据配置文件中定义的策略限制其访问权限。如果应用程序尝试访问未经授权的资源,AppArmor 将阻止该操作并记录相关事件。

主要特点:

  • 简单配置:AppArmor 使用基于文本的配置文件,易于理解和编辑。
  • 灵活性:可以为每个应用程序创建独立的安全策略配置文件,根据实际需求进行定制。
  • 按需加载:AppArmor 可以在需要时加载和卸载应用程序的安全策略,减少系统资源的占用。
  • 强制模式和学习模式:AppArmor 可以以强制模式或学习模式运行。在强制模式下,应用程序只能访问授权的资源,而在学习模式下,AppArmor 记录应用程序的行为并生成安全策略配置文件,供后续使用。

配置和使用:

  1. 安装 AppArmor:可以使用系统包管理器安装 AppArmor 软件包,例如在 Ubuntu 上使用以下命令:

    sudo apt-get install apparmor
    ```
  2. 创建安全策略配置文件:为每个应用程序创建一个安全策略配置文件,通常位于 /etc/apparmor.d/ 目录下。配置文件的命名约定是 usr.bin.<应用程序名称>。例如,对于应用程序 /usr/bin/firefox,配置文件将是 /etc/apparmor.d/usr.bin.firefox

  3. 编辑配置文件:打开配置文件并定义应用程序的访问策略。你可以指定允许或拒绝的文件、目录、网络端口等。配置文件使用一种特定的语法,可以参考 AppArmor 文档和示例来了解更多信息。

  4. 加载策略和启用 AppArmor:使用以下命令加载并启用应用程序的安全策略:

    sudo apparmor_parser -r /etc/apparmor.d/usr.bin.<应用程序名称>
    ```
  5. 检查和监视日志:通过 dmesg 命令或 /var/log/syslog 文件检查 AppArmor 的日志,以查看应用程序的访问被拦截的事件和详细信息。

这只是对 AppArmor 的简要介绍,它是一个强大的安全工具,可以增强 Linux 系统的安全性。如需深入了解和使用 AppArmor,请参考其官方文档和相关资源。

相关文章:

ubuntu18 下更改 mysql 数据目录

一、修改步骤 更改 MySQL 的数据目录需要注意以下几个步骤&#xff1a; 停止 MySQL 服务 在 Ubuntu 中&#xff0c;你可以使用以下命令停止 MySQL 服务&#xff1a; sudo systemctl stop mysql 复制现有数据 假设你的新的数据目录是 /new/dir/mysql&#xff0c;你应该使用 rsy…...

Arduino看门狗定时器WDT

Arduino - 看门狗定时器&#xff08;WDT&#xff1a;Watch Dog Timer&#xff09; 参考 看门狗定时器&#xff08;WDT&#xff1a;Watch Dog Timer&#xff09;实际上是一个计数器。 一般给看门狗一个大数&#xff0c;程序开始运行后看门狗开始倒计数。 如果程序运行正常&…...

大数据岗位秋招面试八股文总结(不定时更新)

HIVE面试题 内部表和外部表的区别 未被external修饰的是内部表&#xff0c;被external修饰的是外部表&#xff1b; 内部表数据由Hive自身管理&#xff0c;外部表由HDFS管理&#xff1b; 删除内部表会直接删除元数据及存储数据&#xff0c;删除外部表&#xff0c;仅仅会删除…...

MATLAB高分辨率图片

把背景调黑&#xff0c;把曲线调黄&#xff0c;把grid调白&#xff0c;调调字体字号的操作 close all a0:0.1:10; noise2*rand(1,length(a)); bsin(a)sin(3*a)noise;plot(a,b,y,linewidth,2); ylim([-3 4]) %y轴范围 set(gca,xgrid,on,ygrid,on,gridlinestyle,-,Grid…...

Spring Clould 消息队列 - RabbitMQ

视频地址&#xff1a;微服务&#xff08;SpringCloudRabbitMQDockerRedis搜索分布式&#xff09; 初识MQ-同步通讯的优缺点&#xff08;P61&#xff0c;P62&#xff09; 同步和异步通讯 微服务间通讯有同步和异步两种方式&#xff1a; 同步通讯&#xff1a;就像打电话&…...

【SpringBoot】中的ApplicationRunner接口 和 CommandLineRunner接口

1. ApplicationRunner接口 用法&#xff1a; 类型&#xff1a; 接口 方法&#xff1a; 只定义了一个run方法 使用场景&#xff1a; springBoot项目启动时&#xff0c;若想在启动之后直接执行某一段代码&#xff0c;就可以用 ApplicationRunner这个接口&#xff0c;并实现接口…...

微信小程序前后端开发快速入门(完结篇)

这篇是微信小程序前后端快速入门完结篇了&#xff0c;今天利用之前学习过的所有知识做一个新的项目「群登记助手v1.0」小程序。 整体技术架构&#xff1a;小程序原生前端小程序云开发。 经历了前面教程的学习&#xff0c;大家有了一定的基础&#xff0c;所以本次分享重心主要是…...

【Linux】进程间通信之消息队列

文章目录 消息队列的概念消息队列的出队特点消息队列函数接口获取消息队列向消息队列发送消息接收消息操作消息队列的接口 代码演示ipcs命令 消息队列的概念 消息队列提供进程间数据块传输的方法&#xff0c;传输的每一个数据块都认为是有类型的&#xff0c;不同的数据块是有优…...

一次Linux中的木马病毒解决经历(6379端口---newinit.sh)

病毒入侵解决方案 情景 最近几天一直CPU100%,也没有注意看到了以为正常的服务调用,直到腾讯给发了邮件警告说我的服务器正在入侵其他服务器的6379端口,我就是正常的使用不可能去入侵别人的系统的,这是违法的. 排查 既然入侵6379端口,就怀疑是通过我的Redis服务进入的我的系统…...

ProtoBuf

文章目录 1.认识 ProtoBuf2. 安装ProtoBuf3. 快速上手 ProtoBuf4. proto3 语法5. probuf 实战6. 总结 1.认识 ProtoBuf 在认识 啥是 ProtoBuf 之前我们先来 回顾一下 &#xff08;或 了解 一下 啥是 序列化&#xff09; 序列化概念回顾 : 图一 : 回顾 序列化 &#xff0c;下面…...

AJ-Captcha行为验证在vue中的使用

项目场景&#xff1a; 提示&#xff1a;这里简述项目相关背景&#xff1a; 项目场景&#xff1a;由原先的验证码校验升级为行为验证校验 使用方法 提示&#xff1a;参考文档&#xff1a; 参考文档&#xff1a;vue使用AJ-Captcha文档 gitee地址&#xff1a;AJ-Captcha &…...

Layui列表复选框根据条件禁用

// 禁用客服回访id有值的复选框res.data.forEach(function (item, i) {if (item.feedbackEmpId) {let index res.data[i][LAY_TABLE_INDEX];$(".layui-table tr[data-index"index"] input[typecheckbox]").prop(disabled,true);$(".layui-table tr[d…...

K8S核心组件etcd详解(下)

1 k8s如何使用etcd 在k8s中所有对象的manifest都需要保存到某个地方&#xff0c;这样他们的manifest在api server重启和失败的时候才不会丢失。 只有api server能访问etcd&#xff0c;其它组件只能间接访问etcd的好处是 增强乐观锁系统及验证系统的健壮性 方便后续存储的替换…...

【HarmonyOS】【DevEco Studio】ohpm安装失败该如何解决?

【关键词】 HarmonyOS、DevEco Studio、ohpm安装失败 【问题背景及解决方案】 最近遇到很多DevEco Studio安装ohpm失败的问题&#xff0c;下面给大家介绍几种出现的问题以及解决方案&#xff1a; 1、ohpm not set up&#xff0c;报错截图如下&#xff1a; ​ 解决方案&…...

STM32 cubemx CAN

接收用到的结构体如下&#xff1a;CAN概念&#xff1a; 全称Controller Area Network&#xff0c;是一种半双工&#xff0c;异步通讯。 物理层&#xff1a; 闭环&#xff1a;允许总线最长40m&#xff0c;最高速1Mbps&#xff0c;规定总线两端各有一个120Ω电阻&#xff0c;闭环…...

贴片电阻封装尺寸及焊盘尺寸

1、贴片电阻封装尺寸 有英制和公制之分&#xff0c;英制的单位是inch&#xff0c;公制的单位是m&#xff1b;&#xff08;m、cm、mm只是进制不同&#xff09; 通常说的都是英制&#xff0c;比如0603指的是inch单位下的0.06inch和0.03inch&#xff1b; 下图有inch和mm的对照、…...

软考笔记——9.软件工程

软件工程的基本原理&#xff1a;用分阶段的生命周期计划严格管理、坚持进行阶段评审、实现严格的产品控制、采用现代程序设计技术、结果应能清除的审查、开发小组的人员应少而精、承认不断改进软件工程事件的必要性。 软件工程的基本要素&#xff1a;方法、工具、过程 软件生…...

uniapp小程序实现上传图片功能,并显示上传进度

效果图&#xff1a; 实现方法&#xff1a; 一、通过uni.chooseMedia(OBJECT)方法&#xff0c;拍摄或从手机相册中选择图片或视频。 官方文档链接: https://uniapp.dcloud.net.cn/api/media/video.html#choosemedia uni.chooseMedia({count: 9,mediaType: [image,video],so…...

基于物理场的动态模式分解(piDMD)研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

Docker部署rabbitmq遇到的问题 Stats in management UI are disabled on this node

1. Stats in management UI are disabled on this node #进入rabbitmq容器 docker exec -it {rabbitmq容器名称或者id} /bin/bash#进入容器后&#xff0c;cd到以下路径 cd /etc/rabbitmq/conf.d/#修改 management_agent.disable_metrics_collector false echo management_age…...

从`find -mtime`到`find -newermt`:Linux文件时间查找的进阶玩法与避坑指南

从find -mtime到find -newermt&#xff1a;Linux文件时间查找的进阶玩法与避坑指南 在Linux系统管理中&#xff0c;文件查找是开发者和运维工程师的日常高频操作。当我们需要追踪最近修改的配置文件、清理过期日志或备份特定时间段的文档时&#xff0c;find命令的时间参数便成为…...

Wi-Fi卸载技术解析:从运营商策略到用户体验的深度实践

1. 项目概述&#xff1a;当“大哥”开始管理你的Wi-Fi十年前&#xff0c;一篇发表在EE Times上的文章提出了一个在今天看来依然尖锐的问题&#xff1a;智能手机用户使用Wi-Fi是件好事吗&#xff1f;这甚至上升到了“人权”层面——每个有手机的人是否都应该有权访问Wi-Fi&#…...

从佳能FS20文件管理混乱看工程师思维陷阱与视频素材管理实战

1. 项目概述&#xff1a;一个让技术博主抓狂的摄像机文件管理系统作为一名经常需要拍摄产品评测、开箱视频的技术博主&#xff0c;我每天打交道最多的除了代码&#xff0c;就是各种拍摄设备。最近在整理几年前的老项目素材时&#xff0c;翻出了一台经典的佳能FS20摄像机&#x…...

限时开放:ChatGPT Slogan生成专业版Prompt集(含金融/快消/科技三大垂直领域加密模板)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;ChatGPT Slogan生成的核心原理与边界认知 ChatGPT 生成 slogan 的本质并非“创意发明”&#xff0c;而是基于大规模语料统计规律的条件概率采样。其输出受限于训练数据分布、指令微调策略&#xff08;如…...

颠覆性网络拓扑可视化:基于Vue+SVG的一站式轻量级解决方案

颠覆性网络拓扑可视化&#xff1a;基于VueSVG的一站式轻量级解决方案 【免费下载链接】easy-topo vuesvgelement-ui 快捷画出网络拓扑图 项目地址: https://gitcode.com/gh_mirrors/ea/easy-topo 在复杂的网络架构设计和运维管理中&#xff0c;网络工程师和开发人员经常…...

Fillinger智能填充插件:如何用3分钟完成1小时的设计工作?

Fillinger智能填充插件&#xff1a;如何用3分钟完成1小时的设计工作&#xff1f; 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts 还在为Adobe Illustrator中繁琐的图案填充而头疼吗…...

HS2-HF_Patch深度解析:Honey Select 2终极增强补丁实战指南

HS2-HF_Patch深度解析&#xff1a;Honey Select 2终极增强补丁实战指南 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch HS2-HF_Patch是一款专为Honey Select 2游…...

如何在3分钟内安装TrollStore?TrollInstallerX终极指南

如何在3分钟内安装TrollStore&#xff1f;TrollInstallerX终极指南 【免费下载链接】TrollInstallerX A TrollStore installer for iOS 14.0 - 16.6.1 项目地址: https://gitcode.com/gh_mirrors/tr/TrollInstallerX 你是否曾想过在不越狱的情况下自由安装iOS应用&#…...

别再死记硬背公式了!用“预测-更新”的贝叶斯视角,5分钟看懂卡尔曼滤波核心

卡尔曼滤波&#xff1a;用贝叶斯思维解决自动驾驶中的不确定性追踪问题 想象一下你正驾驶一辆特斯拉行驶在高速公路上&#xff0c;车载雷达显示前方100米处有一辆卡车。但下一秒雷达数据突然跳变到105米&#xff0c;而摄像头却显示距离是98米。作为人类司机&#xff0c;你会本能…...

ISO14443协议扫盲:别再只盯着‘读卡号’,APDU才是智能卡应用的灵魂

ISO14443协议进阶指南&#xff1a;从读卡号到APDU指令深度解析 当你第一次把卡片贴近读卡器&#xff0c;看到屏幕上跳出那串UID号码时&#xff0c;那种成就感确实令人兴奋。但很快你会发现&#xff0c;这串数字就像一扇紧闭的大门——你知道门后藏着更多可能性&#xff0c;却找…...