MSSQL中完整备份及完整还原的T-SQL实践

阅文时长 | 0.37分钟 字数统计 | 596.8字符
主要内容 | 1、引言&背景 2、完整备份 3、完整还原 4、声明与参考资料
『MSSQL中完整备份及完整还原的T-SQL实践』
编写人 | SCscHero 编写时间 | 2022/5/27 AM12:47
文章类型 | 系列 完成度 | 已完成
座右铭 每一个伟大的事业,都有一个微不足道的开始。

一、引言&背景   完成度:100%

a) 应对背景

因项目安全角度考虑,不得使用ECS服务器,因此需要在家里和公司开发机的Local环境同步DB。博主最近在写一个自动备份还原的SQL脚本时,顺带复习备忘。

b) 应用场景

  • 使用T-SQL脚本实现MSSQL数据库完整备份还原。

二、完整备份   完成度:100%

a) 语法结构

备份只需要传两个参数。DatabaseName和BackupPath。

BACKUP DATABASE [DatabaseName] TO DISK = N'[BackupPath]' WITH INIT

b) 示例

--完整备份数据库
BACKUP DATABASE SCsc_001_BlogModule TO DISK = N'C:\LIST.Data\!SCsc数据库备份\SCsc_bak_full.bak' WITH INIT

三、完整还原   完成度:100%

还原的较备份要复杂一些,需要指定mdf、ldf路径以及文件逻辑名。

a) 步骤梳理

【Step 1】先查询备份文件的逻辑名,查询后可得到mdf和ldf的逻辑文件名。

restore filelistonly from disk='[BakFilePath]'

【Step 2】使用完整还原语法结构还原数据库。

b) 语法结构

按以下语法结构依次填入:需要还原的数据库名称、Bak文件绝对路径、mdf逻辑文件名、需要更改为的mdf逻辑文件路径、ldf逻辑文件名、需要更改为的ldf逻辑文件路径。

RESTORE DATABASE [ToBeRestoredDatabase]
FROM  DISK = N'[BakFilePath]' WITH  FILE = 1,
  MOVE N'[mdfFileLogicName]'
TO N'[mdfFilePath]',
  MOVE N'[ldfFileLogicName]'
TO N'[ldfFilePath]',  
NOUNLOAD,  REPLACE,  STATS = 10

四、声明与参考资料   完成度:100%

原创博文,未经许可请勿转载。

如有帮助,欢迎点赞、收藏、关注。如有问题,请评论留言!如需与博主联系的,直接博客私信SCscHero即可。

posted on 2022-05-27 02:27  SCscHero  阅读(249)  评论(0编辑  收藏  举报

导航