当前位置: > 投稿>正文

windowsimagebackup怎么还原,windowsimagebackup 删除(MySQL8.0备份与还原工具讲解——mysqlbackup篇)

03-05 互联网 未知 投稿

关于【windowsimagebackup怎么还原】,windowsimagebackup 删除,今天涌涌小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

1、MySQL8.0备份与还原工具讲解——mysqlbackup篇

mysqlbackup全称MySQL Enterprise Backup(MEB),是MySQL官方推出的跨平台mysql数据库物理备份与还原的强大工具。它支持全量备份、增量备份、备份压缩、备份验证、备份加密、流式备份等特性,类似Oracle数据库的RMAN。相比于percona公司的xtrabackup,它的功能更强大,效率更高。

下面基于mysqlbackup 8.0.28版本讲解mysqlbackup的安装、全量备份、增量备份、备份压缩、备份验证、备份还原等功能。

一、安装mysqlbackup

1. 下载

登录oracle edelivery,进入下载连接选择适合你系统的版本下载,在这里我使用的是银河麒麟Kylin OS Server V10 SP2,因此我选择一个通用的预编译二进制的tar包,如下图:
没有Oracle edelivery账号的朋友可以到私信我索取软件安装包。

windowsimagebackup怎么还原,windowsimagebackup 删除(MySQL8.0备份与还原工具讲解——mysqlbackup篇)

2. 安装

[root@light] tar xvf mysql-commercial-backup-8.0.28-linux-glibc2.17-x86_64-minimal.tar.xz[root@light] cd mysql-commercial-backup-8.0.28-linux-glibc2.17-x86_64-minimal[root@light] mv bin/mysqlbackup /usr/local/mysql/bin[root@light] chown mysql.mysql /usr/local/mysql/bin/mysqlbackup [root@light] mysqlbackup --versionMySQL Enterprise Backup Ver 8.0.28-commercial for Linux on x86_64 (MySQL Enterprise - Commercial)Copyright (c) 2003, 2022, Oracle and/or its affiliates.

安装完成。

二、使用mysqlbackup

mysqlbackup支持将数据库全部文件备份为一个独立的image,也支持将数据库按目录结构备份datafile。话不多说,分开演示。

0. 创建mysqlbackup专用账户

创建一个immeb@localhost账户,专门用于备份数据库

CREATE USER 'immeb'@'localhost' IDENTIFIED BY 'LaoGeDB123!';GRANT SELECT, BACKUP_ADMIN, RELOAD, PROCESS, SUPER, REPLICATION CLIENT ON *.* TO `immeb`@`localhost`;GRANT CREATE, INSERT, DROP, UPDATE ON mysql.backup_progress TO 'immeb'@'localhost'; GRANT CREATE, INSERT, DROP, UPDATE, SELECT, ALTER ON mysql.backup_history TO 'immeb'@'localhost';GRANT LOCK TABLES, CREATE, DROP, FILE, INSERT, ALTER ON *.* TO 'immeb'@'localhost';GRANT CREATE, DROP, UPDATE ON mysql.backup_sbt_history TO 'immeb'@'localhost';GRANT ENCRYPTION_KEY_ADMIN ON *.* TO 'immeb'@'localhost';GRANT INNODB_REDO_LOG_ARCHIVE ON *.* TO 'immeb'@'localhost';GRANT ALTER ON mysql.backup_progress TO 'immeb'@'localhost';GRANT CREATE, INSERT, DROP ON mysql.backup_progress_old TO 'immeb'@'localhost';GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_progress_new TO 'immeb'@'localhost';GRANT CREATE, INSERT, DROP ON mysql.backup_history_old TO 'immeb'@'localhost';GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_history_new TO 'immeb'@'localhost';GRANT ALTER ON mysql.backup_sbt_history TO 'immeb'@'localhost';GRANT CREATE, INSERT, DROP ON mysql.backup_sbt_history_old TO 'immeb'@'localhost';GRANT CREATE, INSERT, DROP, ALTER ON mysql.backup_sbt_history_new TO 'immeb'@'localhost';

