当前位置:首页 » 操作系统 » 数据库recovery

数据库recovery

发布时间: 2022-05-10 14:03:35

‘壹’ recover是什么意思

恢复
数据库恢复(Recovery):DBMS提供一种可以使数据库内数据进行全部或部分恢复的功能,最大限度地减少用户误操作带来的损失。
基于1001个网页-相关网页
复原
复苏
重获
短语
Recovery Console 复原主控台 ; 恢复控制台 ; 故障恢复控制台 ; 修复主控台
Recovery disc 还原光盘 ; 原光盘
Waste recovery 废物回收 ; 废料回收 ; 废物利用 ; 废气回收

‘贰’ 请教restore和recovery的区别

restore有归还之意,即拿旧的东西覆盖新的,可以理解为瞬间时光倒流。
recovery有恢复之意,是按照一定特殊方法一步一步倒着走,直到退回原来的位置。

在Oracle的备份与恢复的知识点中,经常会出现Restore 和 Recovery两个词。
假设我时间点A,做了个备份,时间点B数据库挂了

restore database ;// 这个操作利用时间点A做的备份来还原,返回到时间点A
recover database ;//这个操作利用archivelog and online log做recover,从时间点A,推进到时间点B。

‘叁’ 数据文件recover状态,没有日志怎么恢复

可通过重建数据文件来恢复,前提是归档日志文件保存完整先将数据库设置为归档模式sql*Plusconn system/manager--创建实验表空间create tablespace test datafile'c:\test.ora' size 5MAUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITEDdefault storage (initial 128K next 1M pctincrease 0)/--创建实验用户 drop user test cascade;create user test identified by test default tablespace test;grant connect,resource to test;conn test/testcreate table a(a number);insert into a values(1);insert into a select * from a;--反复插入,达到100万条commit;--关闭数据库SVRMGR connect internalSVRMGR alter system switch logfile;--强制归档SVRMGR alter system switch logfile;SVRMGR alter system switch logfile;SVRMGR shutdown--操作系统下删除test.ora文件--重新启动数据库SVRMGR connect internalSVRMGR startup这时,可以mount上,但无法打开,因为数据文件test.ora不存在,显示错误如下:ORA-01157: ?/? 8 - ? 8: 'C:\TEST.ORA'SVRMGR connect internalSVRMGR startup mountSVRMGR alter database create datafile 'c:\test.ora';SVRMGR set autorecovery onSVRMGR recover datafile 'c:\test.ora';SVRMGR alter database open;conn test/testselect count(*) from a;--数据又恢复到100万条--删除实验表空间conn system/manageralter tablespace test offline;drop tablespace test INCLUDING CONTENTS;drop user test;--如果是非归档模式,也可以运用以上方法,--前提是:输入记录所占空间的大小不超过所有联机日志文件的大小--即:用联机日志文件来恢复

‘肆’ 数据库删除数据了怎么恢复

数据库删除了数据是一个很棘手的问题,数据的删除首先包括三个层面:

1.删除放入回收站,没有在回收站中清除数据。这种情况是最简单的,进入回收站,找到删除的数据,右击选择恢复。

2.删除后未放入回收站或者删除后清空回收站,尽量先不要往原数据所在盘符下储存内容,刚刚删除的数据只是文件结构被删除,真正的文件数据还没被覆盖。通过数据恢复软件是可以找回来的,专业的软件例如有超级兔子数据恢复软件

3.如果是删除很久以后才想到数据库数据要恢复,并且磁盘一直在使用,磁盘被填满的话数据就已经被覆盖了,这样的数据是无法找回的。

‘伍’ 数据库被删除了怎么恢复

恢复步骤:
1、运行EasyRecovery。
2、选择“DeletedRecovery”。
3、选择数据库文件所在的驱动器,在“File Filter”中输入*.mdf|*.ldf,选择“Next”。
4、在左侧窗口会列出被删除的数据库文件,选择所要恢复的数据库文件,选择“Next”。
5、在“Recover to Local Drive”中选择恢复后的文件存放的路径,要选择与原数据库文件不同的路径,选择“Next”。
6、文件被恢复后,将恢复的文件复制到原数据库文件位置,并在企业管理器通过附加数据库,将恢复的文件恢复到SQL Server中。
注:如果删除的数据库文件所有的存储区域被写过了,就无法恢复了,所以删除与恢复的时间间隔越短越好。

‘陆’ 如何解决Database处于Recovery Pending状态

尝试一
=======================
运行下面的命令, 失败.
RESTORE DATABASE SharePoint_Config WITH RECOVERY

报错:
Msg 3148, Level 16, State 3, Line 1

This RESTORE statement is invalid in the current context. The 'Recover Data Only' option is only defined for secondary filegroups when the database is in an online state. When the database is in an offline state filegroups cannot be specified.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.

