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

| 0.37分钟

| 596.8字符

| 1、引言&背景 2、完整备份 3、完整还原 4、声明与参考资料

| SCscHero

| 2022/5/27 AM12:47

| 系列

| 已完成

每一个伟大的事业,都有一个微不足道的开始。

a) 应对背景

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

b) 应用场景

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

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

还原的较备份要复杂一些,需要指定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

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

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

Original: https://www.cnblogs.com/SCscHero/p/16316063.html
Author: SCscHero
Title: MSSQL中完整备份及完整还原的T-SQL实践

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/609765/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球