精华内容
下载资源
问答
  • 2020-05-09 14:45:24

    可以使用 ApexSQLLog2014 工具恢复。

    更多相关内容
  • 主要介绍了shell脚本实现mysql定时备份删除恢复功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
  • thinkphp3.2数据库备份下载恢复删除,在网上也是搜索了大量的信息,才弄出适合自己的数据库管理功能,提取出所需文件,大家学习进步
  • Win10脚本自动备份删除恢复更新服务.7z
  • 批量执行SQL SERVER数据库的备份恢复删除,对于用友T3、T6数据库在删除时支持年度或整个账套,并可同时删除对应的账套参数信息。 适用于在重做系统或更换电脑时,需要进行大量数据的备份恢复操作。 如果数据库...
  • 广联达找回备份文件教程.docx
  • 大势至服务器共享文件管理软件专门用于管理和监控服务器共享文件,可以给不同用户、不同文件设置不同访问权限,包括新建、复制、修改、删除、剪切、重命名、另存、打印等,还可以详细记录用户对共享文件的操作记录
  • 3.软件功能包括批量备份、批量恢复、批量删除、批量分离、批量附加 4.在执行批量恢复和批量删除时,请先做好备份,以免数据丢失 5.对于用友软件的删除操作,年度账套参数信息的删除只支持T3、T6产品 未注册软件,...
  • 备份对于数据库来说是相当重要的工作。如果数据库在使用过程中出现了问题,...这时,如果我们进行了数据备份,就能比较方便的使数据库恢复工作,并使我们的数据损失到最小。下面我们来详细探讨下数据库的备份恢复
  • 当用户需要重新找回数据的时候,经常需要请技术支持人员拔出备份磁带,进行人工恢复,这个工作相当浪费时间。VSS让管理员能够在服务器上发布共享文件夹,在一定的时间间隔内做时间点的备份(在指定时间内最多可以...
  • 在做数据库修改或删除操作中,可能会导致数据错误,甚至数据库奔溃,而有效的定时备份能很好地保护数据库。本篇文章主要讲述Navicat for MySQL定时备份数据库和数据恢复等功能,同时可以定时播放电影等设置,希望对...
  • 本软件在Windows下使用,可以备份恢复当前系统,也可以安装新系统;支持各版本的XP,Win7,Win8,Win10; 支持32位,64位;支持MBR引导(有激活分区)和EFI引导(GPT分区)的硬盘,但选择备份/恢复/安装系统后 会重新...
  • SQL数据库备份恢复助手是一款方便易用的sql数据库恢复工具。该软件完全支持本地/局域网(远程)数据库自动/手动备份。用户可以自由组合的无限复合式备份任务,支持备份文件ZIP压缩后通过Lan/Ftp/Email传输存储,...
  • 金蝶K/3的数据恢复说明如下:为了保证账套数据的安全性,需要定期对账套进行备份。一旦原有的账套毁坏,则可以通过账套恢复功能将以前的账套备份文件恢复成一个新账套进行使用。对于账套的备份恢复操作,系统提供...

    金蝶K/3的数据恢复说明如下:

    为了保证账套数据的安全性,需要定期对账套进行备份。一旦原有的账套毁坏,则可以通过账套恢复功能将以前的账套备份文件恢复成一个新账套进行使用。

    对于账套的备份和恢复操作,系统提供了三种方式供选择,这个与SQLSERVER提供的数据库备份与恢复方式是一致的。

    账套备份策略

    完全备份:执行完整数据库备份,也就是为账套中的所有数据建立一个副本。备份后,生成完全备份文件。

    增量备份:记录自上次完整数据库备份后对数据库数据所做的更改,也就是为上次完整数据库备份后发生变动的数据建立一个副本。备份后,生成增量备份文件。

    增量备份比完全备份小而且备份速度快,因此可以更经常地备份,经常备份将减少丢失数据的危险。

    温馨提醒:

    增量备份是基于完全备份之上的。因此在增量备份之前,必须先做完全备份。

    日志备份:事务日志是自上次备份事务日志后对数据库执行的所有事务的一系列记录。可以使用事务日志备份和恢复可以将账套恢复到特定的即时点(如输入多余数据前的那一点)或恢复到故障点。一般情况下,事务日志备份比数据库备份使用的资源少。因此可以比数据库备份更经常地创建事务日志备份。经常备份将减少丢失数据的危险。

    温馨提醒:

    事务日志备份有时比数据库备份大。例如,数据库的事务率很高,从而导致事务日志迅速增大。在这种情况下,应更经常地创建事务日志备份。

    账套恢复策略:

    通过完全备份文件恢复账套:通过已有的完全备份文件,将账套恢复到上次完全备份点。

    通过增量备份文件恢复账套:通过已有的增量备份文件和完全备份文件,将账套恢复到上次增量备份点。在该种恢复方式下,需要使用到的备份文件包括:1)账套增加备份文件,2)账套完全备份文件(必需)。

    温馨提醒:

    上述这两种方式都不能将数据库还原到故障点或特定的即时点。若要还原到这些点,请选择通过日志文件恢复的功能。

    通过日志备份文件恢复账套:提供将账套恢复到故障点或特定即时点的功能。在该种恢复方式下,需要的备份文件包括:1)账套日志备份文件,2)账套完全备份文件,3)账套增量备份文件(非必需)。

    温馨提醒:

    u 在通过日志备份文件恢复账套的情况下,账套增量备份文件不一定是必需的。如果日志备份前做了增量备份,则进行日志恢复时,增量备份文件是必需的,否则就不是必需的。

    u 如果存在多个日志备份,则恢复时,日志备份文件必需要根据时间先后顺序都列在恢复文件列表中。

    账套备份的操作

    在系统中,备份账套有两种方法,一是一次备份一个账套,二是自动批量备份,即一次备份多个账套,而且备份工作在后台定时执行,不用手工干预。用户可以根据实际情况选用。

    单个账套的备份:

    具体操作是:

    1、 首先选择一个账套。

    2、 然后选择【数据库】→【账套备份】,打开“账套备份”界面。

    3、 选择备份方式:根据实际情况,选择是执行“完全备份”、“增量备份”还是“日志备份”。

    4、 选择备份路径。备份路径可以是:1)选中账套所在数据库服务器端的路径;2)其它机器上的共享路径,并且这个共享路径有“可写”的权限。

    温馨提醒:

    使用网络备份路径(其它机器上的共享路径)的好处是:一旦数据库服务器发生损坏,在其他机器上仍然保留有备份文件,不会造成数据全部丢失的不可挽回的严重问题。

    5、 单击【确定】。系统就会进行账套的完全备份,备份成功后,系统会给出成功的提示。

    账套自动批量备份工具:

    如果账套管理中的账套很多,一个一个账套的备份会比较麻烦,没有效率。因此,系统提供了账套自动批量备份工具。

    账套自动批量备份的好处是:

    1) 一次可以备份多个账套。

    2) 一旦设置之后,系统就会根据设置的时间定时在后台定时、自动进行备份,无须手工干预。

    3) 提供了账套备份情况的日志记录功能,可以方便的查看到账套备份的执行情况。如:哪些账套正常进行了账套备份?执行时间是什么时候?哪些账套没有正常进行账套备份?

    4) 提供了方案维护的功能,即可以将对于账套备份所做的设置以方案的形式保存下来,以后需要执行时,直接选择这个方案进行执行。

    账套自动批量备份工具的具体操作是:

    1、新建一个批量备份方案

    1) 单击【账套】→【账套自动批量备份】,打开“账套批量自动备份工具”界面,界面中显示了系统中存在的所有合法账套。

    2) 选择自动备份的开始时间、结束时间。结束时间应大于开始时间。

    3) 选择需要进行备份的账套,将需要进行备份的账套打上勾,选择备份路径。备份路径可以是:1)选中账套所在数据库服务器端的路径;2)其它机器上的共享路径,前提是这个共享路径有“可写”的权限。

    4) 然后输入完全备份和增量备份的间隔时间。由于完全备份比较耗费时间,所有间隔的时间可以长一些,增量备份由于耗时相对较少,间隔时间可以考虑设置的短一些。

    5) 如果希望对某个账套立即开始执行账套的完全备份,则在该账套“是否立即执行完全备份”列打上勾,否则,不在该选项上打勾。

    6) 单击【方案】→【保存】,弹出 “方案保存”窗口。

    7) 在弹出的“方案保存”窗口中输入方案名称,单击【确定】。

    2、执行账套批量备份

    打开一个备份方案或者新建一个批量备份方案后,单击【备份】→【执行备份】,系统就自动根据设置,对所有选中的账套定时进行完全备份和增量备份。

    注意:

    当账套批量自动备份工具运行时,计算机正常关机时会有系统弹出提示“选择退出工具后,会停止所有账套的备份,确定要退出吗”,这时请不要按“是”,否则下次开机后备份工具将不会定时自动备份。

    3、删除账套备份方案

    1)单击【方案】→【删除】子菜单,弹出方案列表窗口,

    2)从中选择一个方案,单击【删除】。

    4、日志浏览

    1)单击【日志】→【浏览日志】子菜单,弹出“日志过滤条件” 设置窗口。

    2)设置相应的过滤条件后,单击【确定】,弹出“账套批量自动备份日志”窗口。从这个窗口中,可以看到批量备份的日志信息。

    3)单击【日志】→【删除】,可以删除系统中一些无用的日志结果。

    4)单击【日志】→【删除】,可以将过滤出的日志结果,通过系统提供的引出功能,进行引出,生成excel文件或者txt文件。

    账套恢复操作:

    该功能可以将备份的账套文件恢复成一个新的金蝶K/3账套。

    具体操作是:

    1、选择菜单【数据库】→【恢复账套】,打开“选择数据库服务器”界面。

    2、输入数据服务器名称(也可以输入服务器的IP地址)、选择登录数据服务器的登录方式。如果采用SQL Server身份认证方式,则必须输入登录该数据服务器的用户名和密码。

    3、完成后,单击【确定】,打开 “恢复账套”界面。

    4、在和处输入拟新建账套的账套编号和名称,编号和名称不允许同系统中已有账套的名称或者编号重复。

    5、在处输入拟新建账套的生成路径。也可以单击旁边的【>】按钮,从打开的连接数据库服务器上的所有文件路径列表中选择一个需要的路径。

    6、在下选择一个备份文件。系统会自动根据选择的备份文件来决定恢复的方式。

    6.1 如果选择的是一个完全备份文件:

    此时直接单击【确定】,系统就会根据输入的和开始执行恢复账套,然后在指定的路径下生成一个新的账套,并且这个账套信息在中间层账套列表中显示出来。

    6.2 如果选择的是一个增量备份文件:

    a) 单击旁的【>】按钮,打开“选择数据库文件路径”窗口。

    b) 在该窗口指定的路径下找到完全备份文件,单击【确定】,返回“恢复账套”窗口。

    温馨提醒:

    由于基本增量备份文件进行账套恢复,必需要一个完全备份文件。所以,必须要指定完全备份文件。

    i. 单击【添加到文件列表】,将中的完全备份文件及其路径信息添加到下。

    ii. 单击【确定】,系统就会根据输入的和开始执行恢复账套,然后在指定的路径下生成一个新的账套,并且这个账套信息在中间层账套列表中显示出来。

    6.3 如果选择的是一个日志备份文件:

    1. 单击旁的【>】按钮,打开“选择数据库文件路径”窗口。

    2. 在该窗口指定的路径下找到完全备份文件,单击【确定】,返回“恢复账套”窗口。

    温馨提醒:

    由于基本日志备份文件进行账套恢复,必需要一个完全备份文件。所以,必须要指定完全备份文件。

    i. 然后单击【添加到文件列表】,将中的完全备份文件及其路径信息添加到下。

    ii. 如果在选择的日志备份文件前,还曾经作过增量备份,则需要重复2)、3),将增量备份文件加入到下。

    iii. 如果在选择的日志备份文件前,还曾经作过多次日志备份,则需要重复2)、3),将日志备份文件加入到下。

    iv. 单击【确定】,系统就会根据输入的和开始执行恢复账套,然后在指定的路径下生成一个新的账套,并且这个账套信息在中间层账套列表中显示出来。

    温馨提醒:

    下各种类型备份文件加入的顺序一定是:完全备份文件--->增量备份文件--->日志备份文件。日志备份文件则根据时间先后顺序加入,先备份的日志文件先加入。

    展开全文
  • –创建测试数据库 CREATE DATABASE Db ...不延时的话,可能会导致还原到时间点的操作失败) WAITFOR DELAY ’00:00:01′ GO –假设我们现在操作删除了 Db.dbo.TB_test 这个表 DROP TABLE Db.dbo.TB_test –保存删除表的
  • 如何在没有备份的情况下从iPhone恢复删除的短信?建议您使用cisdem iphone recovery mac,使用方法简单,扫描结束后,您可以预览并选择要恢复的数据,然后恢复到您的设备或导出到Mac备份,可以恢复丢失的照片,...

    如何在没有备份的情况下从iPhone恢复已删除的短信?建议您使用cisdem iphone recovery mac,使用方法简单,扫描结束后,您可以预览并选择要恢复的数据,然后恢复到您的设备或导出到Mac备份,可以恢复丢失的照片,视频,消息,联系人,通话记录,Safari书签,便签,日历等!下方为您附上cisdem iphone recovery使用教程,一起来看看吧。

    如何在没有备份的情况下从iPhone恢复已删除的短信:

    1、使用USB线将iPhone连接到Mac并在Mac上启动Cisdem iPhone Recovery。选择“从iOS设备恢复”选项,此iPhone数据恢复将检测您的设备。检测到后,当前设备名称,设备类型和iOS版本将显示在软件界面上。

    2、单击“开始”按钮。从这时起,Cisdem iPhone Recovery开始扫描iPhone的整个文件。扫描后,您可以看到所有提取的文件。然后选择“消息”项以预览所有找到的消息。

    3、预览邮件后,选择要恢复的邮件。您只需单击一下即可选择所有消息。然后单击“恢复”,将弹出一个小窗口供您选择输出文件类型。还支持HTML,Excel,Word,Numbers和Pages格式。最后,单击“保存”以保存恢复的iPhone消息。

    以上就是小编为您分享的iPhone恢复短信的方法,希望对您有所帮助!

     

    展开全文
  • MySQL完全备份与分类3.1 完全备份概述3.2 备份方式3.2.1 物理冷备份恢复3.2.2 使用专用备份工具 mysqldump3.2.2.1 备份库3.2.2.1 备份表3.3 恢复方式3.3.1 使用source命令恢复数据库3.3.2 使用mysql命令恢复...


    在生产环境中,数据的安全性是至关重要的,任何数据的丢失都可能产生严重的后果,所以我们要及时做好备份的工作
    在使用数据库的过程中,有多种原因造成数据的丢失:
    程序错误
    人为错误(大部分原因)
    计算机失败
    磁盘失败
    灾难(如火灾,地震)和偷窃

    1. 数据库备份的分类

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

    物理备份:对数据库操作系统的物理文件(如数据文件、日志文件等)的备份
    物理备份的方法:
    冷备份(脱机备份):是在关闭数据库的时候进行的
    热备份(联机备份):数据库处于运行状态,依赖于数据库的日志文件
    温备份(联机备份):数据库锁定表格(不可写入但可读)的状态下进行备份操作
    数据库在物理层面分成了三类文件,每一个文件的名字以表的名字开始,扩展名指出文件类型:
    表结构文件:.frm文件存储表定义
    表数据文件的扩展名为.MYD( MYData)
    表索引文件的扩展名是.MYI( MYIndex)

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

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

    完全备份:每次对数据库进行完整的备份
    差异备份:备份自从上次完全备份之后被修改过的文件
    增量备份:只有在上次完全备份或者增量备份后被修改的文件才会被备份

    2. 常见的备份方法

    1. 物理冷备
      备份时数据库处于关闭状态,直接打包数据库文件
      备份速度快,恢复时也是最简单的
    2. 专用备份工具mydump或mysqlhotcopy
      mysqldump常用的逻辑备份工具
      mysqlhotcopy仅拥有备份MyISAM和ARCHIVE表
    3. 启用二进制日志进行增量备份
      进行增量备份,需要刷新二进制日志
    4. 第三方工具备份
      免费的MySQL热备份软件Percona XtraBackup

    3. MySQL完全备份与分类

    3.1 完全备份概述

    完全备份是对整个数据库的备份、数据库结构和文件结构的备份
    完全备份保存的是备份完成时刻的数据库
    完全备份是增量备份的基础
    优点:
    安全性高
    备份与恢复操作简单方便
    缺点:
    数据存在大量的重复
    占用大量的备份空间,空间利用率低
    备份与恢复时间长

    3.2 备份方式

    3.2.1 物理冷备份及恢复

    首先先关闭数据库,然后进行备份,关闭是为了防止数据的丢失

    物理冷备:
    [root@localhost ~]# systemctl stop mysqld
    [root@localhost ~]# mkdir /backup
    [root@localhost ~]# tar zcf /backup/mysql_all-$(date +%F).tar.gz /usr/local/mysql/data/
    
    恢复数据库:
    1、先使用tar zxvf命令解压打包的数据库文件
    2、使用mv命令将其覆盖原有的数据库data目录
    3、使用systemctl start mysqld命令启动数据库
    

    3.2.2 使用专用备份工具 mysqldump

    mysqldump命令是MySQLI自带的备份工具,相当方便对MySQL进行备份
    通过该命令工具可以将指定的库、表或全部的库导出为SQL脚本,在需要恢复时可进行数据恢复 .sql脚本
    备份单个库 是备份所有表 还原的时候要先创建此数据库

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

    3.2.2.1 备份库

    备份单个库:
    [root@client ~]# mysqldump -uroot -pabc123 --databases test > /opt/bak.sql
    mysqldump: [Warning] Using a password on the command line interface can be insecure.
    [root@client ~]# 
    [root@client ~]# cd /opt
    [root@client opt]# ls
    bak.sql   mysql-2021-07-14.tar.xz  mysql-boost-5.7.20.tar.gz   mysql-5.7.20   
    
    备份多个库:
    [root@client ~]# mysqldump -uroot -pabc123 --databases test test01 > /opt/bak01.sql
    mysqldump: [Warning] Using a password on the command line interface can be insecure.
    [root@client ~]# cd /opt
    [root@client opt]# 
    [root@client opt]# ls
    bak01.sql                mysql-2021-07-14.tar.xz    
    bak.sql                  mysql-5.7.20               
    mysql-boost-5.7.20.tar.gz  rh
    
    备份全部库:
    [root@client ~]# mysqldump -uroot -pabc123 --all-databases > /opt/bakall.sql
    mysqldump: [Warning] Using a password on the command line interface can be insecure.
    [root@client ~]# cd /opt
    [root@client opt]# ls
    bak01.sql   mysql-5.7.20     bakall.sql       mysqlbak.sql    bak.sql     mysql-2021-07-14.tar.xz  mysql-boost-5.7.20.tar.gz 
    

    3.2.2.1 备份表

    备份单个表:
    [root@client ~]# mysqldump -uroot -pabc123 test aaa > /opt/aaa.sql
    mysqldump: [Warning] Using a password on the command line interface can be insecure.
    
    备份表结构:
    [root@client opt]# mysqldump -uroot -pabc123 -d test aaa > /opt/aaa-d.sql
    mysqldump: [Warning] Using a password on the command line interface can be insecure.
    
    

    3.3 恢复方式

    使用 mysqldump命令导出的SQL备份脚本,在进行数据恢复时可使用以下方法导入:
    source命令
    mysql命令

    3.3.1 使用source命令恢复数据库

    登录到 MySQL数据库
    执行 source备份sql脚本的路径(绝对路径)

    mysql > source /opt/bak.sql
    '//source命令在mysql库中使用'
    
    

    3.3.2 使用mysql命令恢复数据库

    mysql -u 用户名 -p [密码] < 库备份脚本的路径
    

    3.3.3 恢复数据表

    当备份文件中只包含表的备份,而不包括创建库的语句时,必须指定库名,且目标库必须存在

    mysql -u 用户名 -p [密码] < 表备份脚本路径
    
    

    4. MySQL增量备份与恢复

    4.1 增量备份概述

    只有那些在上次完全备份或者增量备份后被修改的文件才会被备份
    增量备份就是备份自上一次备份之后增加或变化的文件或者内容

    优点:
    没有重复数据,效率高,空间利用率最大化
    备份量不大,时间短

    缺点:
    恢复麻烦:需要上次完全备份及完全备份之后所有的增量备份才能恢复,而且要对所有增量备份进行逐个反推恢复
    安全性较低

    4.2 如何实现增量备份?

    MySQL没有提供直接的增量备份方法
    可以通过 MySQL提供的二进制日志( binary logs)间接实现增量备份
    MySQL二进制日志对备份的意义:
    二进制日志保存了所有更新或者可能更新数据库的操作
    二进制日志在启动 MySQL服务器后开始记录,并在文件达到max_binlog_size所设置的大小或者接收到 flush-logs命令后重新创建新的日志文件
    只需定时执行 flush-logs方法重新创建新的日志,生成二进制文件序列,并及时把这些旧的日志保存到安全的地方就完成了一个时间段的增量备份

    4.3 实现增量备份

    4.3.1 开启二进制文件日志的功能

    [root@client ~]# vim /etc/my.cnf
    在后面添加如下内容:
    log-bin=mysql-bin		   #开启bin-log
    binlog_format = MIXED      #指定二进制日志(binlog)的记录格式为MIXED(混合输入),STATEMENT (基于SQL语句)、ROW(基于行)、MIXED(混合模式),默认格式是STATEMENT
    server-id = 1			   #标识该语句最初是从哪个server写入的
    
    [root@client ~]# cd /usr/local/mysql/data/
    [root@client data]# systemctl restart mysqld
    [root@client data]# ls
    auto.cnf        ibdata1      ib_logfile1  mysql             mysql-bin.index     sys
    ib_buffer_pool  ib_logfile0  ibtmp1       mysql-bin.000001  performance_schema
    #可以看到多了mysql-bin.000001这个文件,发现已经生成了二进制文件,设置成功
    
    

    二进制日志(binlog)有3种不同的记录格式: STATEMENT (基于SQL语句)、ROW(基于行)、MIXED(混合模式),默认格式是STATEMENT

    STATEMENT(基于SQL语句):
    每一条涉及到被修改的sql 都会记录在binlog中

    ROW(基于行)
    只记录变动的记录,不记录sql的上下文环境

    MIXED 推荐使用
    一般的语句使用statement,函数使用ROW方式存储。

    查看二进制文件:
    [root@client data]# cp /usr/local/mysql/data/mysql-bin.000001 /opt/
    [root@client data]# cd /opt
    [root@client opt]# 
    [root@client opt]# mysqlbinlog --no-defaults --base64-output=decode-rows -v /opt/mysql-bin.000001
    #需要解码才能看到二进制文件
    
    mysqlbinlog:基于日志管理操作的命令
    --base64-output=decode-rows:使用64位编码机制去解码(decode)并按行读取(rows)
    -v: 显示详细内容
    --no-defaults : 默认字符集(不加会报错:UTF-8的错误)
    
    

    二进制文件几个参数解释:

    at :开始的位置点
    end_log_pos:结束的位置
    时间戳: 210715 14:35:33
    SQL语句;insert、select等

    4.3.2 创建库和表,进行完全备份和总量备份

    [root@client ~]# mysql -u root -p 
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | sys                |
    +--------------------+
    4 rows in set (0.00 sec)
    
    
    mysql> create database test;
    Query OK, 1 row affected (0.00 sec)
    
    mysql> use test;
    Database changed
    mysql> create table aaa (id int(4) primary key,name char(10));
    Query OK, 0 rows affected (0.02 sec)
    
    mysql> insert into aaa values(1,'zhangsan'),(2,'lisi');
    Query OK, 2 rows affected (0.01 sec)
    Records: 2  Duplicates: 0  Warnings: 0
    
    mysql> select *from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    +----+----------+
    2 rows in set (0.00 sec)
    
    mysql> exit
    Bye
    
    [root@client ~]# mysqldump -uroot -p test > /opt/test.sql #完全备份
    Enter password: 
    [root@client ~]# mysqladmin -uroot -p flush-logs #增量备份
    Enter password: 
    [root@client ~]# cd /usr/local/mysql/data/
    [root@client data]# ls
    mysql-bin.000001     mysql-bin.000002  ......
    '//发现已经有了增量备份文件,刚刚备份的操作记录都存放在 mysql-bin.000001中, mysql-bin.000002是准备存放后续操作的'
    
    

    4.3.3 进行正常操作和误操作,进行增量备份

    mysql> insert into aaa values(3,'wangwu');#正常操作
    Query OK, 1 row affected (0.00 sec)
    
    mysql> delete from aaa where id=3;#误操作
    Query OK, 1 row affected (0.01 sec)
    
    mysql> insert into aaa values(4,'zhaoliu');#正常操作
    Query OK, 1 row affected (0.00 sec)
    
    mysql> select *from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    |  4 | zhaoliu  |
    +----+----------+
    3 rows in set (0.00 sec)
    mysql> exit
    Bye
    
    [root@client data]# mysqladmin -uroot -p flush-logs #再次进行增量备份
    Enter password: 
    [root@client data]# ls
    mysql-bin.000003 mysql-bin.000001 mysql-bin.000002 ......
    #发现再次生成新的增量备份文件ysql-bin.000003
    #刚刚的正常操作和无操作都存放到了mysql-bin.000002中
    

    4.3.4 查看增量备份文件

    [root@client data]# mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000002 > /opt/bak.txt
    [root@client data]# cat /opt/bak.txt #可以看到刚才的mql操作语句
    ......
    # at 298
    #210715 23:50:17 server id 1  end_log_pos 406 CRC32 0xfb755924 	Quer
    use `test`/*!*/;
    SET TIMESTAMP=1626364217/*!*/;
    insert into aaa values(3,'wangwu')#正常操作
    /*!*/;
    # at 406
    #210715 23:50:17 server id 1  end_log_pos 437 CRC32 0x057a5b37 	Xid 
    COMMIT/*!*/;
    # at 437
    #210715 23:50:42 server id 1  end_log_pos 502 CRC32 0x9c8e094c 	Anon
    SET @@SESSION.GTID_NEXT= 'ANONYMOUS'/*!*/;
    # at 502
    #210715 23:50:42 server id 1  end_log_pos 581 CRC32 0xe022458d 	Quer
    SET TIMESTAMP=1626364242/*!*/;
    BEGIN
    /*!*/;
    # at 581
    #210715 23:50:42 server id 1  end_log_pos 681 CRC32 0x42ff9a02 	Quer
    SET TIMESTAMP=1626364242/*!*/;
    delete from aaa where id=3  #误操作
    /*!*/;
    # at 681
    ......
    
    

    4.4 增量恢复方式

    增量恢复的步骤:
    添加数据–进行完全备份–录入新的数据–进行增量备份–模拟故障–恢复操作

    1. 一般恢复
      将所有备份的二进制日志内容全部恢复
    mysqlbinlog --no-defaults --base64-output=decode-rows -v 日志文件名称 /opt/aaa.txt	'//使用64位解码器按行输出日志文件放到/opt/aaa.txt中'
    cat /opt/aaa.txt  '//查看日志文件的详细信息'
    
    
    1. 基于位置恢复
      数据库在某一时间点可能既有错误的操作也有正确的操作
      可以基于精准的位置跳过错误的操作
      发生错误节点之前的一个节点,上一次正确操作的位置点停止

    2. 基于时间点恢复
      跳过某个发生错误的时间点实现数据恢复
      在错误时间点停止,在下一个正确时间点开始

    查看是否恢复成功:

    方式一:交互式–使用source命令
    登录到MySQL数据库
    执行source备份sql脚本的路径

    方式二:无交互式–使用musql命令
    无须登录MySQL数据库
    使用-e删除数据表
    执行mysql备份sql脚本的路径

    4.4.1 模拟故障,删除表并恢复,一般恢复

    mysql> use test;
    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_test |
    +----------------+
    | aaa            |
    +----------------+
    1 row in set (0.00 sec)
    
    mysql> drop table aaa;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> show tables;
    Empty set (0.00 sec)
    
    mysql> source /opt/test.sql
    
    mysql> show tables;
    +----------------+
    | Tables_in_test |
    +----------------+
    | aaa            |
    +----------------+
    1 row in set (0.00 sec)
    
    mysql> select *from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    +----+----------+
    2 rows in set (0.00 sec)
    
    mysql> 
    
    

    4.4.2 基于时间点恢复

    查看一下表的内容:
    mysql> select * from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    +----+----------+
    2 rows in set (0.00 sec)
    
    mysql> quit
    Bye
    [root@client data]# mysqldump -uroot -pabc123 --databases test > /opt/123.sql
    #先进行完全备份
    mysqldump: [Warning] Using a password on the command line interface can be insecure.
    [root@client data]# ls /opt/
    ......    123.sql       ......
    [root@client data]# mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000001 
    
    [root@client data]# mysqladmin -u root -pabc123 flush-logs
    mysqladmin: [Warning] Using a password on the command line interface can be insecure.
    [root@client data]# ls
    auto.cnf        ib_logfile0  mysql             mysql-bin.index     test
    ib_buffer_pool  ib_logfile1  mysql-bin.000001  performance_schema
    ibdata1         ibtmp1       mysql-bin.000002  sys
    [root@client data]# mysql -uroot -pabc123 < /opt/123.sql
    #先恢复完全备份
    mysql: [Warning] Using a password on the command line interface can be insecure.
    [root@client data]# mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000001 
    
    # at 298
    #210716 13:27:00 server id 1  end_log_pos 407 CRC32 0xc382d6ad 	Query	thread_id=4	exec_time=0error_code=0
    use `test`/*!*/;
    SET TIMESTAMP=1626413220/*!*/;
    insert into aaa values(3,'zhaoliu')
    /*!*/;
    # at 407
    
    # at 582
    #210716 13:29:14 server id 1  end_log_pos 682 CRC32 0xfb0cdcb2 	Query	thread_id=4	exec_time=0error_code=0
    SET TIMESTAMP=1626413354/*!*/;
    delete from aaa where id=3
    /*!*/;
    # at 682
    
    [root@client data]# mysqlbinlog --no-defaults --stop-datetime='2021-07-16 13:29:14' mysql-bin.000001 | mysql -uroot -pabc123
    mysql: [Warning] Using a password on the command line interface can be insecure.
    
    
    这时候可以看到数据库恢复了之前的一条记录:
    mysql> select * from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    +----+----------+
    2 rows in set (0.00 sec)
    
    mysql> select * from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    |  3 | zhaoliu  |
    +----+----------+
    3 rows in set (0.00 sec)
    
    

    4.4.3 基于位置恢复

    mysql> insert into aaa values(4,'wangwu');
    Query OK, 1 row affected (0.00 sec)
    
    mysql> delete from aaa where id=1;
    Query OK, 1 row affected (0.01 sec)
    
    mysql> select *from aaa;
    +----+---------+
    | id | name    |
    +----+---------+
    |  2 | lisi    |
    |  3 | zhaoliu |
    |  4 | wangwu  |
    +----+---------+
    3 rows in set (0.00 sec)
    
    [root@client data]# mysqlbinlog --no-defaults --base64-output=decode-rows -v mysql-bin.000002
    #这是进行的操作存放在02之中,可以进行查看
    
    # at 1931
    #210716 15:31:30 server id 1  end_log_pos 2039 CRC32 0x5c7fd8aa 	Query	thread_id=4	exec_time=0	error_code=0
    SET TIMESTAMP=1626420690/*!*/;
    insert into aaa values(4,'wangwu')
    /*!*/;
    # at 2039
    
    # at 2214
    #210716 15:32:42 server id 1  end_log_pos 2314 CRC32 0x45194e2c 	Query	thread_id=4	exec_time=0	error_code=0
    SET TIMESTAMP=1626420762/*!*/;
    delete from aaa where id=1
    /*!*/;
    # at 2314
    
    [root@client data]# mysqladmin -u root -pabc123 flush-logs
    [root@client data]# ls
    auto.cnf        ib_logfile0  mysql             mysql-bin.000003    sys
    ib_buffer_pool  ib_logfile1  mysql-bin.000001  mysql-bin.index     test
    ibdata1         ibtmp1       mysql-bin.000002  performance_schema
    
    [root@client data]# mysqlbinlog --no-defaults --stop-position='1931' mysql-bin.000002 | mysql -uroot -pabc123
    mysql: [Warning] Using a password on the command line interface can be insecure.
    
    #查看一下数据库,数据恢复了
    mysql> select *from aaa;
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | zhangsan |
    |  2 | lisi     |
    |  3 | zhaoliu  |
    +----+----------+
    3 rows in set (0.00 sec)
    
    
    展开全文
  • 命令备份恢复到共享文件夹.docx
  • Oracle RMAN 备份恢复

    千次阅读 2021-01-07 11:44:08
    这里写目录标题一、RMAN 备份恢复1.RMAN备份(1)连接数据库(2)通道分配(3)RMAN 备份类型(4)BACKUP 命令(5)FORMAT 参数替换变量2.RMAN 恢复(1)数据库进行完全介质恢复(2)表空间的恢复(3)恢复数据文件...
  • 数据恢复与数据备份

    2018-05-22 16:32:10
    所谓数据恢复是指由于各种原因导致数据损失时把保留 在介质上的数据重新恢复的过程。 即使数据被删除或硬 盘出现故障,只要在介质没有严重受损的情况下,数据就 在介质上的数据重新恢复的过程。 即使数据被删除或硬 ...
  • 通过定时进行数据库备份,并删除30天以前的备份文件。保证数据丢失或服务器异常时刻可找回数据进行恢复,保证数据的安全。
  • mysql数据库备份恢复

    千次阅读 2021-07-25 18:15:49
    在开发中经常需要用到对线上的数据库做一些备份操作,以便应对一些突发状况下数据库的快速恢复,下面针对常用的数据库备份操作做简单的总结 环境准备 本文以mysql5.7进行说明,因此需要提前在linux环境下安装mysql...
  • ORACLE备份恢复

    2021-08-24 17:13:16
    一、关于备份恢复 二、逻辑备份(expdp和impdp) 三、物理备份 四、数据库日常备份计划及脚本参考 一、关于备份恢复 1、备份定义 备份就是把数据库复制到转储设备的过程。其中,转储设备是指用于放置数据库...
  • mysql数据没有备份误删了怎么恢复

    千次阅读 2021-01-25 13:10:31
    打开mysql的bin log功能:对于mysql也是支持增量备份,但要打开mysql的bin log功能。我们修改mysql的配置文件。linux是/etc/my.cnf,windows是mysql的安装目录/my.ini我们在[mysqld]下面加上log-bin一行代码,如下面...
  • es 定时备份 删除 与数据恢复

    千次阅读 2020-08-13 14:34:21
    '` ##(2)将备份文件中存在的索引删除 然后恢复 for index in ${es_get_snapshots_index}; do if [ ${index} == ".security-6" ]; then # 如果索引为 .security-6 则不能删除 continue fi # 判断索引是否存在 res=`...
  • 可自由组合的无限复合式备份任务,支持备份文件ZIP压缩后通过Lan/Ftp/云(金山快盘)/Email传输存储,Email日志信息发送,自由删除指定周期与存储位置的备份文件,还具有安全可靠的SQL数据库恢复功能。   1)完全...
  • MySQL数据库、表以及数据被删除,等操作后的找回 昨天发现网站不能访问,查看数据库居然被删除了,还发现多了一个数据库PLEASE_READ_ME_VVV,而且还有信息 里面写着: To recover your lost Database and avoid ...
  • 将表空间USERS中新增加的一个数据文件USERS02.DBF,USERS03.DBF脱机后,误删除了。恢复时发现这两个文件都没有有效备份。问数据能早上一客户说,,将表空间USERS中新增加的一个数据文件USERS02.DBF,USERS03.DBF脱机...
  • 数据库备份方式精讲1.1 数据库备份的重要性1.2 数据库备份的分类1.2.1 物理备份1.2.2 逻辑备份1.2.3 完全备份1.2.4 差异备份1.2.5 增量备份1.2.6 备份方式比较1.3 MySQL 完全备份概念解读2.mysqldump 备份演练2.1 ...
  • MySQL没有备份情况下误删除恢复 转载 MySQL没有备份情况下误删除恢复

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 252,887
精华内容 101,154
关键字:

怎么找回删除的备份