sql server通过日志恢复数据库

   --创建测试数据库Test

  create database Test

  on primary

  (

  name=’Test_data.mdf’,

  filename=’d:Test_data.mdf’

  )

  log on

  (

  name=’Test_data.ldf’,

  filename=’d:Test_data.ldf’

  )

  --创建测试表

  create table Test.dbo.ta(id int)

  insert into Test.dbo.ta select id from sysobjects

  --创建备份文件

  backup database Test to disk=’d:Test.bak’ with format

  --创建一个NDF文件

  alter database Test

  add file

  (

  name=’file’,

  filename=’d:test.ndf’,

  SIZE = 1MB

  )

  --关闭MSSQL服务,然后删除NDF文件然后再打开MSSQL服务,此时Test数据库被疑置啦!

  --恢复数据疑置

  --首先备份日志文件

  backup log Test to disk=’d:Test_log.bak’ with format,no_truncate

  --利用文件组备份文件恢复被破坏的文件

  restore database Test from disk=’d:Test.bak’ with Norecovery

  --恢复日志文件

  restore Log Test from disk=’d:Test_log.bak’ with RECOVERY

  --TipS

  --如果已经建立ndf文件的话那么恢复日志文件的话用下面的这句话

  --只不过将with RECOVERY-->WITH REPLACE

  restore Log Test from disk=’d:Test_log.bak’ WITH REPLACE

时间: 2024-12-31 18:00:35

sql server通过日志恢复数据库的相关文章

SQL Server无日志恢复数据库(2种方法)_MsSql

SQL Server是一个关系数据库管理系统,应用很广泛,在进行SQL Server数据库操作的过程中难免会出现误删或者别的原因引起的日志损坏,又由于SQL Server数据库中数据的重要性,出现了以上的故障之后就必须对数据库中数据进行恢复.下文就为大家介绍一种恢复数据库日志文件的方法. 解决方法一 1.新建一个同名的数据库 2.再停掉sql server(注意不要分离数据库) 3.用原数据库的数据文件覆盖掉这个新建的数据库 4.再重启sql server 5.此时打开企业管理器时会出现置疑,先

SQL Server无日志恢复数据库(2种方法)

SQL Server是一个关系数据库管理系统,应用很广泛,在进行SQL Server数据库操作的过程中难免会出现误删或者别的原因引起的日志损坏,又由于SQL Server数据库中数据的重要性,出现了以上的故障之后就必须对数据库中数据进行恢复.下文就为大家介绍一种恢复数据库日志文件的方法. 解决方法一 1.新建一个同名的数据库 2.再停掉sql server(注意不要分离数据库) 3.用原数据库的数据文件覆盖掉这个新建的数据库 4.再重启sql server 5.此时打开企业管理器时会出现置疑,先

SQL Server 压缩日志及数据库文件大小

请按步骤进行,未进行前面的步骤时,请不要做后面的步骤,以免损坏你的数据库. 一般不建议做第4,6两步,第4步不安全,有可能损坏数据库或丢失数据.第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复. 1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志 BACKUP LOG 数据库名 WITH NO_LOG 3.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 -

SQL Server压缩日志及数据库文件大小

请按步骤进行,未进行前面的步骤时,请不要做后面的步骤,以免损坏你的数据库. 一般不建议做第4,6两步,第4步不安全,有可能损坏数据库或丢失数据.第6步如果日志达到上限,则以 后的数据库处理会失败,在清理日志后才能恢复. 1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志 BACKUP LOG 数据库名 WITH NO_LOG 3.收缩数据库文件(如果不压缩,数据库的文件不会减小 企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件

SQL Server 压缩日志与减少SQL Server 文件大小的方法

一般不建议做第4,6两步,第4步不安全,有可能损坏数据库或丢失数据.第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复. 1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志 BACKUP LOG 数据库名 WITH NO_LOG 3.收缩数据库文件 (如果不压缩,数据库的文件不会减小企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M

人人都是 DBA(VI)SQL Server 事务日志

原文:人人都是 DBA(VI)SQL Server 事务日志 SQL Server 的数据库引擎通过事务服务(Transaction Services)提供事务的 ACID 属性支持.ACID 属性包括: 原子性(Atomicity) 一致性(Consistency) 隔离性(Isolation) 持久性(Durability) 事务日志(Transaction Log) 事务日志(Transaction Log)存储的是对数据库所做的更改信息,让 SQL Server 有机会恢复数据库.而恢复

SQL Server 压缩日志与减少SQL Server 文件大小的方法_MsSql

一般不建议做第4,6两步,第4步不安全,有可能损坏数据库或丢失数据.第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复. 1.清空日志 DUMP TRANSACTION 库名 WITH NO_LOG 2.截断事务日志 BACKUP LOG 数据库名 WITH NO_LOG 3.收缩数据库文件 (如果不压缩,数据库的文件不会减小企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件 选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M

SQL Server 2008 R2 清空数据库中ldf日志文件

/************************************************************  * Sql Server 2008 R2 清空数据库中ldf日志文件  * 将Whir_InternalSystem替换为您要操作的数据库即可  ************************************************************/ USE [master] ALTER DATABASE [Whir_InternalSystem]  S

如何使Microsoft SQL Server的日志文件不会增大

server 说   明:如何使Microsoft SQL Server的日志文件不会增大? 如何缩小MSSQL的日志文件已经是一个经常性的问题了,不过这个问题在精华区已经有不少答案了,我这里也不再赘述.现在我们讨论一下治本的问题,即如何使日志文件不再增大? 先介绍一个简单的方法.就是把数据库的故障还原模型设置为"简单"(SQL2K).这样它就会在Checkpoint的时候截断日志.具体操作方法是:1.在Enterprise Manager中右键点数据库,"属性|选项|故障还