1. backup-to-image方式的全量备份与还原

1.1 备份image

备份命令:

mysqlbackup \--user=immeb --password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--backup-image=my_full_bak.mbi \--backup-dir=/data/backup \--show-progress \--compress \--with-timestamp \backup-to-image

参数解释:

  • –backup-image:生成的备份image名称
  • –backup-dir:生成的备份image所在目录
  • –show-progress:显示备份进度[可选项]
  • –compress:对备份image进行压缩节省空间[可选项]
  • –with-timestamp:在backup-dir目录下生成’年-月-日-时-分-秒’的目录存储备份image
  • backup-to-image:声明这是备份为image的备份

备份后目录结构如下:

ll /data/backup/2022-04-13_17-16-02total 4420-rw-r--r-- 1 root root 315 Apr 13 17:16 backup-my.cnfdrwxr-x--- 2 root root 33 Apr 13 17:16 datadirdrwxr-x--- 2 root root 191 Apr 13 17:16 meta-rw-r----- 1 root root 4496410 Apr 13 17:16 my_full_bak.mbi-rw-r----- 1 root root 19453 Apr 13 17:16 server-all.cnf-rw-r----- 1 root root 1570 Apr 13 17:16 server-my.cnf

1.2 查看与检验image

可以通过list-image查看备份image中的文件内容
list命令:

mysqlbackup \--backup-image=/data/backup/2022-04-13_17-16-02/my_full_bak.mbi \list-image

可以通过validate验证备份image的有效性
validate命令:

mysqlbackup \--backup-image=/data/backup/2022-04-13_17-16-02/my_full_bak.mbi \validate

1.3 还原image

还原数据库备份之前必须做完成以下前提:

  • 关闭mysqld服务清空
  • mysql的datadir目录

还原命令:

mysqlbackup \--datadir=/data/mysql/data \--backup-image=/data/backup/2022-04-13_17-16-02/my_full_bak.mbi \--backup-dir=/data/backup/2022-04-13_17-16-02/tmp \--uncompress \copy-back-and-apply-log

参数解释:

  • –datadir : mysql server的数据库datadir,数据将还原至此
  • –backup-image:image备份的路径与名称
  • –backup-dir: image临时工作目录用于释放image都此目录,必须为空
  • –uncompress[可选项]
  • copy-back-and-apply-log:应用redolog并且copy datafile至datadir

2. backup-to-image方式的增量备份与还原

2.1 备份image

先做全备:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--backup-image=my_full_bak.mbi \--backup-dir=/data/backup \--show-progress \--compress \--with-timestamp \backup-to-image

再做增备[方式一]:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--with-timestamp \--compress \--incremental \--incremental-base=dir:/data/backup/2022-04-14_00-39-35 \--backup-dir=/data/backup \--backup-image=my_inc_bak.mbi \backup-to-image

再做增备[方式二]:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--with-timestamp \--compress \--incremental \--incremental-base=history:last_backup \--backup-dir=/data/backup/ \--backup-image=my_inc_bak.mbi \backup-to-image


你一定会问:增量备份[方式一]和增量备份[方式二]有什么区别呢?
首先看它俩表面的区别在于–incremental-base的写法:
方式一: --incremental-base=dir:/data/backup/2022-04-14_00-39-35
方式二: --incremental-base=history:last_backup

–incremental-base=dir:/data/backup/2022-04-14_00-39-35是上次全备或增备所在目录,那么这次增量备份就要基于这个目录中的备份为基准。
–incremental-base=history:last_backup是直接使用history:last_backup代替上一次的备份,省去人工寻找目录的麻烦,MEB会自动到backup_history表中查找上一次备份的目录。
这是MEB为我们做的易用性改进。