尝试二
======================
运行下面的命令, 失败.
DBCC checkdb ('SharePoint_Config')

报错:
Msg 945, Level 14, State 2, Line 1

Database 'SharePoint_Config' cannot be opened e to inaccessible files or insufficient memory or disk space. See the SQL Server errorlog for details.

这里注意到"inaccessible files"字样, 于是想起应该检查一下存放MDF和LDF的路径的权限设置是否与默认的文件夹相同.
经过比较, 发现少了用户"MSSQLSERVER"的full control.

添加NT Service\MSSQLSERVER用户后, 赋予full control权限, 问题依旧. 看起来不是权限的问题.

笔者还尝试了下面的命令, 均告失败.
EXEC sp_resetstatus 'SharePoint_Config';
ALTER DATABASE "SharePoint_Config" SET EMERGENCY
DBCC checkdb('SharePoint_Config')
ALTER DATABASE "SharePoint_Config" SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CheckDB ('SharePoint_Config', REPAIR_FAST)
DBCC CheckDB ('SharePoint_Config', REPAIR_ALLOW_DATA_LOSS)

笔者最后将两个数据库删掉, 重新Attach MDF和LDF文件, 才将数据库状态恢复.

参考资料
=======================
Database States
http://msdn.microsoft.com/en-us/library/ms190442.aspx
DBCC CHECKDB
http://msdn.microsoft.com/en-us/library/aa258278%28v=sql.80%29.aspx
Suspect Database Recovery (SQL Server 2005)
http://social.msdn.microsoft.com/Forums/en-US/sqldatabaseengine/thread/ea8b251f-fbce-4f8b-8a87-1b570688ce88/

‘柒’ SQL数据库怎么还原 用友SQL SERVER恢复数据库误删除数据方法

SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可。但是,这个恢复需要有两个前提条件:

1. 至少有一个误删除之前的数据库完全备份。

2. 数据库的恢复模式(Recovery mode)是“完整(Full)”。

针对这两个前提条件,会有三种情况:

情况一、如果这两个前提条件都存在,通过SQL语句只需三步就能恢复(参考文章),无需借助第三方工具。

a) 备份当前数据库的事务日志:BACKUP LOG [数据库名] TO disk= N'备份文件名' WITH NORECOVERY

b) 恢复一个误删除之前的完全备份:RESTORE DATABASE [数据库名] FROM DISK = N'完全备份文件名' WITH NORECOVERY, REPLACE

c) 将数据库恢复至误删除之前的时间点:RESTORE LOG [数据库] FROM DISK = N'第一步的日志备份文件名' WITH STOPAT = N'误删除之前的时间点' , RECOVERY

情况二、如果第1个前提条件不存在,第2个前提条件存在,需要借助第三方工具。

情况三、如果第2个前提条件不存在,无法恢复。所以,一定要将数据库恢复模式设置为“完整(Full)”。

我现在面临的是第二种情况,需要找第三方工具。

开始找的是Log Explorer for SQL Server,不支持SQL Server 2008。

后来找的是SQL Log Rescue,也不支持SQL Server 2008。

接着找到的是SysTools SQL Recovery,支持SQL Server 2008,但需要购买,Demo版并没有数据恢复功能。

最终在officerecovery.com上找到Recovery for SQL Server,虽然也是商业软件,需要购买,但Demo版可以恢复数据,只要数据库文件不超过24Gb。幸好朋友的数据库文件不大,用它完成了误删除数据的恢复。

下面分享一下用Recovery for SQL Server进行恢复的操作步骤:

1. 运行Recovery for SQL Server

2. 点击菜单中的 File > Recover,选择要恢复的数据库的数据文件(.mdf)

3. Next > Next,进入 Recovery Configuration 界面,选择Custom(选择了Custom才可以选择从日志中恢复误删除的数据)。

4. Next 进入 Recovery options 窗口,选中 Search for deleted records,并选择要恢复的数据库的日志文件路径(log file path)。

5. Next 并选择目标文件夹(Destination folder),用于存放恢复过程中生成的SQL语句与bat文件。

6. 点击Start,开始恢复操作(在上一步选择的目标文件夹中生成相应的SQL文件与Bat文件),然后,出现 SQL Server Database Creation Utility 窗口。

7. Next,选择被恢复数据存放的目标数据库。

8. Next, 选择 Import availiable data from both database and log files

9. Next, Next, 然后就完成数据的恢复!

‘捌’ sql数据库删除了怎么恢复数据

