iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >MySQL——全量、增量备份与恢复(理论+实操)
  • 873
分享到

MySQL——全量、增量备份与恢复(理论+实操)

2024-04-02 19:04:59 873人浏览 泡泡鱼
摘要

数据备份的重要性 1、在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果 2、造成数据丢失的原因 程序错误 人为错误 计算机失败 磁盘失败 灾难和偷窃 数据库备份的分类 从物理与

数据备份的重要性

1、在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果

2、造成数据丢失的原因

  • 程序错误
  • 人为错误
  • 计算机失败
  • 磁盘失败
  • 灾难和偷窃

数据库备份的分类

从物理与逻辑的角度,备份可分为:

1、物理备份:对数据库操作系统的物理文件(如数据文件、日志文件等)的备份

物理备份又可以分为脱机备份(冷备份)和联机备份(热备份):

冷备份:是在关闭数据库的时候进行的
热备份:数据库处于运行状态,这种备份方法依赖于数据库的日志文件

2、逻辑备份:对数据库逻辑组件(如表等数据库对象)的备份

从数据库的备份策略角度, 备份可分为:

完全备份:每次对数据进行完整的备份

差异备份:备份那些自从上次完全备份之后被修改过的文件

增量备份:只有那些在.上次完全备份或者增量备份后被修改的文件才会被备份

注意:差异与增量相辅相成

Mysql完全备份

1、完全备份是对整个数据库的备份、数据库结构和文件结构的备份
2、完全备份保存的是备份完成时刻的数据库
3、完全备份是增量备份的基础

(1)完全备份的优点

●备份与恢复操作简单方便

(2)完全备份的缺点

●数据存在大量的重复
●占用大量的备份空间
●备份与恢复时间长

mysqldump备份库

1、Mysql数据库的备份可以采用用多种方式

●直接打包数据库文件夹,如/usr/local/mysql/data
●使用专用备份工具mysqldump

2、mysqldump命令

●MySQL自带的备份工具,相当方便对MySQL进行备份
●通过该命令工具可以将指定的库、表或全部的库导出为SQL脚本,在需要恢复时可进行数据恢复

3、mysqldump命令对单个库进行完全备份

mysqldump -u用户名-p [密码] [选项] [数据库名] > /备份路径/备份文件名

单库备份例子
mysqldump -u root -p auth > /backup/auth.sql
mysqldump -u root -p mysql > /bakcup/mysql.sql

4、mysqldump命令对多个库进行完全备份

mysqldump -u 用户名 -p [密码] [选项] --databases 库名1 [库名2]... >/备份路径/备份文件名

多库备份例子
mysqldump -u root -p --databases autth mysql > /backup/databases-auth-mysql.sql

5、对所有库进行完全备份

mysqldump -u用户名-p [密码] [选项] --all-databases > /备份路径/备份文件名

所有库备份例子
mysqldump -u root -p --opt --all-databases > /backup/all-data.sql

mysqldump备份表

1、在实际生产环境中,存在对某个特定表的维护操作,此时mysqldump同样发挥重大作用

2、使用mysqldump备份表的操作
mysqldump -u 用户名 -p [密码] [选项] 数据库名 表名 > /备份路径/备份文件名

备份表的例子
mysqldump -u root -p mysql user > /backup/mysql-user.sql

3、使用mysqldump备份表结构的操作
mysqldump -u 用户名 -p [密码] [选项] -d 数据库名 表名 > /备份路径/备份文件名

备份表结构的例子
mysqldump -u root -p mysql -d user > /backup/mysql-user.sql

恢复数据库

1、使用mysqldump命令导出的SQL备份脚本,在进行数据恢复时可使用以下方法导入
●source命令          数据库模式中运行
●mysq|命令           linux模式中运行

2、使用source恢复数据库的步骤
●登录到MySQL数据库
●执行source备份sq|脚本的路径(绝对路径)

source 恢复例子
MySQL [(none)] > source /backup/all-data.sql

3、使用mysq|命令恢复数据
mysql -u用户名-p [密码] <库备份脚本的路径

mysql命令恢复例子
mysql -u root -p < /backup/all-data.sql

恢复表的操作

1、恢复表时同样可以使用source或者mysql命令进行

2、source恢复表的操作与恢复库的操作相同

3、当备份文件中只包含表的备份,而不包括创建库的语句时,必须指定库名,且目标库必须存在
mysql -u用户名-p [密码] < 表备份脚本的路径
mysql -u root -p mysql < /backup/mysql-user.sql

