怎么用SQL语句备份和恢复数据库

怎么用SQL语句备份和恢复数据库,第1张

1、使用SQL最简单备份,还原数据库

2、为了方便以后的使用,开始对语句进行简单的封装->存储过程。进行备份。

3、还原数据库,数据库还原后的保存位置(目录)(使用系统默认保存位置。为数据库重命名(使用数据库默认名称)不包含扩展名,如果目录已存在该名称的数据库,将会被覆盖 。

你好:

一、还原需要的条件设置

使用命令,是通过sqlserver的事务日志以及一个误删除前的数据库的完整备份进行还原,所以在sqlserver2012的维护计划向导中,要建立完整备份,差异备份和事务日志,具体如下

以及在数据库属性,选项设置中,设置为完整备份,具体如下图

做好如上两个设置,数据库误删后找回数据就会非常轻松,现在说一下如何还原sqlserver数据到故障点。

二、还原命令

还原主要分为四步走:

1、出现故障后,首先执行备份事务日志命令,这里以AdventureWorks作为数据库名。命令如下:

BACKUP LOG AdventureWorks TO DISK = 'C:\SQLServerBackups\AdventureWorks_transcationlogbak'

WITH NORECOVERY;

2、从完整备份还原数据

RESTORE  DATABASE [QASupervision] FROM DISK='M:\Database\OA\AdventureWorks_Fullbackup_2014_03_18_010002_0155764bak'

WITH  NORECOVERY, REPLACE

3、从差异备份还原数据

RESTORE DATABASE [QASupervision] FROM DISK='M:\Database\OA\AdventureWorks_diffbackup_2014_03_18_020002_0155764bak' WITH NORECOVERY, REPLACE

4、从事务日志还原数据,还原到某个时间点之前

DECLARE @dt datetime

SELECT @dt=DATEADD(HOUR,-16,GETDATE())

select @dt

RESTORE LOG [QASupervision] FROM DISK='C:\SQLServerBackups\AdventureWorks_transcationlogbak'  WITH  STOPAT=@dt,RECOVERY

5、还原数据库,如果数据库提示正在还原中,则执行此命令即可。

RESTORE DATABASE AdventureWorks WITH RECOVERY

将原来的数据库文件删除,将备份中的数据库文件拷到相对路径下

使用with

move选项

RESTORE

DATABASE

A

FROM

DISK

=

N'D:\B'

with

RECOVERY,

NOUNLOAD,

REPLACE,

STATS

=

10

,

MOVE

'数据库逻辑名'

TO

'数据库A的完整路径+数据文件名mdf',

MOVE

'日志逻辑名'

TO

'数据库A的完整路径+日志文件名ldf'

另外使用restore命令恢复数据库,一般不必先创建要恢复的数据库,可以直接从备份里恢复出来。

或者右键

Attach你的备份也可以。

检查一下你的数据库连接字符串,如果你恢复了你的数据库并且数据库正常的话,那就是你程序配置的问题了

以上就是关于怎么用SQL语句备份和恢复数据库全部的内容,包括:怎么用SQL语句备份和恢复数据库、sql server误删了数据库怎么找回、救命啊!SQL的数据库被误覆盖了 如何恢复等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存