sqlserver恢复表,sql 恢复

怎样在sql sever备份中恢复某一张表中的数据?

有个方法很好理解,如下:

目前创新互联建站已为上千余家的企业提供了网站建设、域名、雅安服务器托管网站托管运营、企业网站设计、双峰网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

1、新建数据库,另起名,强制恢复原先数据库的备份。

2、从该新数据库中把你想要的表DTS到你想到的数据库中。

方法虽拐弯了一点,但很安全,很好理解。

SQLSERVER 2008误删除表,几百万行数据没了,怎么恢复

SQLSERVER 2008误删除表,几百万行数据没了,怎么恢复

误删了数据可以用恢复软件恢复,你可以用 AneData全能文件恢复。格式化分区或者误ghost到其他的分区数据丢失要恢复,分区突然打不开了提示未被格式化数据要恢复,直接删除或者清空了回收站,卸载软件丢失的数据要恢复等等都可以恢复的,具有反删除、反格式化、分区恢复、高级模式等扫描功能,可以恢复最常见的种种数据丢失的情况。

sqlserver怎么恢复删除

使用Log Explorer查看和恢复数据

Log Explorer 4.1.可用于SQL Server2005的日志查看工具

下载地址:

使用方法:

打开Log Explorer - Attach Log File - 选择SQL Server服务器和登陆方式 - Connect -

在Database Name中选择数据库 - Attach- 左面对话框中Browse- View Log- 就可以看到log记录了

想恢复的话: 右键Log记录 Undo Transation- 选择保存文件名和路径- 然后打开该文件到查询分析器里执行

T-sql代码就可以了

例如 如果Log是delete table where ...的话,生成的文件代码就是insert table ....

然后将此insert table的代码放到查询分析器里执行.就可以恢复数据.

----------------------------------------------------------------------

--如何恢复被delete/update的数据

----------------------------------------------------------------------

1 连接到被删除数据库的Db

打开log explorer 选择 "file"-"attach log file"-选择服务器和登陆方式-"connect"-选择"数据库"-"attach"

2 查看日志

在左面操作项目的对话框中选择"browse"项目-"view log"-就可以看到当前的Log记录了

3 恢复数据

右键某一条log记录,选择"undo transation"-"选择保存文件名和路径"-然后打开该文件到查询分析器里执行

T-sql代码就可以了

例如: 如果log是delete table where ...的话,生成的文件代码就是insert table ....

----------------------------------------------------------------------

--Log Explorer恢复被drop table和truncate table后的数据

----------------------------------------------------------------------

1 连接到被删除数据库的Db

操作同上

2 恢复方法

1) 选择"salvaage dropped/truncate"菜单,在右边的对话框中选择表名,和droped/trucated的日期,

File Name中选择生成insert语句脚步的存放位置,condition选择是droped还是truncated,

最后点击"create" 就会生成insert语句,把生成的语句到查询分析器里面执行一下就可以了

2) 选择"ViewDDL Commands"菜单-选"truncate table" 操作项-点击"Salvage"-生成语句-查询分析器里执行

----------------------------------------------------------------------

--log explorer使用的几个问题

----------------------------------------------------------------------

1) 对数据库做完全/差异/日志备份

备份时如果选用了删除事务日志中不活动的条目

再用Log explorer打试图看日志时,提示No log recorders found that match the filter,would you like to view unfiltered data 选择yes 就看不到刚才的记录了

如果不选用了删除事务日志中不活动的条目

再用Log explorer打试图看日志时,就能看到原来的日志并做恢复

2) 修改了其中一个表中的部分数据,此时用Log explorer看日志,可以作日志恢复

3) 然后恢复备份,(注意:恢复是断开log explorer与数据库的连接,或连接到其他数据上,

否则会出现数据库正在使用无法恢复)

恢复完后,再打开log explorer 提示No log recorders found that match the filter,would you like to view unfiltered data,选择yes 就看不到刚才在2中修改的日志记录,所以无法做恢复.

4) 不要用SQL的备份功能备份,搞不好你的日志就破坏了.

正确的备份方法是:

停止SQL服务,复制数据文件及日志文件进行文件备份.

然后启动SQL服务,用log explorer恢复数据

如何恢复SQLServer表级数据详解

方案1:恢复到一个不同的数据库:

对于小数据库来说不失为一种好的办法,用备份还原一个新的库,并把新库中的表数据同步回去。你可以做完整恢复,或者时间点恢复。但是对于大数据库,是非常耗时和耗费磁盘空间的。这个方法仅仅用于还原数据,在还原数据(就是同步数据)的时候,你要考虑触发器、外键等因素。

方案2:使用STOPAT来还原日志:

你可能想恢复最近的数据库备份,并回滚到某个时间点,即发生意外前的某个时刻。此时可以使用STOPAT子句,但是前提是必须为完整或大容量日志恢复模式。

SQLserver2000如何从数据库备份中恢复一个表?

用RESTORE命令还原起来不太好写,我建议你还是新建一个数据库,然后在新建数据库上强制还原你的数据备份(注意目的数据库的路径选择),然后使用“导入/导出数据”命令在数据库之间将你需要的表覆盖(注意不要选成追加)。就可以了。

ps,研究完RESTORE,上面还原十边都完了。呵呵,还有别忘了在还原前再做此备份

下面是使用restore命令还原,如果不明白可以看看sqlserver帮助

还原数据库的部分内容:

RESTORE DATABASE { database_name | @database_name_var }

file_or_filegroup [ ,...n ]

[ FROM backup_device [ ,...n ] ]

[ WITH

{ PARTIAL }

[ [ , ] FILE = { file_number | @file_number } ]

[ [ , ] PASSWORD = { password | @password_variable } ]

[ [ , ] MEDIANAME = { media_name | @media_name_variable } ]

[ [ , ] MEDIAPASSWORD = { mediapassword | @mediapassword_variable } ]

[ [ , ] MOVE 'logical_file_name' TO 'operating_system_file_name' ]

[ ,...n ]

[ [ , ] NORECOVERY ]

[ [ , ] { NOREWIND | REWIND } ]

[ [ , ] { NOUNLOAD | UNLOAD } ]

[ [ , ] REPLACE ]

[ [ , ] RESTRICTED_USER ]

[ [ , ] RESTART ]

[ [ , ] STATS [ = percentage ] ]


文章名称:sqlserver恢复表,sql 恢复
新闻来源:http://scyanting.com/article/dsippgs.html