4、在生产环境中,可以使用shell脚本自动实现定期备份

MySQL备份思路

1、定期实施备份,制定备份计划或者策略,并严格遵守

2、除了进行完全备份,开启MySQL服务器的日志功能是很重要的

●完全备份加上日志,可以对MySQL进行最大化还原

MySQL-bin:MySQL数据库的二进制日志,用于记录用户对数据库操作的SQL语句((除了数据查询语句)信息。可以使用mysqlbin命令查看二进制日志的内容

3、使用统一的和易理解的备份文件名称

●不要使用backup1、backup2等这样没有意义的名字
●推荐使用库名或者表名加上时间的命名规则

MySQL增量备份

1、使用mysqldump进行完全备份的存在的问题

●备份数据中有重复数据
●备份时间与恢复时间长

2、增量备份就是备份自上一次备份之后增加或变化的文件或者内容

3、增量备份的特点

●没有重复数据,备份量不大,时间短
●恢复麻烦:需要上次完全备份及完全备份之后所有的增量备份才能恢复,而且要对所有增量备份进行逐个反推恢复

4、MySQL没有提供直接的增量备份方法

5、可以通过MySQL提供的二进制日志(binary logs)间接实现增量备份

6、MySQL二进制日志对备份的意义

●二进制日志保存了所有更新或者可能更新数据库的操作
●二进制日志在启动MySQL服务器后开始记录,并在文件达到max_ binlog_size所设置的大小或者接收到flush logs命令后重新创建新的日志文件
●只需定时执行flush logs方法重新创建新的日志,生成二进制文件序列,并及时把这些旧的日志保存到安全的地方就完成了一个时间段的增量备份

7、一般恢复
添加数据——进行完全备份——录入新的数据——进行增量备份——模拟故障——恢复操作

8、基于位置回复
就是将某个起始时间的二进制日志导入数据库中,从而跳过某个发生错误的时间点实现数据的恢复

9、基于时间点恢复
使用基于时间点的恢复,可能会出现在一个时间点里既同时存在正确的操作又存在错误的操作,所以我们需要一种更为精确的恢复方式

10、增量恢复的方法

(1)一般恢复

mysqlbinlog [--no-defaults]增量备份文件 | mysql -u用户名 -p
(2)基于位置的恢复
●恢复数据到指定位置
mysqlbinlog --stop-position=操作'id' 1进制日志 | mysql -u用户名 -p 密码
●从指定的位置开始恢复数据
mysqlbinlog --start-position=操作'id'二进制日志 | mysql -u用户名 -p 密码

(3)基于时间点的恢复

●从日志开头截止到某个时间点的恢复
mysqlbinlog [--no-defaults] --stop-datetime='年-月-日 小时:分钟:秒'二进制日志 | mysql -u用户名 -p 密码
●从某个时间点到日志结尾的恢复
mysqlbinlog [--no defaults] --start-datetime='年-月-日 小时:分钟:秒'二进制日志 | mysql -u用户名 -p 密码
●从某个时间点到某个时间点的恢复
mysqlbinlog [--no defaults] --start-datetime='年-月-日 小时:分钟:秒' --stop-datetime='年-月-日 小时:分钟:秒'二进制日志 | mysql -u用户名 -p 密码

查看二进制日志文件(解码)
mysqlbinlog --no-defaults --base64-output=decode-rows -V mysql-bin.000002 > /opt/ bak. txt

全量备份与恢复实操

1,进入数据库,创建表,插入表数据

[root@master2 ~]# mysql -uroot -p   ##进入数据库
Enter passWord: 

mysql> create database school;    ##创建数据库
Query OK, 1 row affected (0.01 sec)

mysql> use school;   ##使用数据库
Database changed
mysql> create table info(    ##创建表
        -> id int(3) not null primary key auto_increment,
        -> name varchar(10) not null,
        -> score decimal(4,1) not null);
Query OK, 0 rows affected (0.02 sec)

mysql> desc info;   ##查看表结构
+-------+--------------+------+-----+---------+----------------+
| Field | Type         | Null | Key | Default | Extra          |
+-------+--------------+------+-----+---------+----------------+
| id    | int(3)       | NO   | PRI | NULL    | auto_increment |
| name  | varchar(10)  | NO   |     | NULL    |                |
| score | decimal(4,1) | NO   |     | NULL    |                |
+-------+--------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

mysql> insert into info (name,score) values ('stu01',88),('stu02',77);   ##插入表数据
Query OK, 2 rows affected (0.02 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> select * from info;   ##查看表内容
+----+-------+-------+
| id | name  | score |
+----+-------+-------+
|  1 | stu01 |  88.0 |
|  2 | stu02 |  77.0 |
+----+-------+-------+
2 rows in set (0.01 sec)

mysql> select * from info limit 1;   ##只显示表中的前1行
+----+-------+-------+
| id | name  | score |
+----+-------+-------+
|  1 | stu01 |  88.0 |
+----+-------+-------+
1 row in set (0.00 sec)

2,对数据库进行物理的完全备份

[root@master2 ~]# cd /usr/local/mysql/data/   ##切换到数据库的数据目录下
[root@master2 data]# ls
auto.cnf        ibdata1      ib_logfile1  mysql               school  test
ib_buffer_pool  ib_logfile0  ibtmp1       perfORMance_schema  sys
[root@master2 data]# cd school/
[root@master2 school]# ls   ##数据中的文件
db.opt  info.frm  info.ibd
[root@master2 school]# cd ..
[root@master2 data]# tar Jcvf /opt/mysql-$(date +%F).tar.xz /usr/local/mysql/data/ ##用xz格式压缩
[root@master2 data]# cd /opt/
[root@master2 opt]# ls
mysql-2019-11-26.tar.xz  mysql-5.7.20  rh

3,对单个数据库进行逻辑上的备份

[root@master2 opt]# mysqldump -uroot -p school > /opt/school.sql  ##逻辑备份单个数据库
Enter password: 
[root@master2 opt]# ls
mysql-2019-11-26.tar.xz  mysql-5.7.20  rh  school.sql
[root@master2 opt]# vim school.sql  ##查看备份数据库脚本

...
CREATE TABLE `info` (
    `id` int(3) NOT NULL AUTO_INCREMENT,
    `name` varchar(10) NOT NULL,
    `score` decimal(4,1) NOT NULL,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
...
LOCK TABLES `info` WRITE;
;
INSERT INTO `info` VALUES (1,'stu01',88.0),(2,'stu02',77.0);

4,对多个数据库进行备份

[root@master2 opt]# mysqldump -uroot -p --databases school mysql > /opt/db_school_mysql.sql
##备份多个数据库
Enter password: 
[root@master2 opt]# ls
db_school_mysql.sql  mysql-2019-11-26.tar.xz  mysql-5.7.20  rh  school.sql

5,对数据库进行完全备份

[root@master2 opt]# mysqldump -uroot -p --opt --all-databases > /opt/all.sql ##完全备份
Enter password: 
[root@master2 opt]# ls
all.sql              mysql-2019-11-26.tar.xz  rh
db_school_mysql.sql  mysql-5.7.20             school.sql

6,对数据库中的表进行备份

[root@master2 opt]# mysqldump -uroot -p school info > /opt/school_info.sql ##对数据库中的表进行备份
Enter password: 
[root@master2 opt]# ls
all.sql              mysql-2019-11-26.tar.xz  rh               school.sql
db_school_mysql.sql  mysql-5.7.20             school_info.sql

7,对数据库中的表结构进行备份

[root@master2 opt]# mysqldump -uroot -p -d school info > /opt/school_info_desc.sql  
##对表结构进行备份
Enter password: 
[root@master2 opt]# ls
all.sql                  mysql-5.7.20          school_info.sql
db_school_mysql.sql      rh                    school.sql
mysql-2019-11-26.tar.xz  school_info_desc.sql

8,基于脚本恢复数据库

[root@master2 opt]# mysql -uroot -p     ##进入数据库
Enter password: 

mysql> show databases;   ##查看数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| school             |
| sys                |
| test               |
+--------------------+
6 rows in set (0.00 sec)

mysql> use school;    ##使用数据库
Database changed

mysql> show tables;   ##查看表
+------------------+
| Tables_in_school |
+------------------+
| info             |
+------------------+
1 row in set (0.00 sec)

mysql> drop table info;    ##删除表
Query OK, 0 rows affected (0.01 sec)

mysql> show tables;        ###查看表
Empty set (0.00 sec)

mysql> source /opt/school.sql  ##恢复数据库脚本文件

mysql> show tables;    ##查看表
+------------------+
| Tables_in_school |
+------------------+
| info             |
+------------------+
1 row in set (0.00 sec)

9,基于外部MySQL命令恢复数据库

mysql> drop table info;   ##删除表
Query OK, 0 rows affected (0.01 sec)

mysql> show tables;   ##查看表
Empty set (0.00 sec)

mysql> quit   ##退出
Bye
[root@master2 opt]# mysql -uroot -p123123 school < /opt/school.sql   ##利用mysql命令进行恢复
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@master2 opt]# mysql -uroot -p123123    ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;    ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> show tables;   ##查看表
+------------------+
| Tables_in_school |
+------------------+
| info             |
+------------------+
1 row in set (0.00 sec)

MySQL增量备份及恢复实操

1,开启二进制日志文件

[root@master2 opt]# vim /etc/my.cnf  ##开启二进制日志文件
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysql.pid
Socket = /usr/local/mysql/mysql.sock
log-bin=mysql-bin   ##开启二进制日志文件
server-id = 1
[root@master2 opt]# systemctl restart mysqld.service   ##重启mysql服务
[root@master2 opt]# cd /usr/local/mysql/data/   ##切换到mysql站点
[root@master2 data]# ls     ##查看二进制日志文件
auto.cnf        ib_logfile0  mysql             performance_schema  test
ib_buffer_pool  ib_logfile1  mysql-bin.000001  school
ibdata1         ibtmp1       mysql-bin.index   sys

2,进行完全备份

[root@master2 data]# mysqldump -uroot -p123123 school > /opt/school.sql ##一次完全备份
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@master2 data]# ls
auto.cnf        ib_logfile0  mysql             performance_schema  test
ib_buffer_pool  ib_logfile1  mysql-bin.000001  school
ibdata1         ibtmp1       mysql-bin.index   sys
[root@master2 data]# mysqladmin -uroot -p123123 flush-logs  ##刷新二进制日志文件
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
[root@master2 data]# ls     ##生成新的二进制日志文件,接下来的操作会保存在mysql-bin.000002中
auto.cnf        ib_logfile0  mysql             mysql-bin.index     sys
ib_buffer_pool  ib_logfile1  mysql-bin.000001  performance_schema  test
ibdata1         ibtmp1       mysql-bin.000002  school

3,进入数据库,模拟误操作

[root@master2 data]# mysql -uroot -p123123  ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;    ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from info;  ##查看表
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
+----+------+-------+
2 rows in set (0.00 sec)

mysql> insert into info (name,score) values ('by01',66);   ##正确操作
Query OK, 1 row affected (0.00 sec)

mysql> select * from info;
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
|  3 | by01 |  66.0 |
+----+------+-------+
3 rows in set (0.00 sec)

mysql> delete from info where name='st01';   ##错误操作
Query OK, 1 row affected (0.00 sec)

mysql> insert into info (name,score) values ('by02',99); ##正确操作
Query OK, 1 row affected (0.00 sec)

mysql> select * from info;
+----+------+-------+
| id | name | score |
+----+------+-------+
|  2 | st02 |  77.0 |
|  3 | by01 |  66.0 |
|  4 | by02 |  99.0 |
+----+------+-------+
3 rows in set (0.00 sec)

[root@master2 data]# mysqladmin -uroot -p123123 flush-logs    ##刷新二进制日志文件        
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
[root@master2 data]# mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000002 > /opt/bak.txt
##用64位解码器查看二进制日志文件,并生成一个文件
[root@master2 data]# cd /opt/
[root@master2 opt]# ls
bak.txt  mysql-5.7.20  rh  school.sql
[root@master2 opt]# vim bak.txt    ##查看二进制日志文件

# at 1084
#191127 20:14:01 server id 1  end_log_pos 1132 CRC32 0xdcc90eb5         Write_rows: table id 221 flags: STMT_END_F
### INSERT INTO `school`.`info`   ##第一次正确操作的时间和位置
### SET
###   @1=3
###   @2='by01'
###   @3=66.0
...
# at 1302   ##停止位置点
#191127 20:14:46 server id 1  end_log_pos 1357 CRC32 0x6648509a         Table_map: `school`.`info` mapped to number 221
# at 1357
#191127 20:14:46 server id 1  end_log_pos 1405 CRC32 0x1eeb752b         Delete_rows: table id 221 flags: STMT_END_F
### DELETE FROM `school`.`info`   ##第二次执行错误操作的时间和位置191127 20:14:46
### WHERE
###   @1=1
###   @2='st01'
###   @3=88.0
# at 1405  ##开始位置点
#191127 20:14:46 server id 1  end_log_pos 1436 CRC32 0xf1c8d903         Xid = 54
...
# at 1630
#191127 20:15:16 server id 1  end_log_pos 1678 CRC32 0x08d9b0f4         Write_rows: table id 221 flags: STMT_END_F
### INSERT INTO `school`.`info`   ##第二次正确操作的时间和位置191127 20:15:16
### SET
###   @1=4
###   @2='by02'
###   @3=99.0

4,基于时间点进行断点恢复

[root@master2 opt]# mysql -uroot -p123123   ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;  ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> drop table info;   ##删除数据库
Query OK, 0 rows affected (0.01 sec)

mysql> select * from info;   ##查看表
ERROR 1146 (42S02): Table 'school.info' doesn't exist
mysql> source /opt/school.sql   ##恢复完全备份数据库脚本
...
mysql> show tables;   ##查看表
+------------------+
| Tables_in_school |
+------------------+
| info             |
+------------------+
1 row in set (0.00 sec)

mysql> select * from info;  ##查看表数据
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
+----+------+-------+
2 rows in set (0.00 sec)

[root@master2 opt]# mysqlbinlog --no-defaults --stop-datetime='2019-11-27 20:14:46' /usr/local/mysql/data/mysql-bin.000002 | mysql -uroot -p123123
##恢复bin.000002中前一个正确的执行语句(从第二个错误语句时间点停止)
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@master2 opt]# mysql -uroot -p123123   ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;  ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from info;   ##查看表数据,恢复了第一次正确操作
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
|  3 | by01 |  66.0 |
+----+------+-------+
3 rows in set (0.00 sec)

