【MySQL】数据库——备份与恢复,日志管理1

一、数据备份的重要性

1.备份的主要目的是灾难恢复

  1. 在生产环境中,数据的安全性至关重要

  2. 任何数据的丢失都可能产生严重的后果

  3. 造成数据丢失的原因:

  • 程序错误
  • 人为,操作错误
  • 运算错误
  • 磁盘故障
  • 灾难 (如火灾、地震)和盗窃

2.数据库备份的分类

**物理备份:**直接对数据库的数据文件或者日志文件进行备份.

  • 冷备份(脱机备份) :是在关闭数据库的时候进行的
  • 热备份(联机备份) :数据库处于运行状态,依赖于数据库的日志文件
  • 温备份:数据库锁定表格(不可写入但可读)的状态下进行备份操作

**逻辑备份:**对数据库的库或表对象进行备份.

  • 即以sql语句的形式,把库、表结构、表数据保存下来
数据库的备份策略 :
  • 完全备份(全量备份):每次对数据库进行完整的备份
  • 差异备份:备份自从上次完全备份之后被修改过的文件
  • 增量备份:只有在上次完全备份或者增量备份后被修改的文件才会被备份

二、MySQL的完全备份与恢复

物理冷备份(完全备份)与恢复

复制代码
systemctl stop mysqld
mkdir /opt/backup    #将数据库备份文件保存到/opt/backup目录下
[root@localhost backup]# cd /usr/local/mysql/
[root@localhost mysql]# tar zcf /opt/backup/mysql_data-$(date +%F).tar.gz data/
[root@localhost mysql]# cd /opt/backup/
[root@localhost backup]# ls
mysql_data-2024-06-26.tar.gz
[root@localhost backup]# scp mysql_data-2024-06-26.tar.gz 192.168.100.18:~/
  #发送给备份数据文件的主机的根目录下~/

再在数据库备份主机操作恢复数据库

复制代码
[root@localhost ~]# systemctl stop mysqld
[root@localhost ~]# ls

[root@localhost ~]# tar xf mysql_data-2024-06-26.tar.gz 
[root@localhost ~]# ls

[root@localhost ~]# cd /usr/local/mysql/
[root@localhost mysql]# ls

[root@localhost mysql]# mv data/ data_old
[root@localhost mysql]# mv ~/data/ data
[root@localhost mysql]# ls

[root@localhost mysql]# systemctl start mysqld
[root@localhost mysql]# mysql -uroot -pabcd1234

陌上 菜鸟 centos6 8

相关推荐
惺忪979843 分钟前
QAbstractListModel 详细解析
数据库
国服第二切图仔2 小时前
Rust开发实战之操作SQLite数据库——从零构建数据持久化应用
数据库·rust·sqlite
计算机学姐2 小时前
基于SpringBoot的高校社团管理系统【协同过滤推荐算法+数据可视化】
java·vue.js·spring boot·后端·mysql·信息可视化·推荐算法
安审若无6 小时前
图数据库neoj4安装部署使用
linux·运维·数据库
fenglllle6 小时前
mybatis-plus SQL 注入漏洞导致版本升级引发的问题
数据库·sql·mybatis
learning-striving6 小时前
SQL server创建数据表
数据库·sql·mysql·sql server
Yeats_Liao6 小时前
时序数据库系列(三):InfluxDB数据写入Line Protocol详解
数据库·后端·时序数据库
天地之于壹炁兮7 小时前
编程I/O入门指南:核心操作全解析
数据库·windows·microsoft
切糕师学AI7 小时前
SQL中的函数索引/表达式索引
数据库·sql·mysql·postgresql·oracle
武子康7 小时前
Java-166 Neo4j 安装与最小闭环 | 10 分钟跑通 + 远程访问 Docker neo4j.conf
java·数据库·sql·docker·系统架构·nosql·neo4j