数据库恢复的数据库恢复的三种方式

数据库恢复的数据库恢复的三种方式,第1张

数据库可能因为硬件或软件(或两者同时)的故障变得不可用,不同的故障情况需要不同的恢复 *** 作。我们必须决定最适合业务环境的恢复方法。在数据库中恢复有3种类型或方法,即应急(crash)恢复、版本(version)恢复和前滚(rool forward)恢复。 应急恢复用于防止数据库处于不一致或不可用状态。数据库执行的事务(也称工作单元)可能被意外中断,若在作为工作单位一部分的所有更改完成和提交之前发生故障,则该数据库就会处于不一致和不可用的状态。这时,需要将该数据库转化为一致和可用的状态。

为此,需要回滚未完成的事务,并完成当发生崩溃时仍在内存中的已提交事务。如在COMMIT语句之前发生了电源故障,则在下一次重新启动并再次访问该数据库时,需要回滚到执行COMMMIT语句前的状态。回滚语句的顺序与最初执行时的顺序相反。 这种恢复技术是版本恢复的一个扩展,使用完整的数据库备份和日志相结合,可以使一个数据库或者被选择的表空间恢复到某个特定时间点。如果从备份时刻起到发生故障时的所有日志文件都可以获得的话,则可以恢复到日志上涵盖到的任意时间点。前滚恢复需要在配置中被明确激活才能生效。

恢复sqlserver数据库表数据步骤如下:

一、心态:

1、务必冷静,事情已经发生不可慌乱。

2、立即查看当前时间,最好能够精确到秒,并做记录。

3、应立即向直接上级反映此事,不可隐瞒,防止事态扩大。

4、如果权限允许,应当立即停止相关应用,防止有新的数据写入数据库。

二、恢复:

1、构建新数据库以及写入一些数据

2、做一次完整备份,这个是前提,没有一份完整备份文件是无法进行接下来的 *** 作的。

注意:如上图所示,恢复模式一定要说完整,如果是其他类型那恐怕就没有下文了。一般来讲新建数据库的时候,默认不要去改恢复模式这个属性。

3、写入一条新数据。

4、记住此时要记录时间点。

此刻最好看一下系统时间。接下来就要演示如何进行数据恢复。

5、做事务日志备份,做事务日志备份需要注意一下一点,如图所示。

备份模式请选择事务日志,备份路径自行决定

进入选项,将可靠性第1、2勾选,事务日志选择第二个,压缩属性可以不选择点击确定备份成功,此时数据库将显示为正在还原状态

注意:如果备份失败,请检查该数据库是否正在被占用,如果是请kill。

6、还原完整备份。

数据库处于正在还原状态,右键数据库--任务--还原--文件和文件组,选择最近的一次完整备份。此时,需要在“选项”中选择第二种还原方式,具体如下图。

如上图,勾选完整数据备份文件。

如上图,恢复状态选择第二种,从字面意思就知道为什么要选择这种。

7、接着还原备份的事务日志。

完整备份还原完毕,接着要对事务日志进行还原,右键数据库--任务--还原--事务日志,如下图:

还原事务日志的时候需要特别注意“时间点”这个设置,其他不需要设置。

时间点选择为误删数据的时间点之前就可以恢复出误删的数据,所以之前强调要查看一下时间。如下图所示

点击确定,在确定等待还原成功,数据库变成可用状态。如下图。

如果查询发现数据不是你想要的,那么可以重复上述的 *** 作,从备份事务日志开始,然后最后选择时间点的时候在缩小范围。

1左下角点击开始,程序,MicrosoftSQLServer2008R2 ,找到SQLServerManagementStudio,进入企业管理器;

2选择服务器实例名,登录名选择sa,输入sa登录密码,点击连接;

3进入企业管理器界面,鼠标右键单击“数据库”,选择“新建数据库”;

4 输入数据库名称,然后点击确定;

5 鼠标右键点击数据库,选择“任务”“还原”“数据库”;

6 进入还原数据库页面,选择“源设备”,然后点击后面的三个小圆点;

7点击“添加”;

8选择要恢复的BAK文件;

9 点击下面的“选择用于还原的备份集”,把还原下面的方框全部勾选,然后点击左侧的“选项”;

10在选项的设置里,把“覆盖现有数据库”前面的方框勾选,然后点击下面的“确定”;

11成功完成数据库的还原。

在SQL server 中恢复数据的几种办法 自然就是 backup 的 恢复方法 backup 这种方法是最安全 最可靠的方法 *** 作起来也很简单 只要在 sql server 的 enterprise manager中选择 restore 就可以了 用T SQL 也可以完成 RESTORE DATABASE test FROM DISK = c:\mssql \backup\test bak 当然这是用的 文件恢复 如果是 设备恢复 自然也是可以的 可是有的时候 SQL server 是在我们毫无准备的情况下瘫痪的 有的时候是伴随者 NT 的瘫痪而引起的 (这个时候 豆腐想 墙上 Gates 的画像有仍了几个 西红柿) 怎么办呢?这个时候就只有采用 sql server 的 t sql 中提供的系统存储过程了 sp_atach_db 在这里举一个简单的例子 sp_attach_db @dbname = N pubs @filename = N c:\mssql \data\pubs mdf @filename = N c:\mssql \data\pubs_log ldf 这种方法应该说是有很高的成功率的 不过在 实践中 豆腐听说 这样后 数据库成为只读的 那也没有办法了 如果只有 mdf 没有 ldf 文件的话 可以使用 sp_attach_single_file sp_attach_single_file_db @dbname = pubs @physname = c:\mssql \data\pubs mdf 这个方法本来是 用来 对 sp_deatach 的 *** 作的反 *** 作 不过直接使用也还是可以成功的 lishixinzhi/Article/program/SQLServer/201311/22066

以上就是关于数据库恢复的数据库恢复的三种方式全部的内容,包括:数据库恢复的数据库恢复的三种方式、sqlserver数据库表数据误删除了 怎么恢复、SQLServer2008R2如何还原数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9495559.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存