[root@master2 opt]# mysqlbinlog --no-defaults --start-datetime='2019-11-27 20:15:16' /usr/local/mysql/data/mysql-bin.000002 | mysql -uroot -p123123   
##跳过错误节点,恢复最后一个正确的操作(从最后一个正确的操作时间点开始)
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@master2 opt]# mysql -uroot -p123123  ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;   ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from info;    ##查看表数据,恢复了第二次正确操作,跳过了错误的操作
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
|  3 | by01 |  66.0 |
|  4 | by02 |  99.0 |
+----+------+-------+
4 rows in set (0.00 sec)

5,基于位置点进行断点恢复

mysql> delete from info where name='by01';    ##为实验方便直接删除
Query OK, 1 row affected (0.01 sec)

mysql> delete from info where name='by02';    ##删除
Query OK, 1 row affected (0.00 sec)

mysql> select * from info;  ##完全备份的初始状态
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
+----+------+-------+
2 rows in set (0.00 sec)

mysql> quit
Bye

[root@master2 opt]# mysqlbinlog --no-defaults --stop-position='1302' /usr/local/mysql/data/mysql-bin.000002 | mysql -uroot -p123123                           
##跳过错误操作的位置点从上一个位置点开始
[root@master2 opt]# mysql -uroot -p123123   ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;    ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from info;   ##查看表数据,恢复了第一次正确的操作
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
|  3 | by01 |  66.0 |
+----+------+-------+
3 rows in set (0.00 sec)

