mysql数据备份
数据备份分类
-
数据库的备份类型
- 完全备份:对整个数据库的数据进行备份
- 部分备份:对部分数据进行备份(可以是一张表也可以是多张表)
- 增量备份:是以上一次备份为基础来备份变更数据的,节约空间
- 差异备份:是以第一次完全备份的基础来备份变更备份的,浪费空间
-
数据库备份的方式
- 逻辑备份:直接生成sql语句保存起来,在恢复数据的时候执行备份的sql语句来实现数据的恢复
- 物理备份:直接拷贝相关的物理数据
- 区别:逻辑备份效率低,恢复数据效率低,但是逻辑备份节约空间;物理备份浪费空间,但是相对逻辑备份而言效率比较高
-
数据库备份的场景
- 热备份:备份时,数据库的读写不会受到影响
- 温备份:备份时,数据库的读操作可以进行,但是写操作不能执行
- 冷备份:备份时,不能进行任何操作
逻辑备份与恢复mysqldump
-
mysqldump使用语法
mysqldump -u用户 -p -h主机 数据库 表名 > 路径
-
实例
# 备份单库 mysqldump -uroot -p -h127.0.0.1 --databases test | gzip > /mysql_data_back/test.sql.gz# 备份单库单表 mysqldump -uroot -p -h127.0.0.1 test test | gzip > /mysql_data_back/test.sql.gz# 备份多库 mysqldump -uroot -p -h127.0.0.1 --databases test sys | gzip > /mysql_data_back/test.sql.gz -
数据恢复
mysql -uroot -p -h127.0.0.1 < /mysql_data_back/test.sql
物理备份
-
查询数据库源文件路径
- 方式一:show variables like ‘datadir’;
- 方式二:配置文件中查看vim /etc/my.cnf
-
MyISAM表源文件
- db.opt:创建库的时候生成,主要存储着当前库的默认字符集和字符校验规则
- .frm:记录表结构信息
- .MYD:记录表数据
- .MYI:记录索引
-
InnoDB表源文件:InnoDB有着共享表空间跟独立表空间的概念
- db.opt:创建库的时候生成,主要存储着当前库的默认字符集和字符校验规则
- .frm:记录表结构信息
- .ibd:独立表空间,记录这个表的数据和索引
- ibdata1:共享表空间,记录表的数据和索引(和数据库同级别存放)
物理备份:直接将源文件拷贝,工作中不常用,注意不要拷贝缺失
二进制备份mysqlbinlog (结合mysqldump使用)
-
简介
- 二进制日志就是记录着mysql数据库中的一些写入性操作,比如增删改,不包括查询
- 实现增量备份
- 开启二进制日志会有1%性能消耗
-
查看二进制日志是否开启
show variables like 'log_bin%'; -
开启二进制日志:vim /etc/my.cnf
[mysqld] log-bin=/data/mydata/log_bin/mysql_bin server-id=1 -
binlog相关操作
-- 查看所有的binlog日志列表 show master logs;-- 刷新二进制日志(重新生成新的日志) flush logs;-- 清空二进制日志文件 reset master; -
使用mysqldump备份数据时,加上-F可以重新生成一个新的二进制日志
mysqldump -uroot -p -h127.0.0.1 test test -F > /mysql_data_back/test.sql
二进制恢复mysqlbinlog
-
查看二进制日志:mysqlbinlog mysql_bin.000002
-
二进制日志文件导出成普通文件
mysqlbinlog --base64-output=DECODE-ROWS -v mysql_bin.000002 > mysqlbin.sql -
找出要恢复的位置
# 找出关键字的行数 mysqlbinlog --no-defaults mysql_bin.000002 | cat -n | grep -iw 'drop'# 打印相关内容 mysqlbinlog --no-defaults mysql_bin.000002 | cat -n | sed -n '100,114p' -
恢复数据
# 先恢复之前全量备份的数据 mysql -uroot -p -h127.0.0.1 test < /mysql_data_back/test.sql # 恢复增量备份的数据:注意position是文件中的# at 1275 mysqlbinlog --no-defaults --set-charset=utf8 --stop-position="1275" /data/mydata/log_bin/mysql_bin.000002 | mysql -uroot -p
相关文章:
mysql数据备份
数据备份分类 数据库的备份类型 完全备份:对整个数据库的数据进行备份部分备份:对部分数据进行备份(可以是一张表也可以是多张表) 增量备份:是以上一次备份为基础来备份变更数据的,节约空间差异备份&#x…...
排队接水--贪心
排队接水 题目描述 有 n n n 个人在一个水龙头前排队接水,假如每个人接水的时间为 T i T_i Ti,请编程找出这 n n n 个人排队的一种顺序,使得 n n n 个人的平均等待时间最小。 输入格式 第一行为一个整数 n n n。 第二行 n n n 个…...
数字温度传感器-DS18B20
文章目录 一、DS18B20器件图二、DS18B20特点三、DS18B20内部结构内部构成 四、工作时序1.初始化时序2.ReadOneChar2.WriteOneChar 一、DS18B20器件图 DS18B20的管脚排列: GND为电源地;DQ为数字信号输入/输出端;VDD为外接供电电源…...
【算法】【算法杂谈】从M个数中等概率的选出n个数,保证每一个数的选中概率都是n/m(蓄水池算法)
目录 前言问题介绍解决方案代码编写java语言版本c语言版本c语言版本 思考感悟写在最后 前言 当前所有算法都使用测试用例运行过,但是不保证100%的测试用例,如果存在问题务必联系批评指正~ 在此感谢左大神让我对算法有了新的感悟认识! 问题介…...
vue3+ts+vite自适应项目——路由、layout布局
系列文章目录 第一章:搭建项目 目录 系列文章目录 前言 一、vue-router 1.安装vue-router 2.引入 2.1 新建页面 2.2 公共样式引入 2.3 layout 布局 2.4路由配置 总结 前言 上一章我们搭建了项目,这一张主要讲路由和layout布局,和…...
数据库之约束、索引和事务
一、约束 约束,顾名思义就是数据库对数据库中的数据所给出的一组检验规则.负责判断元素是否符合数据库要求.其目的就是为了提高效率以及准确性. 1.not null - > 数据元素非空 表示如果插入数据,则当前数据不能为空. //创建一张学生表,其班级id和年级id不为空 create …...
centos --libreoffice使用
您可以按照以下步骤在CentOS上安装LibreOffice: 打开终端并使用root用户登录。 运行以下命令更新系统软件包: yum update安装LibreOffice依赖项: yum install -y libreoffice-headless libreoffice-writer libreoffice-calc libreoffice-…...
Steam-V Rising 私人服务器架设教程
一、安装前的准备 一台服务器 拥有公网IP并且做好了端口映射 二、使用SteamCMD安装服务器 1.下载SteamCMD SteamCMD是Steam专用的命令行式客户端程序,所有的安装方式可以参照:https://developer.valvesoftware.com/wiki/SteamCMD 或者在其他站点自行…...
SpringBoot+Vue3实现登录验证码功能
系列文章目录 Redis缓存穿透、击穿、雪崩问题及解决方法Spring Cache的使用–快速上手篇分页查询–Java项目实战篇全局异常处理–Java实战项目篇 Java实现发送邮件(定时自动发送邮件)_java邮件通知_心态还需努力呀的博客-CSDN博客 该系列文章持续更新…...
spring2:创建和使用
目录 1.创建Spring项目 1.1创建Maven类 1.2添加Spring支持框架 1.3添加启动类 2.存储Bean对象 2.0 spring项目中添加配置文件(第一次) 2.1创建Bean 2.2把Bean注册到容器中 3.获取并使用Bean对象 3.1创建上下文 3.2获取指定Bean对象 getBean()方法 --> 获取什么…...
前端如何处理后端一次性传来的10w条数据?
写在前面 如果你在面试中被问到这个问题,你可以用下面的内容回答这个问题,如果你在工作中遇到这个问题,你应该先揍那个写 API 的人。 创建服务器 为了方便后续测试,我们可以使用node创建一个简单的服务器。 const http requir…...
Codeforces Round 867 (Div. 3)(A-G2)
文章目录 A. TubeTube Feed1、题目2、分析3、代码, B. Karina and Array1、题目2、分析3、代码 C. Bun Lover1、问题2、分析(1)观察样例法(2)正解推导 3、代码 D. Super-Permutation1、问题2、分析(1&#…...
蓝奥声核心技术分享——一种无线低功耗配置技术
1.技术背景 无线低功耗配置技术指基于对目标场景状态变化的协同感知而获得触发响应并进行智能决策,属于蓝奥声核心技术--边缘协同感知(EICS)技术的关键支撑性技术之一。该项技术涉及物联网边缘域的无线通信技术领域,具体主要涉及网络服务节点…...
kafka集群模拟单节点故障
这里通过kafka manage来展示节点宕机效果 现在三台主机节点均正常 topic正常识别到三个broker leader也均匀分配到了三个broker上 现在把节点id为0的主机模拟宕机 可以通过以上两张图片看到每个topic现在只识别到了两个broker节点,broker id为0的节点已经被剔除掉了 isr列…...
笔记:vue-cli-service
vue-cli-service serve 这个是什么意思? vue-cli-service serve 是一个 Vue.js CLI 命令,用于在本地开发环境下运行一个开发服务器,以便你可以在浏览器中查看和测试你的 Vue.js 应用程序。它在开发期间提供了自动重载、热模块替换和其它实用…...
Amazon S3 对象存储Java API操作记录(Minio与S3 SDK两种实现)
缘起 今年(2023年) 2月的时候做了个适配Amazon S3对象存储接口的需求,由于4月份自学考试临近,一直在备考就拖着没总结记录下,开发联调过程中也出现过一些奇葩的问题,最近人刚从考试缓过来顺手记录一下。 S3对象存储的基本概念 …...
ChatGPT技术原理 第六章:对话生成技术
目录 6.1 任务定义 6.2 基于检索的方法 6.3 基于生成的方法 6.4 评价指标 6.1 任务定义 对话生成技术是指使用自然语言处理技术生成与人类语言相似的对话。在对话生成任务中,模型需要理解输入的语境、用户的意图和上下文信息,然后生成能够回答用户问题…...
【C++ 八】写文件、读文件
写文件、读文件 文章目录 写文件、读文件前言1 文本文件1.1 写文件1.2 读文件 2 二进制文件2.1 写文件2.2 读文件 前言 本文包含文本文件写文件、文本文件读文件、二进制写文件、二进制读文件。 程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放 通…...
【学习笔记】CF613E Puzzle Lover
这题本质上还是数据结构。 首先看到这个 2 n 2\times n 2n的网格图就很容易想到分治。我们还是考虑把要统计的东西变得可视化,一条路径要么穿过中线一次,那么我们可以将两边的串拼起来得到答案;要么穿过中线两次,考虑其中一边的…...
软考报名资格审核要多久?证明材料要哪些?
软考报名资格审核要多久? 一般来说,软考资格审核时间不超过1个工作日。当然,每个地区的具体情况都不一样。有些地区估计需要1-3个工作日。总之,为了顺利成功报名,大家应尽快报名,不要拖到最后一天。 软考…...
调用支付宝接口响应40004 SYSTEM_ERROR问题排查
在对接支付宝API的时候,遇到了一些问题,记录一下排查过程。 Body:{"datadigital_fincloud_generalsaas_face_certify_initialize_response":{"msg":"Business Failed","code":"40004","sub_msg…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...
mongodb源码分析session执行handleRequest命令find过程
mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程,并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令,把数据流转换成Message,状态转变流程是:State::Created 》 St…...
linux 错误码总结
1,错误码的概念与作用 在Linux系统中,错误码是系统调用或库函数在执行失败时返回的特定数值,用于指示具体的错误类型。这些错误码通过全局变量errno来存储和传递,errno由操作系统维护,保存最近一次发生的错误信息。值得注意的是,errno的值在每次系统调用或函数调用失败时…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...
LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...
