managed_backup.fn_available_backups (Transact-SQL)

适用于SQL Server 2016 (13.x) 及更高版本

返回一个表格,其中包含 0 行、一行或多行的指定数据库可用备份文件。 返回的备份文件是由 SQL Server 托管备份创建的备份,Microsoft Azure。

Transact-SQL 语法约定

语法

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 中存储的备份还原