mysql> quit
Bye

[root@master2 opt]# mysqlbinlog --no-defaults --start-position='1405' /usr/local/mysql/data/mysql-bin.000002 | mysql -uroot -p123123   
##从错误的位置后一个位置点开始,跳过错误操作的位置点
[root@master2 opt]# mysql -uroot -p123123   ##进入数据库
mysql: [Warning] Using a password on the command line interface can be insecure.

mysql> use school;   ##使用数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> select * from info;    ##查看表数据,跳过错误操作,恢复第二次正确操作数据
+----+------+-------+
| id | name | score |
+----+------+-------+
|  1 | st01 |  88.0 |
|  2 | st02 |  77.0 |
|  3 | by01 |  66.0 |
|  4 | by02 |  99.0 |
+----+------+-------+
4 rows in set (0.00 sec)

6,对于增量备份全部恢复

[root@master2 opt]# mysqlbinlog --no-defaults  /usr/local/mysql/data/mysql-bin.000002 | mysql -uroot -p123123
##全部增量恢复
您可能感兴趣的文档:

--结束END--

本文标题: MySQL——全量、增量备份与恢复(理论+实操)

本文链接: https://www.lsjlt.com/news/40940.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • MySQL怎么全量、增量备份与恢复数据
    这篇文章主要讲解了“MySQL怎么全量、增量备份与恢复数据”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL怎么全量、增量备份与恢复数据”吧!数据备份...
    99+
    2024-04-02
  • MySQL增量备份与恢复的示例
    小编给大家分享一下MySQL增量备份与恢复的示例,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!文章目录一、MySQL 增量备份1...
    99+
    2024-04-02
  • mysql 增量备份与恢复使用详解
    目录 一、前言 二、数据备份策略 2.1 全备 2.2 增量备份 2.3 差异备份 三、mysql 增量备份概述 3.1 增量备份实现原理 3.1.1 基于日志的增量备份 3.1.2 基于时间戳的增量备份 3.2 增量备份常用实现方式 3....
    99+
    2023-09-11
    mysql增量备份 mysql增量备份与恢复 mysql增量备份方案 xtrabackup使用 xtrabackup增量备份
  • Percona XtraBackup怎样实现全备及增量备份与恢复
    Percona XtraBackup怎样实现全备及增量备份与恢复,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 p...
    99+
    2024-04-02
  • rman 增量备份恢复
    rman异机增量备份恢复 https://blog.csdn.net/qq_28766111/article/details/85252754 https://blog.csdn.net...
    99+
    2024-04-02
  • MySQLdump增量备份、完全备份与恢复的方法是什么
    本篇内容主要讲解“MySQLdump增量备份、完全备份与恢复的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQLdump增量备份、完全备份与恢复的方法是什么”吧!在数据库表丢失或...
    99+
    2023-06-16
  • Percona XtraBackup 2.4 xtrabackup全量、增量备份恢复流程
    xtrabackup常用参数 --backup 创建备份并将备份存放到--target-dir目录 --defaults-file=[MY.CNF] 配置文件的路径 --target-dir=DIRE...
    99+
    2024-04-02
  • mysql全量备份和增量备份方法
    文章目录 一、mysql全量备份1、修改 /etc/my.cnf文件添加如下内容2、测试任务脚本3、添加执行脚本4、天假定时任务 二、mysql增量备份1、修改 /etc/my.cnf文件...
    99+
    2023-10-11
    mysql 数据库
  • mysql如何全量备份和增量备份
    本篇内容主要讲解“mysql如何全量备份和增量备份”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql如何全量备份和增量备份”吧!mysql 全量备份:vi...
    99+
    2024-04-02
  • 如何进行MySQL 5.6 xtrabackup 全量和增量的备份及恢复
    今天就跟大家聊聊有关如何进行MySQL 5.6 xtrabackup 全量和增量的备份及恢复,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。xtrab...
    99+
    2024-04-02
  • innobackupex怎么增量备份与恢复数据
    本篇内容主要讲解“innobackupex怎么增量备份与恢复数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“innobackupex怎么增量备份与恢复数据”吧...
    99+
    2024-04-02
  • mysql怎么增量备份和恢复数据
    这篇文章主要介绍“mysql怎么增量备份和恢复数据”,在日常操作中,相信很多人在mysql怎么增量备份和恢复数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysql怎么增...
    99+
    2024-04-02
  • XtraBackup全量备份与恢复的过程
    本篇内容介绍了“XtraBackup全量备份与恢复的过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • mysql中lnnobackupex怎么进行全备加上增量的备份恢复
    mysql中lnnobackupex怎么进行全备加上增量的备份恢复,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。 ...
    99+
    2024-04-02
  • Mysql 全量增量备份教程及脚本(一)
    Mysql 全量增量备份脚本记录 使用XtraBackup程序进行备份 centos8.0 与 rocky 9.0 安装XtraBackup yum install https://repo.perc...
    99+
    2023-09-10
    mysql 数据库
  • mysql中怎么实现物理备份和增量备份
    本篇文章为大家展示了mysql中怎么实现物理备份和增量备份,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。 物理备份:    &nbs...
    99+
    2024-04-02
  • mysql增量备份怎么实现
    MySQL增量备份可以通过以下几种方法实现: 使用MySQL的二进制日志(Binary Log):MySQL的二进制日志记录了数...
    99+
    2024-04-09
    mysql
  • SVN仓库的全量备份和增量备份怎么实现
    这篇文章主要介绍“SVN仓库的全量备份和增量备份怎么实现”,在日常操作中,相信很多人在SVN仓库的全量备份和增量备份怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”SVN仓库的全量备份和增量备份怎么实现...
    99+
    2023-06-04
  • MySQL数据库全库备份及增量备份脚本
    脚本网盘链接下载。 1、全库备份脚本如下: #!/bin/bash ############### 定义默认值 ################# user='root' passwd='123.com...
    99+
    2024-04-02
  • mongodb如何实现增量/全量备份脚本
    这篇文章主要介绍了mongodb如何实现增量/全量备份脚本,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。功能定期对mongodb数据库数据进...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作