NVP-vProxy: Klient Data Protection Restore nie wyświetla kopii zapasowych maszyny wirtualnej SQL
Summary: Serwer vProxy NetWorker VMware Protection (NVP) służy do tworzenia kopii zapasowych maszyn wirtualnych (VM) Microsoft SQL. Środowisko składa się z wielu środowisk vCenter, a maszyna wirtualna SQL została skopiowana do innego systemu vCenter poza praktykami NetWorker. Przywracanie maszyn wirtualnych SQL jest wykonywane z poziomu klienta Data Protection Restore Client (DPRC). Kreator DPRC nie wyświetla kopii zapasowych SQL dla maszyny wirtualnej, nie jest zwracany żaden błąd. ...
Symptoms
- Dostęp do klienta Data Protection Restore Client (DPRC) można uzyskać z przeglądarki internetowej:
https://NetWorker_Server_Address:9090/flr - Opcje Administrator i Aplikacja zostaną wybrane, a użytkownik pomyślnie uwierzytelni się.
- Określane jest źródłowe vCenter i zakres czasu, maszyna wirtualna SQL jest wybrana, ale nie są wyświetlane żadne kopie zapasowe:
- Środowisko składa się z wielu serwerów vCenter. Maszyna wirtualna SQL wybrana do przywrócenia została skopiowana (lub zreplikowana) do nowego systemu vCenter. Maszyna wirtualna istnieje (lub istniała) w obu środowiskach vCenter. Użyta metoda replikacji była zewnętrzna w stosunku do NetWorker.
Cause
Maszyna wirtualna została zreplikowana przy użyciu metody, która spowodowała "skopiowanie" VMware Universally Unique Identifier (UUID). Baza danych nośników NetWorker zawiera ten sam identyfikator UUID w dwóch różnych systemach vCenter. Na przykład:
[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 używa interfejsu API REST do łączenia się z serwerem NetWorker i tworzenia listy kopii zapasowych. Używa globalnego żądania REST API GET do znalezienia maszyny wirtualnej przy użyciu global/vmware/vms?q=Uuid:UUID. Poniższy widok można zobaczyć na flr-server.log.
- Linux:
/nsr/authc/logs/flr-server.log - Windows (domyślnie):
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 nie może przedstawić kopii zapasowych, ponieważ konflikt występuje z powodu unikatowego identyfikatora pojawiającego się w wielu systemach vCenter. To samo wywołanie interfejsu API REST zwraca oba vCenters:
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
Przykład:
[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"
}
]
}
Nie jest to oczekiwane zachowanie. Nieodłącznym oczekiwaniem związanym z identyfikatorem UUID jest to, że jest on unikatowy. Podczas wykonywania zapytania o identyfikator UUID maszyny wirtualnej oczekiwane są tylko wyniki dla jednej maszyny wirtualnej w jednym vCenter.
Resolution
Nie można odzyskać danych z DPRC ze względu na konflikt UUID w środowiskach VMware. Aby obejść ten problem, zapoznaj się z sekcją Informacje dodatkowe .
Następujące kroki mogą poprawić zduplikowany identyfikator UUID; Nie oznacza to jednak, że istniejące dane kopii zapasowej są możliwe do odzyskania. Poniższa zmiana jest działaniem naprawczym dla kopii zapasowych utworzonych po zmianie i później. Po wygaśnięciu kopii zapasowych korzystających ze zduplikowanego identyfikatora UUID z NetWorker, interfejs użytkownika odzyskiwania poprawnie wyszukuje kopie zapasowe maszyny wirtualnej przy użyciu ich uniwersalnie unikatowego identyfikatora (UUID).
- W przypadku zduplikowanej maszyny wirtualnej usuń ją ze wszystkich grup ochrony NetWorker, w których obecnie znajduje się jej kopia zapasowa.
- Moc nowej maszyny wirtualnej w VMware.
- Wyrejestruj maszynę wirtualną z zasobów vCenter (wybierz opcję "Remove from Inventory"). Nie usuwaj maszyny wirtualnej.
- Ponownie zarejestruj maszynę wirtualną: Przejrzyj magazyn danych, kliknij prawym przyciskiem myszy
.vmxi wybierz opcję "Register VM". - Włącz maszynę wirtualną. Po wyświetleniu monitu przez vCenter wybierz opcję "I copied it". Wymusza to na vSphere wygenerowanie zupełnie nowego, unikalnego identyfikatora UUID systemu BIOS i instancji.
- Dodaj maszynę wirtualną z powrotem do grup ochrony, z których została usunięta w kroku 1.
Informacje na temat skutków zduplikowanego identyfikatora UUID można znaleźć w następującej dokumentacji VMware: Zmienianie lub zachowywanie identyfikatora UUID przeniesionej maszyny wirtualnej
Additional Information
.mdf i .ldf pliki są kopiowane z dysku do innej lokalizacji na maszynie wirtualnej i importowane do SQL Server Management Studio (SSMS).
Wymagania wstępne:
- Zestaw zapisów wymagany do przywracania musi być zestawem zapisu bazy danych, a nie zestawem zapisu
txnlogKopia zapasowa. Można to zidentyfikować za pomocą serwera NetWorkermminfo:
mminfo -avot -q vmname=SQL_VM-NAME
Przykład:
[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
Pakiet full backup to pełna kopia zapasowa bazy danych, w tym dysku maszyny wirtualnej (VMDK). Pakiet txnlog Kopia zapasowa zawiera tylko dzienniki transakcji i nie obejmuje baz danych.
- Kopia zapasowa maszyny wirtualnej musi znajdować się w Data Domain, jeśli znajduje się na innym typie nośnika (taśma, CloudBoost, AFTD), sklonuj kopię zapasową z taśmy do Data Domain dostępnego dla vCenter: NVP vProxy: Jak ręcznie sklonować zestaw zapisu maszyny wirtualnej z urządzenia innego niż Data Domain do urządzenia do klonowania Data Domain
- Proces tworzenia eksportu NFS i instalowania go w VMware i docelowej maszynie wirtualnej został udokumentowany w następującym artykule: NetWorker: Ręczne montowanie dysku z zestawem maszyn wirtualnych z systemem Windows dla procesu FLR bez urządzenia vProxy
Odzyskiwanie danych:
Po wykonaniu czynności wstępnych dysk maszyny wirtualnej zawierający dane SQL powinien zostać zamontowany na maszynie wirtualnej SQL z losową literą dysku. Wykonaj następujące czynności:
- Kopiowanie bazy danych SQL
.mdfi.ldfpliki z podłączonego dysku do innej lokalizacji na maszynie wirtualnej. Na przykład następujące bazy danych znajdują się na podłączonym dysku:
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
- Upewnij się, że pliki i foldery nie są "tylko do odczytu". Kliknij prawym przyciskiem myszy ścieżkę folderu do danych i upewnij się, że opcja "Read Only" nie jest zaznaczona. Pliki nie mogą mieć również wybranej opcji "Tylko do odczytu":
- Zaloguj się do programu SQL Server Management Studio (SSMS) przy użyciu konta użytkownika administracyjnego.
- Kliknij prawym przyciskiem myszy pozycję Bazy danych, a następnie kliknij przycisk Dołącz.
- W oknie Bazy danych do dołączenia kliknij przycisk Dodaj. Przejdź do lokalizacji, w której
.mdfPlik został skopiowany do i wybierz go. - Jeśli serwer SQL zawiera bazę danych o takiej samej nazwie jak oryginalna baza danych, należy zmienić nazwę importowanej bazy danych. Zaznacz pole Dołącz jako i zmień nazwę bazy danych, na przykład dodaj
_OLD.

- Kliknij przycisk OK, baza danych zostanie zaimportowana do programu SQL Server Management Studio.
OSTRZEŻENIE: Wszelkie błędy importu oparte na uprawnieniach lub systemie operacyjnym muszą zostać rozwiązane przez administratora systemu lub bazy danych.
W tym przykładzie oryginalna baza danych NetWorkerSupport istnieje i importowana jest kopia zapasowa "NetWorkerSupport_OLD".

Tabela bazy danych zawiera zawartość oryginalnej bazy danych w momencie tworzenia kopii zapasowej:

Dane SQL są odzyskiwane do systemu i mogą być zarządzane przez administratora bazy danych SQL. Po odzyskaniu danych, gdy nie są wymagane żadne inne dane z nośnika kopii zapasowej, dysk można odłączyć od VMware. Można również odłączyć tymczasowy magazyn danych NFS od VMware, a eksport NFS w Data Domain można usunąć. Te kroki czyszczenia zostały opisane w sekcji Czyszczenie po operacjach przywracania : NetWorker: Ręczne montowanie dysku z zestawem maszyn wirtualnych z systemem Windows dla procesu FLR bez urządzenia vProxy