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

MySQL使用触发器进行备份

触发器+脚本备份
实现方案:

1.配置mysql调用外部脚本的插件mysqludf

链接:https://pan.baidu.com/s/1MCrf1u_SRWwcZoxM9JDNiw
提取码:kgt0

解压
在这里插入图片描述
在这里插入图片描述

2.解压后放进:

mysql安装路径/lib/plugin/

在这里插入图片描述

3.在mysql执行命令创建自定义函数,下面创建两个函数的返回执行结果,另一个是返回命令行的字符串

1 DROP FUNCTION IF EXISTS sys_exec;
2 DROP FUNCTION IF EXISTS sys_eval;
3 CREATE FUNCTION sys_exec RETURNS integer SONAME 'lib_mysqludf_sys_x64.dll';
4 CREATE FUNCTION sys_eval RETURNS string SONAME 'lib_mysqludf_sys_x64.dll';
5 SELECT sys_eval("ipconfig/all");

执行结果显示为lib_mysqludf_sys_x64.dll要替换成mysql安装路径/lib/plugin/路径中的文件名

在这里插入图片描述

即为成功,且可在名为mysql的数据库->func表中看到
在这里插入图片描述

4、使用sys_exec备份

创建备份bat文件

@echo off
set BACKUP_DIR=E:\database
set MYSQL_USER=roXXX   // 自己的mysql用户名
set MYSQL_PASS=1XXXX   // 自己的mysql密码
set MYSQL_HOST=localhost
set DATABASE_NAME=XXXXXX // 自己的数据库表名
set DATE=%date:~0,4%-%date:~5,2%-%date:~8,2%_%time:~0,2%-%time:~3,2%-%time:~6,2%
set DATE=%DATE: =0%// 跳转自己mysql安装位置
pushd C:\Program Files\MySQL\MySQL Server 8.0\bin  //存储
REM 创建备份文件mysqldump -u %MYSQL_USER% -p%MYSQL_PASS% -h %MYSQL_HOST% %DATABASE_NAME% > %BACKUP_DIR%\mysql_backup_%DATABASE_NAME%_%DATE%.sqlREM 压缩备份文件(可选)
REM 你也可以选择使用 zip 或其他压缩工具进行备份压缩
REM 例如使用 7zip
REM "C:\Program Files\7-Zip\7z.exe" a -tzip %BACKUP_DIR%\mysql_backup_%DATE%.zip %BACKUP_DIR%\mysql_backup_%DATE%.sqlREM 删除超过30天的备份文件(可选)
forfiles /p "%BACKUP_DIR%" /m *.sql /d -30 /c "cmd /c del @path"[mysqldump]user=user_namepassword=password

创建触发器命令

-- 每次触发器进行备份
新增
CREATE TRIGGER `insert-change` AFTER INSERT ON `表名`
FOR EACH ROW 
BEGINDECLARE redata INT;SELECT sys_exec('E:/database/XXXXX备份文件.bat') INTO redata;
END;修改
CREATE TRIGGER `update-change` AFTER UPDATE ON `表名`
FOR EACH ROW 
BEGINDECLARE redata INT;SELECT sys_exec('E:/database/XXXXX.bat') INTO redata;
END;删除
CREATE TRIGGER `delete-change` AFTER DELETE ON `表名`
FOR EACH ROW 
BEGINDECLARE redata INT;SELECT sys_exec('E:/database/XXXXX.bat') INTO redata;
END;

当表被修改时,会进行备份
在这里插入图片描述

5.可能的报错信息

在这里插入图片描述
解决办法:把my.ini 中的

secure-file-priv=“”

在这里插入图片描述

1.secure_file_priv = NULL ,限制文件的读取和写入。2.secure_file_priv = 文件路径 ,限制文件的读取和写入只能在设定的文件夹中。3.secure_file_priv= “”, 对文件和读取和写入没有任何限制。

相关文章:

MySQL使用触发器进行备份

触发器脚本备份 实现方案: 1.配置mysql调用外部脚本的插件mysqludf 链接:https://pan.baidu.com/s/1MCrf1u_SRWwcZoxM9JDNiw 提取码:kgt0 解压 2.解压后放进: mysql安装路径/lib/plugin/ 3.在mysql执行命令创建自定义函数&…...

数据结构与算法-顺序表

数据结构 顺序表 基本概念 顺序表:顺序存储的线性表链式表:链式存储的线性表,简称链表 顺序存储就是将数据存储到一片连续的内存中,在C语言环境下,可以是具名的栈数组,也可以是匿名的堆数组。 存储方式…...

OpenAI CEO 奥特曼发长文《反思》

OpenAI CEO 奥特曼发长文《反思》 --- 引言:从 ChatGPT 到 AGI 的探索 ChatGPT 诞生仅一个多月,如今我们已经过渡到可以进行复杂推理的下一代模型。新年让人们陷入反思,我想分享一些个人想法,谈谈它迄今为止的发展,…...

Shell编程详解

文章目录 一、Linux系统结构二、Shell介绍1、Shell简介2、Shell种类3、Shell查询和切换 三、Shell基础语法1、注释2、本地变量3、环境变量3.1、查看环境变量3.2、临时设置环境变量3.3、永久设置环境变量 4、特殊变量5、控制语句5.1、shell中的中括号5.2、if语句5.3、for循环5.4…...

跨站脚本攻击(XSS)详解

跨站脚本攻击(XSS)详解 跨站脚本攻击(XSS,Cross-Site Scripting)是一种通过在网页中注入恶意脚本,攻击用户浏览器的漏洞。攻击者可以利用XSS窃取用户敏感信息、劫持会话、或在受害者浏览器中执行恶意操作。…...

03-QT中的QMainWindow+对话框QDialog

文章目录 1.QMainWindow1.1菜单栏1.2 工具栏1.3 状态栏1.4 铆接部件1.5 核心部件(中心部件)1.6 资源文件 2.对话框2.1 基本概念2.2 标准对话框2.3 自定义消息框2.4 消息对话框2.5 标准文件对话框 1.QMainWindow QMainWindow是一个为用户提供主窗口程序的…...

c# 中Parallel.ForEach 对其中一个变量进行赋值 引发报错

在 C# 中使用 Parallel.ForEach 方法时,如果你尝试在并行循环中对共享变量进行赋值,很可能会遇到线程安全问题或竞争条件(race conditions),这可能导致数据不一致、程序崩溃或其他不可预测的行为。 问题描述 假设你有…...

ElasticSearch备考 -- 整体脉络梳理

1、 search 、Update、reindex ElasticSearch 备考 -- 查询&高亮&排序 ElasticSearch 备考 -- 聚合查询 ElasticSearch 备考 -- 异步检索 2、search temple ElasticSearch备考 -- Search template 3、custom analyzer ElasticSearch 备考 -- 自定义分词 2、…...

vue Element Ui Upload 上传 点击一个按钮,选择多个文件后直接上传,使用防抖解决多次上传的问题。

问题: 在使用Element Ui Upload 上传文件时,选择多个文件上传时,on-change事件会一个一个返回上传的文件,导致前端不知道什么时候可以拿到全部上传的文件,再一起调后台接口。 解决方法: 上传文件后&…...

【HF设计模式】05-单例模式

声明:仅为个人学习总结,还请批判性查看,如有不同观点,欢迎交流。 摘要 《Head First设计模式》第5章笔记:结合示例应用和代码,介绍单例模式,包括遇到的问题、采用的解决方案、以及达到的效果。…...

运维人员的Python详细学习路线

以下是一条适合运维人员的Python详细学习路线: 一、基础入门阶段(第1 - 2个月) 环境搭建与基础语法(第1个月) 安装与配置 在运维常用的操作系统(如Linux或Windows)上安装Python。对于Linux系统…...

