NVP-vProxy. Клиент восстановления защиты данных не отображает резервные копии виртуальных машин SQL
Summary: NetWorker VMware Protection (NVP) vProxy используется для резервного копирования виртуальных машин (ВМ) Microsoft SQL. Среда состоит из нескольких сред vCenter, и виртуальная машина SQL была скопирована в другой vCenter за пределами практик NetWorker. Восстановление виртуальных машин SQL выполняется из клиента Data Protection Restore (DPRC). Мастер DPRC не отображает резервные копии SQL для виртуальной машины, ошибка не возвращается. ...
Symptoms
- Доступ к клиенту Data Protection Restore (DPRC) осуществляется из веб-браузера:
https://NetWorker_Server_Address:9090/flr - Будут выбраны параметры Admin и App , и пользователь успешно пройдет аутентификацию.
- Указаны исходный vCenter и диапазон времени, виртуальная машина SQL выбрана, но резервные копии не отображаются:
- Среда состоит из нескольких серверов vCenter. Виртуальная машина SQL, выбранная для восстановления, была скопирована (или реплицирована) в новый vCenter. Виртуальная машина существует (или существовала) в обеих средах vCenter. Использованный метод репликации был внешним по отношению к NetWorker.
Cause
Виртуальная машина реплицировалась с помощью метода, в результате которого был «скопирован» универсальный уникальный идентификатор VMware (UUID). В базе данных носителей NetWorker один и тот же UUID отображается в двух разных виртуальных центрах. Пример.
[root@nsr ~]# mminfo -avot -q vmname=SQLVM02 -r name | sort | uniq vm:503df65c-90cd-e729-13a4-2f5711ba5b85:MyOldvCente.amer.lan vm:503df65c-90cd-e729-13a4-2f5711ba5b85:MyNewvCenter.amer.lan
DPRC использует API REST для подключения к серверу NetWorker и создания списка резервных копий. Он использует глобальный запрос GET API REST, чтобы найти виртуальную машину с помощью global/vmware/vms?q=Uuid:UUID. В flr-server.log.
- Linux:
/nsr/authc/logs/flr-server.log - Windows (по умолчанию):
C:\Program Files\EMC NetWorker\nsr\authc-server\tomcat\logs\flr-server.log
2026-04-08 13:43:42,855 [https-jsse-nio-9090-exec-4] INFO c.e.n.c.n.i.NwRestApiBase.buildWebResourceFromUri 171 - Call NW: [https://NETWORKER_SERVER_ADDRESS:9090/nwrestapi/v3/global/vmware/vms?q=Uuid:VM_UUID]
DPRC не может представить резервные копии, так как конфликт возникает из-за уникального идентификатора, указанного в нескольких виртуальных центрах. Один и тот же вызов REST API возвращает оба vCenter:
Linux:
curl -k --user Administrator "https://localhost:9090/nwrestapi/v3/global/vmware/vms?q=Uuid:UUID
Windows:
curl.exe -k --user Administrator "https://localhost:9090/nwrestapi/v3/global/vmware/vms?q=Uuid:UUID
Пример:
[root@nsr ~]# curl -k --user Administrator:'!Password1' "https://localhost:9090/nwrestapi/v3/global/vmware/vms?q=Uuid:503df65c-90cd-e729-13a4-2f5711ba5b85" | jq
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1213 0 1213 0 0 17328 0 --:--:-- --:--:-- --:--:-- 17328
{
"count": 2,
"vms": [
{
"annotation": "",
"connectionState": "connected",
"hostname": "SQLVM02",
"ipAddress": "192.168.9.10",
"ipAddresses": [
"192.168.9.10"
],
"links": [
{
"href": "https://localhost:9090/nwrestapi/v3/global/vmware/vcenters/MyNewvCenter.amer.lan/vms/503df65c-90cd-e729-13a4-2f5711ba5b85",
"rel": "item"
}
],
"morefId": "vm-1364",
"name": "SQLVM02",
"osId": "windows2019srv_64Guest",
"osName": "Microsoft Windows Server 2019 (64-bit)",
"powerState": "on",
"state": "running",
"status": "green",
"type": "VirtualMachine",
"uuid": "503df65c-90cd-e729-13a4-2f5711ba5b85",
"vCenterHostname": "MyNewvCenter.amer.lan",
"version": "vmx-18"
},
{
"annotation": "",
"connectionState": "connected",
"hostname": "",
"ipAddress": "",
"ipAddresses": [],
"links": [
{
"href": "https://localhost:9090/nwrestapi/v3/global/vmware/vcenters/MyOldvCenter.amer.lan/vms/503df65c-90cd-e729-13a4-2f5711ba5b85",
"rel": "item"
}
],
"morefId": "vm-15697",
"name": "SQLVM02",
"osId": "windows9Server64Guest",
"osName": "Microsoft Windows Server 2016 (64-bit)",
"powerState": "off",
"state": "notRunning",
"status": "gray",
"type": "VirtualMachine",
"uuid": "503df65c-90cd-e729-13a4-2f5711ba5b85",
"vCenterHostname": "MyOldvCenter.amer.lan",
"version": "vmx-18"
}
]
}
Это не является ожидаемым поведением. Неотъемлемое требование UUID заключается в том, что он уникален. При запросе идентификатора UUID виртуальной машины ожидаются результаты только для одной виртуальной машины в одном vCenter.
Resolution
Восстановить данные из DPRC невозможно из-за конфликта UUID в средах VMware. Временное решение проблемы см. в разделе «Дополнительная информация ».
Следующие шаги помогут исправить дублирующийся UUID. Однако это не делает существующие данные резервной копии пригодными для восстановления. Это изменение ниже представляет собой корректирующее действие для резервных копий, созданных после изменения и в дальнейшем. После истечения срока действия резервных копий с дублирующимся UUID из NetWorker пользовательский интерфейс восстановления правильно находит резервные копии виртуальных машин, используя их универсальный уникальный идентификатор (UUID).
- Удалите дублирующуюся виртуальную машину из всех групп защиты NetWorker, где в данный момент созданы резервные копии.
- Возможности новой виртуальной машины в VMware.
- Отмените регистрацию виртуальной машины в инвентаризации vCenter (выберите «Remove from Inventory»). Не удаляйте виртуальную машину.
- Повторно зарегистрируйте виртуальную машину: Выберите хранилище данных и нажмите правой кнопкой мыши на значок
.vmxи выберите «Register VM». - Включите виртуальную машину. При появлении запроса vCenter выберите «I copied it». Это вынуждает vSphere создавать новый уникальный BIOS и UUID экземпляра.
- Снова добавьте виртуальную машину (ВМ) в группы защиты, из которых она была удалена на шаге 1.
См. следующую документацию VMware о влиянии дублирования UUID: Изменение или сохранение UUID для перемещенной виртуальной машины
Additional Information
.mdf и .ldf файлы копируются с диска в другое местоположение на виртуальной машине и импортируются в среду SQL Server Management Studio (SSMS).
Предварительные требования
- Набор сохранений, необходимый для восстановления, должен быть набором для сохранения базы данных, а не
txnlogРезервного копирования. Это можно определить с помощью сервера NetWorkermminfo:
mminfo -avot -q vmname=SQL_VM-NAME
Пример:
[root@nsr ~]# mminfo -avot -q vmname=win-sql01.amer.lan volume type client date time size ssid fl lvl name ... VMBackupPool.002 Data Domain vcsa.amer.lan 04/11/2026 11:38:14 AM 104 GB 4124732135 cr full vm:503ea434-0331-8ed6-8b19-b9cd408cce7a:vcsa.amer.lan VMBackupPool.002 Data Domain vcsa.amer.lan 04/11/2026 12:30:09 PM 2341 KB 4107958035 cr txnlog vm:503ea434-0331-8ed6-8b19-b9cd408cce7a:vcsa.amer.lan
Переменная full Резервное копирование — это полное резервное копирование базы данных, включая диск виртуальной машины (VMDK). Переменная txnlog Резервное копирование содержит только журналы транзакций и не включает базы данных.
- Резервная копия виртуальной машины должна находиться в Data Domain. Если это носитель другого типа (Tape, CloudBoost, AFTD), клонируйте резервную копию с ленты в Data Domain, доступный для vCenter: NVP-vProxy. Как вручную клонировать набор сохранений виртуальной машины с устройства, не принадлежащего Data Domain, на устройство-клон Data Domain
- Процесс создания экспорта NFS и его подключения к VMware и целевой виртуальной машине описан в следующей статье: NetWorker. Ручное монтирование диска сохранения ВМ Windows для процесса FLR без устройства vProxy
Восстановление данных:
После выполнения предварительных действий диск виртуальной машины, содержащий данные SQL, должен быть смонтирован на виртуальной машине SQL с произвольной буквой диска. Выполните следующие действия:
- Копирование базы данных SQL
.mdfи.ldfфайлы с подключенного диска в другое местоположение на виртуальной машине. Например, на подключенном диске находятся следующие базы данных:
PS R:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA> dir
Directory: R:\Program Files\Microsoft SQL Server\MSSQL15.MSSQLSERVER\MSSQL\DATA
Mode LastWriteTime Length Name
---- ------------- ------ ----
...
-a---- 4/10/2026 11:46 AM 8388608 NetWorkerSupport.mdf
-a---- 4/10/2026 11:32 AM 8388608 NetWorkerSupport_log.ldf
...
C:\tmp\RecoveredSQLdata.
PS C:\tmp\RecoveredSQLdata> dir
Directory: C:\tmp\RecoveredSQLdata
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 4/10/2026 11:46 AM 8388608 NetWorkerSupport.mdf
-a---- 4/10/2026 11:32 AM 8388608 NetWorkerSupport_log.ldf
- Убедитесь, что файлы и папки не доступны только для чтения. Нажмите правой кнопкой мыши путь к папке с данными и убедитесь, что флажок «Read Only» не установлен. Для файлов также не должен быть выбран режим «Только чтение»:
- Войдите в SQL Server Management Studio (SSMS) с помощью учетной записи администратора.
- Нажмите правой кнопкой мыши Базы данных и выберите Прикрепить.
- В окне Базы данных для подключения нажмите кнопку Добавить. Перейдите к расположению
.mdfФайл был скопирован в и выберите его. - Если сервер SQL содержит базу данных с тем же именем, что и исходная база данных, необходимо переименовать импортируемую базу данных. Выберите поле «Присоединить как » и переименуйте базу данных, например добавьте
_OLD.

- Нажмите кнопку ОК, чтобы база данных была импортирована в среду SQL Server Management Studio.
ПРЕДУПРЕЖДЕНИЕ. Любые ошибки разрешений или импорта на основе ОС должны устраняться системным администратором или администратором базы данных.
В данном примере исходная база данных NetWorkerSupport существует, и резервная копия «NetWorkerSupport_OLD» импортируется.

Таблица базы данных содержит содержимое исходной базы данных на момент резервного копирования:

Данные SQL восстанавливаются в системе и доступны для управления администратором базы данных SQL. После восстановления данных и дальнейшего извлечения данных с носителя резервного копирования не требуется, диск можно отсоединить от VMware. Временное хранилище данных NFS также можно отключить от VMware, а экспорт NFS в Data Domain — удалить. Эти действия по очистке подробно описаны в разделе Очистка после операций восстановления на сайте: NetWorker. Ручное монтирование диска сохранения ВМ Windows для процесса FLR без устройства vProxy