managed_backup.fn_available_backups (Transact-SQL)
适用于: SQL Server 2016 (13.x) 及更高版本
返回一个表格,其中包含 0 行、一行或多行的指定数据库可用备份文件。 返回的备份文件是由 SQL Server 托管备份创建的备份,Microsoft Azure。
语法
managed_backup.fn_available_backups ([@database_name = ] 'database name')
参数
@database_name
数据库的名称。 @database_name为 NVARCHAR(512)。
返回的表
此表已启用唯一的聚集约束(database_guid、backup_start_date、first_lsn 和 backup_type)。
如果删除某个数据库然后重新创建它,则将返回所有数据库的备份集。 输出按 database_guid(唯一标识每个数据库)排列。
如果 LSN 中存在间距,则表示日志链中存在中断,则表将为每个缺少的 LSN 段包含一个特殊行。
列名称 | 数据类型 | 描述 |
---|---|---|
Backup_path | NVARCHAR(260) COLLATE Latin1_General_CI_AS_KS_WS | 备份文件的 URL。 |
backup_type | NVARCHAR(6) | 数据库备份“LOG”的“DB”用于日志备份 |
expiration_date | DATETIME | 预期删除此文件的日期。 这是基于将数据库恢复到指定保持期内某一时间点的能力设置的。 |
database_guid | UNIQUEIDENTIFIER | 指定数据库的 GUID 值。 GUID 唯一地标识一个数据库。 |
first_lsn | NUMERIC(25, 0) | 备份集中第一条或最早的日志记录的日志序列号。 可以为 NULL。 |
last_lsn | NUMERIC(25, 0) | 备份集之后的下一条日志记录的日志序列号。 可以为 NULL。 |
backup_start_date | DATETIME | 备份操作的开始日期和时间。 |
backup_finish_date | NVARCHAR(128) | 备份操作的结束日期和时间。 |
machine_name | NVARCHAR(128) | 安装 SQL Server 实例并运行 SQL Server 托管备份的计算机的名称,以Microsoft Azure。 |
last_recovery_fork_id | UNIQUEIDENTIFIER | 结束恢复分叉的标识号。 |
first_recovery_fork_id | UNIQUEIDENTIFIER | 起始恢复分叉的 ID。 对于数据备份,first_recovery_fork_guid 等于 last_recovery_fork_guid。 |
fork_point_lsn | NUMERIC(25, 0) | 如果 first_recovery_fork_id 不等于 last_recovery_fork_id,这将是分叉点的日志序列号。 否则,此值为 NULL。 |
availability_group_guid | UNIQUEIDENTIFIER | 如果数据库是 AlwaysOn 数据库,则这是可用性组的 GUID。 否则,此值为 NULL。 |
返回代码值
0(成功)或 1(失败)。
安全性
权限
需要对此函数具有 SELECT 权限。
示例
以下示例列出通过 SQL Server 托管备份备份备份到数据库“MyDB”Microsoft Azure 的所有可用备份
SELECT *
FROM msdb.managed_backup.fn_available_backups ('MyDB')
另请参阅
目标为 Microsoft Azure 的 SQL Server 托管备份
从 Microsoft Azure 中存储的备份还原