【问题标题】:Microsoft SQL Server backup physical_device_nameMicrosoft SQL Server 备份物理设备名称
【发布时间】:2019-03-08 04:54:14
【问题描述】:

我在 Microsoft SQL Server 中配置了 2 个备份任务,以对我们的数据库进行完整备份和增量备份。 Microsoft SQL Server 的版本是 2008 R2。

问题是,我已经配置了一个位置,直到几周前一切正常。问题是它当前在无法找到的位置创建这些备份。如果我检查日志,一切正常。但是在目标目录中,没有那个备份文件的踪迹。

当我执行以下查询时,我在物理设备名称中得到一个奇怪的值:

SELECT
    physical_device_name,
    backup_start_date,
    backup_finish_date,
    backup_size/1024.0 AS BackupSizeKB
FROM msdb.dbo.backupset b
JOIN msdb.dbo.backupmediafamily m ON b.media_set_id = m.media_set_id
WHERE database_name = 'DB_NAME'
ORDER BY backup_finish_date DESC

这些是我得到的物理设备名称的值:

  • {4CAE7525-44D7-4DEF-86A7-F9C7C99C013C}3
  • {EC6FB844-832G-4A8F-BDDE-12D073383139}3

等等……

知道为什么会这样以及如何解决吗?我最初的想法是这些目录是只读的。我改变了它,但我看到昨晚的一个备份由于同样的原因再次失败。

【问题讨论】:

  • 备份集中有一列说明是什么软件进行了备份。它说什么?我的猜测是涉及第三方产品。如果是这样,请立即了解它是什么以及如何使用它进行恢复。
  • 如果您指的是“software_vendor_id”列,则所有备份的值都相同。
  • 这是否包括在更改为具有 GUID 外观的物理设备名称之前的备份?另外,您看到的价值是什么?

标签: sql sql-server sql-server-2008 backup


【解决方案1】:

早安,

SQL Server 支持使用卷影副本 (VSS) 的虚拟化感知备份解决方案,也称为卷快照。例如,SQL Server 支持 Hyper-V 和 VMware 备份。 For more information check this document.

当主机备份您的系统时,会使用 SQL Server VSS Writer 服务(它应该在 SQL Server 安装在虚拟机上时运行)。

您应该注意到,这些备份在“device_type”列中的值为 7(7 表示虚拟设备)。这些行实际上非常有用,例如它有助于了解虚拟机备份正在 SQL Server 实例上运行完整的数据库备份。没有这些备份文件的踪迹,因为它们超出了虚拟机的范围(高于您的机器级别) - 这些是由主机(例如 Hyper-V 或 VMware)触发的。

More information here.

【讨论】:

    【解决方案2】:

    是的 - 如果您查看 device_type(在 backupmediafamily 表中),您会看到它可能是一个虚拟设备 (7),并且正在由您的虚拟机软件备份。

    【讨论】:

      猜你喜欢
      • 2010-10-08
      • 2015-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多