数据库恢复综述 数据库恢复综述是第几章
- 游戏资讯
- 2024-12-24 02:47
- 1
数据库可能因为硬件或软件(或两者同时)的故障变得不可用,不同的故障情况需要不同的恢复作。我们必须决定最适合业务环境的恢复方法。在数据库中恢复有3种类型或方法,即应急(crash)恢复、版本(version)恢复和前滚(rool forward)恢复。 应急恢复用于防止数据库处于不一致或不可用状态。数据库执行的事务(也称工作单元)可能被意外中断,若在作为工作单位一部分的所有更改完成和提交之前发生故障,则该数据库就会处于不一致和不可用的状态。这时,需要将该数据库转化为一致和可用的状态。
数据库恢复综述 数据库恢复综述是第几章
数据库恢复综述 数据库恢复综述是第几章
access数据库很简单的,不需要模板。你根据实际需要建表、建字段就行了
关于系统数据库的恢复总结如下:
在SQL 数据库中,系统信息存储在系统数据库中,主要的系统数据库包括:
-从整体上控制用户数据库和SQL 作,在创建了任何用户定义的对象后,都要备份它
model-为新数据库提供模版和原型
msdb-包含了有关作业、报警及作员等信息如果包含系统数据库的介质变了,那么必须重建系统数据库,如果你仍然
可以启动SQL 服务,则可以通过RESTORE语句从系统数据库的备份中恢复数据库。
如果坏了,不能启动系统,可以按照下面步骤进行恢复
1 重建系统数据库 运行c:mssql7binnrebuildm.exe,按照提示进行即可,过
程中需要系统数据库样本的路径,可在安装光盘中找到;
2 重建系统数据库后,启动SQL 服务,用系统数据库的备份恢复数据库就
行了通常恢复顺序为->msdb->model
在恢复的备份时要注意:必须在single user模式下进行,有以下几种方法
进入单用户模式:
1 可以在命令行模式下输入sqlservr -c -f -m或者输入sqlservr -m
其中:-c 可以缩短启动时间,SQL 不作为Windows NT的服务启动
-f 用最小配置启动SQL
-m 单用户模式启动SQL
2 可以在控制面板-服务-MSSQL的启动参数中输入-c -f -m或者输入-m,点
击开始
3 还有一种更灵活的启动方法:用存在注册表里的启动参数启动
在MSSQL项下添加项SingleUser,具体内容如下所示:
HKEY_LOCAL_MACHINE
Software
Microsoft
MSSQL
SingleUser
Parameters
SQLArg0 : REG_SZ : -dC:MSSQL7DATAMASTER.DAT
SQLArg1 : REG_SZ : -eC:MSSQL7LOGERRORLOG
SQLArg2 : REG_SZ : -lC:MSSQL7DATAMASTLOG.DAT
SQLArg3 : REG_SZ : -m
在命令行下输入SQLServr -c -sSingleUser,注意:必须是在命令行下进入单用户模式后启动 Query Analyzer执行语句:
RESTORE DATABASE form disk=c:(具体的备份文件名)
恢复数据库的方法:
1、打开Sql,然后鼠标选中数据库点击右键,选择列表中的还原数据库选项,弹出还原数据库界面;
2、输入目标数据库,选中源设备,点击后面按钮,弹出指定备份界面;
3、在指定备份界面上点添加按钮,弹出指定备份文件夹界面,找到存放备份数据库的文件夹,选中文件夹中的备份数据库;
4、确定要还原的数据库无误后,指定备份界面的备份位置会显示备份的数据库的详细位置;
5、确定还原数据库的备份位置无误,自动返回至还原数据库界面,界面会显示选择用于还原的数据库,勾选复选框;
6、确定选择备份数据进行还原,界面会弹出提示还原成功已完成的信息,到此表示结束。
1、打开企业管理器,右键单击你需要还原到的“数据库”,选择“所有任务”-“还原数据库”。
2、在“还原数据库”对话框的“常规”选项卡中选择“从设备”。
3、“还原自”-“磁盘”-“添加”,定位至备份文件.bak所在目录,选择该文件。依次确定退出。
4、切换至“选项”选项卡查看“将数据库文件还原为”下的路径当前是否存在且路径,如果路径不存在,则还原出错。同时如果路径下存在同名文件,需选中“在现有数据库强制还原”完成作。
数据库运行过程中常见的故障有3类:事物故障、系统故障、介质故障。
恢复策略:
1、事物故障:
发生事务故障时,被迫中断的事务可能已对数据库进行丁修改,为了消除该事务对数据库的影响,要利用日志文件中所记载的信息,强行回滚该事务,将数据库恢复到修改前的初始状态。
为此,要检查日志文件中由这些事务所引起的发生变化的记录,取消这些没有完成的事务所做的一切改变,这类恢复作称为事务撤销。
2、系统故障:
系统故障的恢复要完成两方面的工作,既要撤销所有末完成的事务,还要重做所有已提交的事务,这样才能将数据库真正恢复到一致的状态。
3、介质故障:
介质故障比事务故障和系统故障发生的可能性要小,但这是最的一种故障,破坏性很大,磁盘上的物理数据和日志文件可能被破坏,这需要装入发生介质故障前最新的后备数据库副本,然后利用日志文件重做该副本后所运行的所有事务。
扩展资料:
“数据故障恢复”和“完整性约束”、“并发控制”一样,都是数据库数据保护机制中的一种完整性控制。所有的系统都免不了会发生故障,有可能是硬件失灵,有可能是软件系统崩溃,也有可能是其他外界的原因,比如断电等等。
数据库运行的突然中断会使数据库处在一个错误的状态,而且故障排除后没有办法让系统地从断点继续执行下去。这就要求DBMS要有一套故障后的数据恢复机构,保证数据库能够回复到一致的、正确地状态去。
参考资料来源:
参考资料来源:
参考资料来源:
浅谈IBMDB2的数据库备份与恢复
摘要 本文探讨了基于 IBM DB 的各种数据库备份与恢复策略 并附有完整的实验步骤 本文试图通过具体的实验使读者领会各种数据库备份方式的优劣和异同 并掌握 IBM DB 的数据库备份与恢复技术
若无特殊说明 以下数据库备份与恢复的试验环境均为 Windows XP + IBM DB V 企业版 同样的语句也在 AIX + IBM DB V 上验证通过
一 数据库备份的重要性
在信息日趋发达的时代 数据显得尤其重要 如何保障数据的完整性和安全性呢?如何避免数据灾难的发生呢?数据库备份作为数据安全和完整最有利保障手段的重要性就不言而喻了
数据库备份的重要性主要体现在
提高系统的高可用性和灾难可恢复性 (在数据库系统崩溃的时候 没有数据库备份怎么办!?)
使用数据库备份还原数据库是数据库系统崩溃时提供数据恢复最小代价的方案 (总不能让客户重新填报数据吧!?)
没有数据就没有一切 数据库备份就是一种防范灾难于未然的强力手段 (没有了数据 应用再花哨也是镜中花水中月)
对于DBA来说 最首要也是最重要的任务就是数据库备份
二 DB 数据库备份的方式与分类
按照数据库备份对数据库的使用影响来划分
A 联机备份(也称热备份或在线备份)
B 脱机备份(也称冷备份或离线备份)
说明 联机备份和脱机备份的不同在于 联机备份数据库时 数据库仍然可以供用户使用 而脱机备份数据库则不行 脱机备份数据库时 必须断开所有与数据库有连接的应用后才能进行
按照数据库的数据备份范围来划分
A 完全备份
B 增量备份
说明 完全备份数据库是指备份数据库中的所有数据 而增量备份只是备份数据库中的部分数据 至于增量备份到底备份哪些数据 稍候会提到
增量备份的两种实现方式
A 增量备份(也称累计备份)
B delta备份
说明 这两种备份方式的严格定义如下
增量备份是自最近成功的完全备份以来所有更改的数据的备份
delta 备份则是上一次成功的完全 增量或 delta 备份以后所做更改的数据的备份
这里请读者们仔细的看上面两个增量备份方式的定义 注意这两种备份方式的细微别 这里我们举一个例子来说明
设有一个数据库 它每天都有部分数据在发生变化 我们星期一晚上对该数据库做了一次完全备份 星期二晚上对该数据库做了一次增量备份A(注 这里的增量备份是指累计备份 下同) 星期三晚上又做了一次增量备份B 星期四则做了一次delta 备份
那么 我们可以得出以下结论
星期一的数据库备份包含了所有的数据
星期二没有变动过的数据没有发生备份 在星期二变动过的数据会备份 并且备份到增量备份A中
星期三的备份中含有自星期一完全备份以来发生过变动的所有数据 包含了星期二和星期三发生过变动的数据 显然 增量备份A 被 增量备份 B 包含
星期四做的是delta备份 注意 它会也只会备份自星期三备份之后变动过的数据
三 DB 备份文件的结构介绍
在不同的作系统下 DB 的备份文件的结构是不同的 这里概要地介绍一下
Windows 作系统下的数据库备份文件结构
说明 Windows 作系统下的数据库备份文件是嵌套在一系列文件夹之下的特殊结构 上例中 D:DB _Train 是指备份目录 TESTDB 是指数据库名称为 TESTDB DB 是指实例名称 NODE 是指名称 CATN 是指编目名称 是指备份发生的年月日 形如YYYYMMDD 是指备份发生的时间 到秒 也就是指 点 分 秒 形如HHMMSS 的 则是备份文件的一个序列号
Unix 作系统下的数据库备份文件结构
说明 Unix 作系统下的数据库备份文件就是一个文件 上例中 HTDC 是指数据库名称 db inst 是指实例名称 NODE 是指名称 CATN 是指编目名称 是指备份发生的具体时间 形如YYYYMMDDHHMMSS 同样地 它的时间到秒 也就是指 年 月 日 点 分 秒发生备份 的 则是备份文件的一个序列号
四 DB 数据库备份实验(附完整命令脚本清单)
DB 数据库实验准备工作
( ) Step 创建测试数据库 TestDB
脚本清单 CREATE DATABASE TestDB ON D: USING CODESET GBK TERRITORY CN WITH Pjj s Test DB ; }
( ) Step 创建数据库管理表空间 Data_SP(注意路径 如果没有请创建)
脚本清单 CREATE REGULAR TABLESPACE Data_SP PAGESIZE K MANAGED BY DATABASE USING ( FILE D:DB ContainerTestDBUserDataUserData ) BUFFERPOOL IBMDEFAULTBP;
说明 上面的脚本创建了一个名为 Data_SP 的数据库管理表空间 该表空间使用的缓冲池为 IBMDEFAULTBP 存储路径为 D:DB ContainerTestDBUserData 存储文件名为 UserData 大小为 K = M 页大小为 K
( ) Step 创建测试表 TestTable 并插入测试数据
脚本清单
CREATE TABLE TestTable ( ID INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH INCREMENT BY NO CACHE ) Message VARCHAR( ) PRIMARY KEY(ID) )IN Data_SP;
插入测试数据 INSERT INTO TestTable(Message) VALUES( 测试表建立成功 );
说明 建立测试表并插入数据是为了稍候验证数据库恢复的时候用的
( ) Step 创建测试表 TestTable 并插入测试数据
脚本清单 CREATE TABLE TestTable ( ID INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH INCREMENT BY NO CACHE ) Message VARCHAR( ) PRIMARY KEY(ID) )IN Data_SP;
插入测试数据 INSERT INTO TestTable(Message) VALUES( 测试表建立成功 );
DB 数据库脱机备份与恢复实验
脚本清单
Step 完全备份数据库(脱机 备份时间戳记为 )
db backup db TestDB to D:DB _Train
Step 模拟灾难 强制删除数据库
db drop db TestDB
Step 根据该数据库完全备份还原数据库
db restore db TestDB from D:DB _Train taken at
DB 数据库增量备份与恢复实验
脚本清单
数据库增量备份以及还原实验
修改数据库参数 TrackMod 使之支持数据库进行增量备份
db update db cfg using TrackMod YES
更改参数后必须完全离线备份数据库(脱机 备份时间戳记为 )
db backup db TestDB to D:DB _Train
插入测试数据
INSERT INTO TestTable(Message) VALUES( 开始增量数据库备份测试 );
开始增量备份(脱机 备份时间戳记为 )
db backup db TestDB incremental to D:DB _Train
删除数据库 模拟数据灾难
db drop db TestDB
首先还原至完全离线备份状态
db restore db TestDB from D:DB _Train taken at
还原至增量离线备份状态
db restore db TestDB incremental automatic from D:DB _Train taken at
注意 上述语句中 有一个 automatic 它表示无论有多少个增量备份 系统将全自动检索恢复数据库的顺序并自动恢复数据库 如果没有 automatic 则需要多次手动恢复数据库 很麻烦而且容易出错
Step 根据该数据库完全备份还原数据库
db restore db TestDB from D:DB _Train taken at
还原数据库后查询测试表数据检验数据是否恢复成功
DB 数据库联机机备份与恢复实验
说明 联机备份数据库可以使数据库在备份的同时仍然保持在可用状态 要让数据库支持联机备份 必须更改数据库的日志归档方式 在脱机备份模式下 数据库采用循环日志方式记录数据库日志 在联机备份模式下 数据库则采用归档日志的方式备份数据库日志 另外 对于联机备份的数据库来说 活动日志和归档日志就很重要了 一定要经常备份 保存
脚本清单
数据库联机备份以及还原实验
连接至数据库并插入测试数据
db connect to TestDB
插入测试数据
INSERT INTO TestTable(Message) VALUES( 开始联机数据库备份测试 完全备份 );
修改数据库参数 使之支持在线联机备份
db update db cfg for TestDB using logretain on trackmod on
执行增量 在线备份之前必须执行离线全备份一次 否则数据库将处于备份暂挂的不可用状态
(联机完全备份 时间戳记 )
db backup db TestDB
连接至数据库并插入测试数据
db connect to TestDB
插入测试数据
INSERT INTO TestTable(Message) VALUES( 开始联机数据库备份测试 增量备份 );
执行联机备份 备份同时再打开一个会话 模拟应用在线(联机增量备份 时间戳记 )
db backup db TestDB online incremental to D:DB _Train
模拟灾难 删除数据库!
重要 此前一定要将活动日志文件备份至另一个路径 保存好 本例中 活动日志保存在 C:db admin 下
db drop db TestDB
根据在线完全备份恢复数据库
db restore db TestDB from D:DB _Train taken at
根据在线增量备份恢复数据库
db restore db TestDB incremental automatic from D:DB _Train taken at
恢复后的数据库处于前滚暂挂的不可用状态
db connect to TestDB
前滚数据库 并指定归档日志位置 重要!
db ROLLFORWARD DATABASE TESTDB TO END OF LOGS AND PLETE OVERFLOW LOG PATH ( C:db admin )
五 综述
对于数据库管理人员或者维护人员来说 怎么强调数据库备份的重要性都不为过
希望本文能抛砖引玉 能让大家对 IBM DB UDB 的数据库备份与恢复有一些深入的认识 也希望大家能在本机上按照本文的脚本认真的实验 这样 你的认识会更加深刻
lishixinzhi/Article/program/Oracle/201311/18590
恢复步骤:
1、运行EasyRecovery。
2、选择“DeletedRecovery”。
3、选择数据库文件所在的驱动器,在“File Filter”中输入.mdf|.ldf,选择“Next”。
4、在左侧窗口会列出被删除的数据库文件,选择所要恢复的数据库文件,选择“Next”。
5、在“Recover to Local Drive”中选择恢复后的文件存放的路径,要选择与原数据库文件不同的路径,选择“Next”。
6、文件被恢复后,将恢复的文件到原数据库文件位置,并在企业管理器通过附加数据库,将恢复的文件恢复到SQL 中。
注:如果删除的数据库文件所有的存储区域被写过了,就无法恢复了,所以删除与恢复的时间间隔越短越好。
根据“ 电脑怎么进bios更改启动顺序 ”开机u盘启动,进入win0e系统,pe系统桌面依次点开“开始--程序--数据恢复--finaldata数据恢复”,打开数据恢复工具选择我们需要恢复的磁盘执行误删文件恢复过程【摘要】
数据被删除了如何找回【提问】
根据“ 电脑怎么进bios更改启动顺序 ”开机u盘启动,进入win0e系统,pe系统桌面依次点开“开始--程序--数据恢复--finaldata数据恢复”,打开数据恢复工具选择我们需要恢复的磁盘执行误删文件恢复过程【回答】
在科学技术不断进步和电子科技高速发展的今天,电脑已经得到了广泛的普及,而且电脑已经成为了人们在日常的工作、生活以及学习过程中最重要的工具之一。一般情况下,电脑中都会存储有大量的文件资料,而且随着时间的推移,电脑中所存储的文件资料也会变得无用,此时人们都会选择将文件删除。但是,很多人会不小心,将一些重要的文件资料也删除。那么,当重要的文件资料被删除后,我们又有什么方法可以将其恢复和找回呢?下面小编就为朋友们简单介绍下常用的恢复被删除文件的方法吧。
电脑误删的文件怎么恢复的作步骤:
步:下载并安装失易得数据恢复软件,运行软件后选择“误删除文件”功能。也可以使用“深度扫描”功能。
第二步:选择要恢复文件的磁盘,然后选择文件的类型,进行扫描。
第三步:找到自己要恢复的文件,点击预览确认一下,然后点击恢复即可。
以上方法就是电脑误删的文件怎么恢复的最常用方法,朋友们可以根据不同的情况,来选择使用。希望对朋友们有所帮助。
数据删除不必太过慌张,根据以下方法作,可以帮助数据的找回
版权声明:本文内容由互联网用户自发贡献。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 836084111@qq.com,本站将立刻删除。
下一篇