从日志中恢复SQL Server数据库

server|恢复|数据|数据库

        上周有同事对数据库进行了误操作,问我可不可以回到前一天的状态。恢复数据库的问题以前学DB2的时候遇到过,那时我想SQL Server中应该也会有方法把数据库恢复到前一天的。我的机器上ERP的数据库日志从800M增张到了2G,Log增长得这么快,想必是把所有的操作都记录上了。网上找了几天的资料,SQL Server Books Online也看了一个星期,没有找到答案,CSDN上找到一篇从日志恢复数据库的文章同SQL Server Online上面的说明一样写的不清不楚。问了几个公司里资历深一点的同事,都没有找到答案,昨天早晨6点半的时候醒来,想起DB2中的恢复模型,恢复的数据库应该是在恢复点之前的数据库,于是早早就起来,来到办公室,实验了一次,以为会成功,没想到还是没有成功恢复,很沮丧。

        研究这个问题都一个星期了,仍然没有解决,整个星期五一天都不好受,想起了Boy,一个新人训时跟我们开交流会的RD leader。结果还是没有答案,不过Boy很热情,把这个问题转发给了我们的DBA Running,Running好象是搞oracle的,sql server中的这种恢复也不熟悉,不过他说:多从原理方面考虑。

        没辄,只好到Microsoft的官方网站上面去找一下,溜达了一圈,有一篇文章提到,最好不要使用Auto close,auto shrink选项,我想可能是这两个选项的问题吧。于是周五下午的时候,又试了一次,SQL Query Analyzer里面运行restore database等了半天都没反应,我只好祈祷能够恢复成功,结果并不如人愿,出来了红色的错误信息,说是数据库存取冲突,原来是SQL Server Enterprise Manager也在使用数据库,于是关了Enterprise Manager,果然顺利恢复了数据库,高兴地快要跳起来。

         工作几个月,常常都感觉到理论方面的基础知识不够丰富,一些帮助文档看不懂,或者运行不了的时候,常常都是因为理论基础。一些问题想要去解决常常要花很长的时间,所以以后还是从基础理论入手学习数据库。

时间: 2024-09-27 14:11:56

从日志中恢复SQL Server数据库的相关文章

从日志中恢复SQL Server数据库到时间点

server|恢复|数据|数据库 Author:David EulerDate: 2004/10/16Email:de_euler-david@yahoo.com.cn 有任何问题,请与我联系:)          DB2中可以使得数据库回复到指定的时间点,SQL Server数据库的Recovery Model为full 或者Bulk copy的时候,是可以从日志来恢复数据库的.实际上日志中记录的一条一条的transact sql语句,恢复数据库的时候会redo这些sql语句.  前提条件:m

无日志文件恢复SQL Server数据库实战

SQL Server 是一个关系数据库管理系统.它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本.在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本.Sybase 则较专注于SQL Server在UNIX 操作系统上

无数据库日志文件恢复sql server数据库方法两则

    方法一 1.新建一个同名的数据库 2.再停掉sql server(注意不要分离数据库) 3.用原数据库的数据文件覆盖掉这个新建的数据库 4.再重启sql server 5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名) 6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用 数据库的脚本创建一个新的数据库,并将数据导进去就行了. USE MASTERGOSP_CONFIGURE ALLOW UPDATES,1 RECON

如何通过备份文件恢复SQL Server数据库

阿里云关系型数据库(Relational Database Service,简称 RDS)是一种稳定可靠.可弹性伸缩的在线数据库服务.基于飞天分布式系统和高性能存储,RDS 支持 MySQL.SQL Server.PostgreSQL 和 PPAS( Postgre Plus Advanced server,一种高度兼容 Oracle 的数据库)引擎,并且提供了容灾.备份.恢复.监控.迁移等方面的全套解决方案,彻底解决数据库运维的烦恼. 应用场景 假如您用了阿里云的SQL Server RDS,

ASP.NET备份恢复Sql Server数据库

本文将向大家介绍如何使用 ASP.NET 备份恢复 Sql Server 数据库,大家可以做个参考,也希望对大家有所帮助. 备份SqlServer数据库: string SqlStr1 = "Server=(local);database='" + this.DropDownList1.SelectedValue + "';Uid=sa;Pwd=";string SqlStr2 = "backup database " + this.DropDo

sql-在Csharp中实现SQL Server数据库中的UniqueIdentifier数据类型

问题描述 在Csharp中实现SQL Server数据库中的UniqueIdentifier数据类型 实现对数据库的条件查询表结构:表数据示例:错误信息:1.2. 解决方案 你注意,一个是lid,一个是selllistno,不是一个字段,前者是guid 解决方案二: 你这个是流水号,一个string,不是guid,没法转,用string就可以了. 解决方案三: 解决方案四: uniqueidentifier数据类型可存储16字节的二进制值,其作用与全局唯一标记符(GUID)一样.GUID是唯一的

在C#中运用SQLDMO备份和恢复SQL Server数据库

server|备份|恢复|数据|数据库     SQLDMO(SQL Distributed Management Objects,SQL分布式管理对象)封装了Microsoft SQL Server数据库中的对象.SQLDMO是Microsoft SQL Server中企业管理器所使用的应用程序接口,所以它可以执行很多功能,其中当然也包括对数据库的备份和恢复. SQLDMO由Microsoft SQL Server自带的SQLDMO.dll提供,由于SQLDMO.dll是一个COM对象(有关C

用VB备份和恢复SQL Server数据库的方法

server|备份|恢复|数据|数据库 摘要 备份与恢复是数据库管理员维护数据库安全性和完整性的重要操作.本文分析并介绍用Access备份SQL数据库的方法,很好地达到了数据备份的目的.同时,就Access 数据库的安全接口作了简略讨论,使备份后不致丧失数据安全性.并提出了改进备份与恢复策略的一些建议. 引言 对于关键应用的数据库系统应根据具体环境和条件制订一个完善可行确保系统安全的备份计划,没有备份的系统是不可靠.危险的,后果将是严重的,破坏性病毒.误操作.自然灾害等等都可能会对数据库系统造成

用ASP.NET还原与恢复SQL Server数据库

asp.net|server|恢复|数据|数据库 需要注意的是还原,还原的时候问题最大了,有别的用户使用数据库的时候无法还原,解决办法就是在MASTER数据库中添加一个存储过程: create proc killspid (@dbname varchar(20))asbegindeclare @sql nvarchar(500)declare @spid intset @sql='declare getspid cursor forselect spid from sysprocesses wh