◆ 一、概述
SQLSERVER有两个命令用于创建备份,分别是:
- BACKUP DATABASE
- BACKUP LOG
这些命令具有可用于创建完整、差异、文件、事务日志备份等的各种选项,以及用于指定备份命令应如何运行以及与备份如何存储的其他选项。
◆ 二、BACKUP DATABASE
BACKUP DATABASE命令提供了许多用于创建备份的选项,这使您可以根据你使用的选项对数据库进行完整备份、差异备份、文件备份等。
◆ 2.1 创建完整的 SQL Server 备份到磁盘
该命令是 BACKUP DATABASE 数据库名称。“TO DISK”选项指定应将备份写入磁盘,并指定创建备份的位置和文件名。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
GO
◆ 2.2 创建差异 SQL Server 备份
此命令添加“WITH DIFFERENTIAL”选项。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
WITH DIFFERENTIAL
GO
◆ 2.3 创建文件级 SQL Server 备份
此命令使用“WITH FILE”选项指定文件备份。您需要指定数据库中的逻辑文件名,该文件名可以通过使用命令 sp_helpdb 'databaseName' 获得,并指定数据库的名称。
代码语言:javascript复制BACKUP DATABASE TestBackup FILEGROUP = 'ReadOnly'
TO DISK = 'C:TestBackup_ReadOnly.FLG'
GO
◆ 2.4 创建文件组 SQL Server 备份
此命令使用“WITH FILEGROUP”选项指定文件组备份。您需要从数据库中指定文件组名称,该名称可以通过使用命令 sp_helpdb 'databaseName' 获得,并指定数据库的名称。
代码语言:javascript复制BACKUP DATABASE TestBackup FILEGROUP = 'ReadOnly'
TO DISK = 'C:TestBackup_ReadOnly.FLG'
GO
◆ 2.5 创建多个磁盘文件的完整的 SQL Server 备份
此命令多次使用“DISK”选项将备份写入三个大小相同的较小文件,而不是一个大文件。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks_1.BAK',
DISK = 'D:AdventureWorks_2.BAK',
DISK = 'E:AdventureWorks_3.BAK'
GO
◆ 2.6 使用密码创建完整的 SQL Server 备份
此命令创建一个带有密码的备份,在还原数据库时需要提供该密码。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
WITH PASSWORD = 'Q!W@E#R$'
GO
◆ 2.7 使用进度统计信息创建完整的 SQL Server 备份
此命令创建完整备份并显示备份进度。默认是每 10% 后显示进度。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
WITH STATS
GO
这是另一个显示每 1% 后的统计信息的选项。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
WITH STATS = 1
GO
◆ 2.8 创建 SQL Server 备份并为其提供说明
此命令使用描述选项为备份命名。这可以稍后与某些还原命令一起使用,以查看备份中包含的内容。最大大小为 255 个字符。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
WITH DESCRIPTION = 'Full backup for AdventureWorks'
GO
◆ 2.9 创建镜像 SQL Server 备份
此选项允许您创建备份的多个副本,最好是到不同的位置。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
MIRROR TO DISK = 'D:AdventureWorks_mirror.BAK'
WITH FORMAT
GO
◆ 2.10 为 SQL Server 备份指定多个选项
下一个示例展示了如何同时使用多个选项。
代码语言:javascript复制BACKUP DATABASE AdventureWorks
TO DISK = 'C:AdventureWorks.BAK'
MIRROR TO DISK = 'D:AdventureWorks_mirror.BAK'
WITH FORMAT, STATS, PASSWORD = 'Q!W@E#R$'
GO
◆ 三、备份事务日志的 BACKUP LOG
BACKUP LOG 命令为您提供了许多用于创建事务日志备份的选项。以下是不同的例子。
◆ 3.1 创建一个简单的 SQL Server 事务日志备份到磁盘
该命令是 BACKUP LOG 数据库名称。“TO DISK”选项指定应将备份写入磁盘,并指定创建备份的位置和文件名。文件扩展名为“TRN”。这有助于我知道它是一个事务日志备份,但它可以是您喜欢的任何扩展。此外,数据库必须处于FULL或Bulk-Logged恢复模式,并且必须至少进行一次完整备份
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
GO
◆ 3.2 Create a SQL Server log backup with a password
此命令创建一个带有密码的日志备份,在还原数据库时需要提供该密码。
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
WITH PASSWORD = 'Q!W@E#R$'
GO
◆ 3.3 使用进度统计信息创建 SQL Server 日志备份
此命令创建日志备份并显示备份进度。默认是每 10% 后显示进度。
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
WITH STATS
GO
这是另一个显示每 1% 后的统计信息的选项。
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
WITH STATS = 1
GO
◆ 3.4 创建 SQL Server 备份并为其提供说明
此命令使用描述选项为备份命名。这可以稍后与某些还原命令一起使用,以查看备份中包含的内容。最大大小为 255 个字符。
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
WITH DESCRIPTION = 'Log backup for AdventureWorks'
GO
◆ 3.5 创建镜像 SQL Server 事务日志备份
此选项允许您创建备份的多个副本,最好是到不同的位置。
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
MIRROR TO DISK = 'D:AdventureWorks_mirror.TRN'
WITH FORMAT
GO
◆ 3.6 为 SQL Server 事务日志备份指定多个选项
此示例显示了如何同时使用多个选项
代码语言:javascript复制BACKUP LOG AdventureWorks
TO DISK = 'C:AdventureWorks.TRN'
MIRROR TO DISK = 'D:AdventureWorks_mirror.TRN'
WITH FORMAT, STATS, PASSWORD = 'Q!W@E#R$'
GO
来源:
https://www.toutiao.com/article/7142330967691510310/?log_from=9dc14201ea131_1663204342234
“IT大咖说”欢迎广大技术人员投稿,投稿邮箱:aliang@itdks.com
来都来了,走啥走,留个言呗~
IT大咖说 | 关于版权
由“IT大咖说(ID:itdakashuo)”原创的文章,转载时请注明作者、出处及微信公众号。投稿、约稿、转载请加微信:ITDKS10(备注:投稿),茉莉小姐姐会及时与您联系!
感谢您对IT大咖说的热心支持!
- 相关推荐 推荐文章
- MyBatisPlus又在搞事了!一个依赖轻松搞定权限问题!堪称神器
- 领导不懂IT技术,分不清报表和BI,看完这篇文章就懂了
- MIT开源协议,一款百分百开源、支持商用的亚马逊ERP系统
- 从架构师的角度带你把“响应式编程”给一次性搞明白,果然绝绝子
- 替代ELK:ClickHouse Kafka FlieBeat才是最绝的
- RedisJson 横空出世,比 ES 快7 倍,惊爆了
- 开源文件备份同步神器-DSynchronize
- 缓存层场景实战读缓存,如何更新缓存 缓存的高可用设计 监控
- 天天提交代码,git commit 提交时能规范一下吗?
- 极致的微前端框架,成本低、速度快、原生隔离、功能强
- 为什么工作三年的程序员还不懂APM与调用链技术?