多个增量备份,只需要多次执行上面的命令即可。

2.2 还原image

先还原全备:

还原数据库备份之前必须做完成以下前提:

  • 关闭mysqld服务清空
  • mysql的datadir目录

还原全备命令:

mysqlbackup \--datadir=/data/mysql/data \--backup-image=/data/backup/2022-04-14_00-39-35/my_full_bak.mbi \--backup-dir=/data/backup/2022-04-14_00-39-35/tmp \--uncompress \copy-back-and-apply-log

2.3 再还原增备:
还原增备命令:

mysqlbackup \--backup-image=/data/backup/2022-04-14_00-40-43/my_inc_bak.mbi \--backup-dir=/data/backup/2022-04-14_00-40-43/tmp \--datadir=/data/mysql/data \--incremental \copy-back-and-apply-log

多个增量还原,只需要多次执行上面的命令即可。注意----backup-image每次都要用当前增量备份的目录。

3. datafile方式的全量备份与还原

3.1 备份datafile

备份命令:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--backup-dir=/data/backup \--show-progress \--compress \--with-timestamp \backup

参数解释:

  • –backup-dir:生成的备份datafile所在目录
  • –show-progress:显示备份进度[可选项]
  • –compress:对备份image进行压缩节省空间[可选项]
  • –with-timestamp:在backup-dir目录下生成’年-月-日-时-分-秒’的目录存储备份image
  • backup:声明这是备份为datafile的备份

备份后目录结构如下:

ll 2022-04-13_17-32-49/datadirtotal 2768-rw-r----- 1 root root 56 Apr 13 17:32 backup-auto.cnf-rw-r----- 1 root root 1965 Apr 13 17:32 binlog.000006.bz-rw-r----- 1 root root 16 Apr 13 17:32 binlog.index-rw-r----- 1 root root 7680 Apr 13 17:32 ibbackup_logfile-rw-r----- 1 root root 5196 Apr 13 17:32 ib_buffer_pool-rw-r----- 1 root root 50974 Apr 13 17:32 ibdata1.ibzdrwxr-x--- 2 root root 196 Apr 13 17:32 mysql-rw-r----- 1 root root 2405933 Apr 13 17:32 mysql.ibzdrwxr-x--- 2 root root 8192 Apr 13 17:32 performance_schemadrwxr-x--- 2 root root 28 Apr 13 17:32 sys-rw-r----- 1 root root 508 Apr 13 17:32 tablespaces_trackerdrwxr-x--- 2 root root 209 Apr 13 17:32 ttecdis-rw-r----- 1 root root 152091 Apr 13 17:32 undo_001.uz-rw-r----- 1 root root 171493 Apr 13 17:32 undo_002.uz

3.2 还原datafile

还原数据库备份之前必须做完成以下前提:

  • 关闭mysqld服务清空
  • mysql的datadir目录

3.2.1 分步还原
第一步:apply-log
因为在备份期间数据库还在读写,把这期间产生的redolog贴回数据文件上,以达到数据一致性

mysqlbackup \--backup-dir=/data/backup/2022-04-13_17-32-49 \--uncompress \apply-log

第二步:copy-back
把已经达到数据一致性的数据文件copy到mysql的datadir目录下,此时不能再用uncompress参数,因此apply-log时已经uncompress过了。

mysqlbackup \--datadir=/data/mysql/data \--backup-dir=/data/backup/2022-04-13_17-32-49 \copy-back

3.2.2 合并还原
以上两步可以合为一步完成,即把apply-log与copy-back合并为copy-back-and-apply-log,它首先会把redolog贴回datafile并初始化新的redolog,然后把backupdir目录下的全部数据copy回mysql datadir

mysqlbackup \--datadir=/data/mysql/data \--backup-dir=/data/backup/2022-04-13_17-32-49 \--uncompress \--show-progess \copy-back-and-apply-log

