- ALL
- java32
- linux32
- 工具17
- 其他14
- 数据库6
- vue5
- nas5
- 前端5
- git4
- framework3
- windows3
- ai2
- app2
- docker2
- 脚本2
- 智能家居2
- hexo2
- maven2
- 小程序2
- spring2
- api1
- 资源1
- mysql1
- 安全1
- markdown1
- question1
- 数据传输1
- 数据结构1
- python1
- nginx1
mysql的增量备份和全量备份的方法
区别
全量备份是指备份整个数据库的所有数据。
增量备份是指仅备份自上次备份以来更改的数据。
全量备份
全量备份的主要方法是使用 mysqldump 工具进行逻辑备份,或直接复制 MySQL 数据目录进行物理备份。
使用 mysqldump 进行全量备份
mysqldump -u 用户名 -p 数据库名 > 备份文件.sql
示例:
mysqldump -u root -p mydatabase > /path/to/backup/mydatabase_full_backup.sql
直接复制数据目录
停止 MySQL 服务:
sudo systemctl stop mysql
复制数据目录:
sudo cp -R /var/lib/mysql /path/to/backup/
启动 MySQL 服务:
sudo systemctl start mysql
增量备份
增量备份通常依赖于 MySQL 的二进制日志(binlog),因为这些日志记录了所有对数据库进行更改的操作。通过备份这些日志文件,可以实现增量备份。
配置二进制日志
首先需要确保 MySQL 配置 ...
根据日志恢复数据的原理
[!前言]
根据日志恢复数据的流程涉及到两个主要阶段:重做(REDO)和撤销(UNDO)。这些过程利用了 MySQL 的二进制日志(binlog)和重做日志(redo log)
1. 日志文件概述
二进制日志(binlog): 记录所有对数据库进行更改的操作,包括所有提交的事务。这些日志用于增量备份和数据恢复。
重做日志(redo log): 记录所有将要执行的操作,用于在崩溃恢复过程中重新应用未提交的事务。
撤销日志(undo log): 记录事务在执行过程中修改前的数据,用于在事务回滚时撤销未提交的更改。
2. 检查点
检查点(checkpoint)是数据库系统中的一个机制,用于定期将内存中的数据刷新到磁盘,并记录一个时间点。在 MySQL 中,检查点由 InnoDB 存储引擎管理,主要有以下作用:
将缓冲池中的脏页(dirty pages)刷新到磁盘,减少崩溃恢复时需要重做的工作量。
在检查点之后,只需从该检查点开始应用重做日志,减少恢复时间。
3. 恢复流程概述
当数据库崩溃或发生故障时,恢复流程通常包括以下几个步骤:
读取检查点信息: 从检查点文件读取最后一个检 ...
自定义格式化mybatis、mybatis plus中打印的sql
在使用了阿里durid连接池的情况下,将sql日志按照自定义格式打印出来,比如将参数填充、结果按照表格输出。
timescaledb详细使用手册
本文内容大部分为官方文档翻译得出,小部分为自己的使用经验,存在不准确的内容自行脑补。
mybatis 分页查询导致数据缺失问题
mybatis 分页查询,关联其他表过程中导致部分页数据不够每页条数的情况
在centerOS中安装mongoDB
在CenterOS中安装mongoDb及使用