软件体系结构与设计模式

在软件开发中,软件体系结构和设计模式是两个至关重要的概念。它们帮助开发者设计出易于理解、可扩展、可维护的系统。尽管这两个概念密切相关,但它们分别关注系统的不同方面:软件体系结构关注的是系统整体结构的设计,而设计模式则…...

安徽省地图arcgis数据美化后mxd文件shp格式下载后内容测评

标题中的“安徽省地图arcgis数据美化后mxd文件shp格式”揭示了这个压缩包的内容是经过GIS处理的、针对安徽省地图数据。ArcGIS是一款由Esri公司开发的专业地理信息系统软件,用于处理、分析和展示地理空间数据。MXD文件是ArcGIS的项目文件,包含了地图布局…...

MySQL数据库备份与恢复策略

数据是企业和应用的核心资产,可靠的备份和恢复策略是确保数据安全性和业务连续性的关键。在本篇文章中,我们将详细介绍 MySQL 数据库的备份和恢复方法,包括逻辑备份、物理备份、自动化备份,以及常见问题的处理方法。 一、逻辑备份 逻辑备份是通过导出数据库的结构和数据生…...

go语言zero框架中教务crm系统的在职继承和离职交接的设计与实践

在GoZero中实现一个在职继承和离职交接的通用模块,涉及到顾问离职交接客户、领导离职交接审批单据等功能。为了使这个模块通用且易于扩展,我们可以分成几个部分: 1. **数据模型设计**:我们首先需要设计离职交接相关的数据模型。 …...

C# 设计模式(结构型模式):桥接模式

C# 设计模式(结构型模式):桥接模式 在软件设计中,我们经常会遇到系统的变化频繁,或者需要灵活扩展功能的场景。这时,桥接模式(Bridge Pattern)便显得尤为重要。桥接模式是一个结构型…...

C# 设计模式(行为型模式):解释器模式

C# 设计模式(行为型模式):解释器模式 (Interpreter Pattern) 什么是解释器模式? 解释器模式(Interpreter Pattern)是一种行为型设计模式,用于定义一种语言的语法表示,并提供一个解释…...

如何 cURL Elasticsearch:进入 Shell

作者:来自 Elastic Philipp Krenn Kibana 的控制台是开始使用 Elasticsearch 的 REST API 的最简单方法 - 语法突出显示、自动完成、格式化、导出 cURL、JavaScript 或 Python。而且你不必担心正确的端点、身份验证等。但是有时,如果 Kibana 不可用、你…...

深信服云桌面系统的终端安全准入设置

深信服的云桌面系统在默认状态下没有终端的安全准入设置,这也意味着同样的虚拟机,使用云桌面终端或者桌面套件都可以登录,但这也给系统带来了一些安全隐患,所以,一般情况下需要设置终端的安全准入策略,防止…...

Node.js 模块系统

Node.js 模块系统 1. 引言 Node.js,作为一个轻量级、高效的服务器端 JavaScript 运行环境,其模块系统是其最核心的特性之一。Node.js 的模块系统允许开发者将代码组织成多个文件,每个文件都是一个模块,这样可以提高代码的可维护性和可重用性。本文将详细介绍 Node.js 的模…...

为什么你的手势识别准确率卡在82.3%?2026奇点大会公布大模型训练数据盲区的3个致命偏差

第一章&#xff1a;2026奇点大会手势识别准确率瓶颈的全局洞察 2026奇点智能技术大会(https://ml-summit.org) 当前&#xff0c;2026奇点大会所部署的实时手势识别系统在多光照、低延迟&#xff08;<35ms端到端&#xff09;约束下&#xff0c;整体准确率稳定在92.7%0.4%&am…...

科哥二次开发HeyGem系统:快速上手,批量生成数字人岗位视频