参数解释:

  • –datadir: mysql server的datadir目录,就是要还原到这里
  • –backup-dir:生成的备份datafile所在目录
  • –show-progress:显示还原进度[可选项]
  • –uncompress[可选项]
  • –apply-log: 把备份期间的redo log贴回datafile
  • –copy-back:把datafile复制回datadir目录
  • –copy-back-and-apply-log:把备份期间的redolog贴回datafile再把datafile复制回datadir目录

聪明的你一定发现了,在使用以上两种备份方式进行备份时都加了–compress参数,为什么还原的时候–uncompress参数却是可选项呢?
因为mysqlbackup 8.0.21版本开始可以识别备份是否为compress,如果是,那么它在还原时会自动uncompress,不需要显示告诉它。
在mysqlbackup 4.X以及8.0.21之前版本是必须要显示指定uncompress的。


4. datafile方式的增量备份与还原

4.1 备份datafile

先做全备:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--backup-dir=/data/backup \--show-progress \--compress \--with-timestamp \backup

再做增备[方式一]:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--with-timestamp \--compress \--incremental \--incremental-base=dir:/data/backup/2022-04-14_02-09-39 \--incremental-backup-dir=/data/backup \backup

再做增备[方式二]:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--with-timestamp \--compress \--incremental \--incremental-base=history:last_backup \--incremental-backup-dir=/data/backup \backup

多个增量备份,只需要多次执行上面的命令即可。

4.2 还原datafile

4.2.1 先把全备apply-log

还原数据库备份之前必须做完成以下前提:

  • 关闭mysqld服务清空
  • mysql的datadir目录

全备apply-log命令:

mysqlbackup \--backup-dir=/data/backup/2022-04-14_02-09-39 \apply-log

4.2.2 再增备apply-incremental-backup
增备apply-incremental-backup命令:

mysqlbackup \--incremental-backup-dir=/data/backup/2022-04-14_02-15-27 \--backup-dir=/data/backup/2022-04-14_02-09-39 \apply-incremental-backup

多个增量还原,只需要多次执行上面的命令即可。注意–incremental-backup-dir每次都要用当前增量备份的目录。

4.2.3 最后将备份copy-back到datadir
将备份copy-back到datadir命令:

mysqlbackup \--datadir=/data/mysql/data \--backup-dir=/data/backup/2022-04-14_02-09-39 \copy-back-and-apply-log

5. 还原后如何启动mysqld服务

还原后,datadir目录下的数据文件用户属组不是mysql,因此要修改其属组,否则mysqld访问无法启动。
修改属组命令:

chown mysql.mysql /data/mysql/data -R

启动mysqld服务:

systemctl start mysqld

6. 配置安全使用mysqlbackup

严谨的朋友已经发现在以上命令中存在安全漏洞:用户名和密码是明文写在命令中的,且命令冗长,不易操作。
如何配置能让mysqlbackup更安全呢?
将socket、user、password写到my.cnf中,mysqlbackup --defaults-file=/etc/my.cnf方式吗?掩耳盗铃罢了,因为在my.cnf中同样是明文的。
这里我们使用mysql_config_editor来处理,既能隐藏密码,又能减少命令复杂度。
mysql_config_editor 是什么,读者可以自行查阅官方文档,下面直接上命令:

配置:
将mysqlbackup要使用的登录连接信息通过mysql_config_editor加密保存起来:

mysql_config_editor set --login-path=backup --user=immeb --password --socket=/data/mysql/data/mysqld.sockEnter password:##此处输入password后回车

查看:
看一看加密保存的信息:

mysql_config_editor print --login-path backup[backup]user = "immeb"password = *****socket = "/data/mysql/data/mysqld.sock"

可以看到,除了保存了user、socket外,还加密保存了密码。

改造:
mysqlbackup命令就可以如下改造,直接调用此加密信息:

改造前:

mysqlbackup \--user=immeb \--password=LaoGeDB123! \--socket=/data/mysql/data/mysqld.sock \--backup-image=my_full_bak.mbi \--backup-dir=/data/backup \--show-progress \--compress \--with-timestamp \backup-to-image

改造后:

mysqlbackup \--login-path=backup \--backup-image=my_full_bak.mbi \--backup-dir=/data/backup \--show-progress \--compress \--with-timestamp \backup-to-image

通过改造前后对比,安全性与易用性都得到加强。

7. 进阶

上面讲解了mysqlbackup的常规用法,其实它还有很多高级功能,比如:

  • 备份加密
  • 磁带备份
  • 创建主从复制
  • 创建组复制
  • 指定备份对象
  • 指定还原对象

有兴趣的朋友可以参照官方文档继续深入研究。

官方文档在此:https://dev.mysql.com/doc/mysql-enterprise-backup/8.0/en/

2、windowsimagebackup怎么还原

windowsimagebackup怎么还原

win7系统自带的[创建系统映像备份],备份的文件是:windowsimageBackup 该文件还原方法:1 点击:右下角小旗2 打开操作中心:3 点击:备份和还原4 点击:恢复系统设置或计算机(Y)5 高级恢复方法:6 点击:使用之前创建的系统映像恢复计算机7 点击:立即备份8 点击:取消(已经做过备份windowsimageBackup)9 点击:重新启动10 点击:是,然后重启电脑11 重启进入[系统恢复选项],点击:下一步12 选择系统映像备份选框,点击:下一步13 对计算机进行重镜像选框,点击:下一步14 对计算机进行重镜像选框,点击:完成15 对计算机进行重镜像选框,点击:是16 对计算机进行重镜像选框[开始还原],如果安装完成系统,创建的备份,10分钟左右还原完成。

WindowsImageBackup是什么意思 ?

Windows 系统的系统镜像文件,是你以前创建了系统镜像,是用来哪天你系统出问题了,想还原用的。 如果你自信电脑很少出问题,或者你根本不想还原电脑,你自己喜欢装系统这样,就直接删除了吧。

WindowsImageBackup这个文件夹可不可以删除啊?

这是系统镜像备份文件,可以删除。镜像文件实际上与ZIP压缩包(ZIP compression packages)相似,它按照一定的格式将特定系列的文件制作成一个单一的文件,以方便用户下载和使用,比如操作系统、游戏等的测试版本。

图像文件不仅具有压缩压缩包(ZIP compression package)的合成功能,而且最重要的特点是可以被特定的软件识别,并可以直接记录在光盘上。

其实通常意义上的镜像文件可以再扩展一下,在镜像文件中可以包含更多的信息。比如说系统文件、引导文件、分区表信息等,这样镜像文件就可以包含一个分区甚至是一块硬盘的所有信息。扩展资料:镜像文件是无法直接使用的,需要利用一些虚拟光驱工具进行解压后才能使用。镜像文件是虚拟光驱要读取的文件,都是保存在硬盘上的,为了节省硬盘空间,镜像文件在制作过程中通常有一定的压缩。

事实上,一般意义上的图像文件可以扩展到包含更多信息。例如,系统文件、引导文件、分区表信息等。,以便图像文件可以包含分区甚至硬盘的所有信息。

而通常意义上的刻录软件都可以直接将支持的镜像文件所包含的内容刻录到光盘上。其实,镜像文件就是光盘的“提取物”。

本文关键词:windowsimagebackup怎么还原文件,windowsimagebackup 删除,windowslmagebackup怎么还原文件,windowsimagebackup怎么还原文库,windows image backup恢复。这就是关于《windowsimagebackup怎么还原,windowsimagebackup 删除(MySQL8.0备份与还原工具讲解——mysqlbackup篇)》的所有内容,希望对您能有所帮助!更多的知识请继续关注《犇涌向乾》百科知识网站:http://www.029ztxx.com!

版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。

猜你喜欢