sql
server中误删除数据的恢复本来不是件难事,从事务日志恢复即可。但是,这个恢复需要有两个前提条件:
1.
至少有一个误删除之前的数据库完全备份。
2.
数据库的恢复模式(recovery
mode)是“完整(full)”。
针对这两个前提条件,会有三种情况:
情况一、如果这两个前提条件都存在,通过sql语句只需三步就能恢复(参考文章),无需借助第三方工具。
a)
备份当前数据库的事务日志:backup
log
[数据库名]
to
disk=
n'备份文件名'
with
norecovery
b)
恢复一个误删除之前的完全备份:restore
database
[数据库名]
from
disk
=
n'完全备份文件名'
with
norecovery,
replace
c)
将数据库恢复至误删除之前的时间点:restore
log
[数据库]
from
disk
=
n'第一步的日志备份文件名'
with
stopat
=
n'误删除之前的时间点'
,
recovery
情况二、如果第1个前提条件不存在,第2个前提条件存在,需要借助第三方工具。
情况三、如果第2个前提条件不存在,无法恢复。所以,一定要将数据库恢复模式设置为“完整(full)”。
我现在面临的是第二种情况,需要找第三方工具。
开始找的是log
explorer
for
sql
server,不支持sql
server
2008。
后来找的是sql
log
rescue,也不支持sql
server
2008。
接着找到的是systools
sql
recovery,支持sql
server
2008,但需要购买,demo版并没有数据恢复功能。
最终在officerecovery.com上找到recovery
for
sql
server,虽然也是商业软件,需要购买,但demo版可以恢复数据,只要数据库文件不超过24gb。幸好朋友的数据库文件不大,用它完成了误删除数据的恢复。
下面分享一下用recovery
for
sql
server进行恢复的操作步骤:
1.
运行recovery
for
sql
server
2.
点击菜单中的
file
>
recover,选择要恢复的数据库的数据文件(.mdf)
3.
next
>
next,进入
recovery
configuration
界面,选择custom(选择了custom才可以选择从日志中恢复误删除的数据)。
4.
next
进入
recovery
options
窗口,选中
search
for
deleted
records,并选择要恢复的数据库的日志文件路径(log
file
path)。
5.
next
并选择目标文件夹(destination
folder),用于存放恢复过程中生成的sql语句与bat文件。
6.
点击start,开始恢复操作(在上一步选择的目标文件夹中生成相应的sql文件与bat文件),然后,出现
sql
server
database
creation
utility
窗口。
7.
next,选择被恢复数据存放的目标数据库。
8.
next,
选择
import
availiable
data
from
both
database
and
log
files
9.
next,
next,
然后就完成数据的恢复!

‘玖’ 数据库中的部分数据删除后能恢复吗

SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可。但是,这个恢复需要有两个前提条件:
1. 至少有一个误删除之前的数据库完全备份。
2. 数据库的恢复模式(Recovery mode)是“完整(Full)”。
针对这两个前提条件,会有三种情况:
情况一、如果这两个前提条件都存在,通过SQL语句只需三步就能恢复(参考文章),无需借助第三方工具。
a) 备份当前数据库的事务日志:BACKUP LOG [数据库名] TO disk= N'备份文件名' WITH NORECOVERY
b) 恢复一个误删除之前的完全备份:RESTORE DATABASE [数据库名] FROM DISK = N'完全备份文件名' WITH NORECOVERY, REPLACE
c) 将数据库恢复至误删除之前的时间点:RESTORE LOG [数据库] FROM DISK = N'第一步的日志备份文件名' WITH STOPAT = N'误删除之前的时间点' , RECOVERY
情况二、如果第1个前提条件不存在,第2个前提条件存在,需要借助第三方工具。
情况三、如果第2个前提条件不存在,无法恢复。所以,一定要将数据库恢复模式设置为“完整(Full)”。
我现在面临的是第二种情况,需要找第三方工具。
开始找的是Log Explorer for SQL Server,不支持SQL Server 2008。
后来找的是SQL Log Rescue,也不支持SQL Server 2008。
接着找到的是SysTools SQL Recovery,支持SQL Server 2008,但需要购买,Demo版并没有数据恢复功能。
最终在officerecovery.com上找到Recovery for SQL Server,虽然也是商业软件,需要购买,但Demo版可以恢复数据,只要数据库文件不超过24Gb。幸好朋友的数据库文件不大,用它完成了误删除数据的恢复。

热点内容
如何设置超高难度密码 发布:2024-10-09 01:19:05 浏览:176
linux只读文件修改 发布:2024-10-09 01:13:08 浏览:83
安卓机电脑用什么检测 发布:2024-10-09 01:10:20 浏览:670
有关数据库的工作 发布:2024-10-09 00:52:12 浏览:732
代码分析算法 发布:2024-10-09 00:47:11 浏览:161
芯片写程序需要配置哪些文件 发布:2024-10-09 00:38:39 浏览:934
存储储存搬运 发布:2024-10-09 00:28:42 浏览:717
吃鸡电脑适合什么配置 发布:2024-10-09 00:18:24 浏览:229
java线程实例 发布:2024-10-09 00:05:34 浏览:193
文档放在安卓手机哪里 发布:2024-10-08 23:35:00 浏览:439