科哥二次开发HeyGem系统&#xff1a;快速上手&#xff0c;批量生成数字人岗位视频 1. 系统概述与核心价值 HeyGem数字人视频生成系统批量版WebUI版是经过科哥二次开发优化的AI视频合成工具&#xff0c;专为解决企业批量制作数字人视频需求而设计。这个系统最突出的特点是能够…...

基于粒子群算法的配电网无功优化研究——以IEEE33节点系统为例,探讨无功补偿器接入位置与容量...

基于粒子群算法的配电网无功优化 基于IEEE33节点配电网&#xff0c;以无功补偿器的接入位置和容量作为优化变量&#xff0c;以牛拉法进行潮流计算&#xff0c;以配电网网损最小为优化目标&#xff0c;通过优化求解&#xff0c;得到最佳接入位置和容量&#xff0c;优化结果如下所…...

低成本GPU算力方案:PyTorch 2.8镜像助力中小企业实现AIGC私有化部署

低成本GPU算力方案&#xff1a;PyTorch 2.8镜像助力中小企业实现AIGC私有化部署 1. 为什么中小企业需要私有化AIGC部署 在人工智能生成内容&#xff08;AIGC&#xff09;领域&#xff0c;中小企业常常面临两大难题&#xff1a;高昂的云服务成本和数据隐私风险。传统方案要么需…...

DeepSeek-R1-Distill-Llama-8B实操指南:Ollama模型权重路径修改与自定义加载

DeepSeek-R1-Distill-Llama-8B实操指南&#xff1a;Ollama模型权重路径修改与自定义加载 1. 认识DeepSeek-R1-Distill-Llama-8B推理模型 DeepSeek-R1系列是专门针对推理任务优化的新一代模型&#xff0c;其中DeepSeek-R1-Distill-Llama-8B是基于Llama架构的蒸馏版本。这个8B参…...

3步解决NVIDIA Profile Inspector配置难题:从诊断到修复的完整指南

3步解决NVIDIA Profile Inspector配置难题&#xff1a;从诊断到修复的完整指南 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector作为一款强大的显卡配置管理工具&#xff0c;允…...

生成式引擎优化赛道盘点:GEO服务商的差异化竞争力分析

正文第一章&#xff1a;AI搜索重构信息分发逻辑&#xff0c;GEO进入专业化深水区2026年&#xff0c;生成式AI对搜索生态的重构已进入不可逆的深水阶段。据行业监测数据显示&#xff0c;国内主流AI搜索平台的日均活跃用户规模突破4亿&#xff0c;用户查询行为中超过68%的决策类问…...

嵌入式系统开发流程

嵌入式系统开发流程&#xff1a;从概念到产品的技术之旅 在智能设备无处不在的今天&#xff0c;嵌入式系统作为其核心“大脑”&#xff0c;驱动着从智能家居到工业控制的各类应用。开发一个高效可靠的嵌入式系统&#xff0c;需要严谨的流程和跨学科协作。本文将带你深入探索这…...

别急着编译!修复银河麒麟OpenSSH漏洞前,先搞懂ssh、sshd版本与apt仓库的“爱恨情仇”

银河麒麟OpenSSH漏洞修复决策指南&#xff1a;从版本差异到安全升级的深度解析 当安全扫描报告将OpenSSH漏洞(CVE-2023-38408)标记为"超高危"时&#xff0c;大多数运维人员的第一反应是立即升级。但面对银河麒麟这类企业级操作系统时&#xff0c;简单的apt upgrade往…...

“无穷套娃素数生成公式”框架下,孪生素数猜想已被证明【乖乖数学】

“无穷套娃素数生成公式”框架下&#xff0c;孪生素数猜想已被证明。 作者&#xff1a;乖乖数学 核心论证如下&#xff1a; 完备性定理 首先&#xff0c;系统已严格证明&#xff1a;对任意 k &#xff0c;区间 (C_k, C_{k1}) 内的所有奇数均为奇素数。 关键引理&#xff1a…...