Avamar: Il backup o la ricerca di SQL ha esito negativo con "avsql Error <15760>: Nessun obiettivo dopo l'espansione"
Summary: L'operazione di backup e ricerca basata su SQL di Avamar ha esito negativo per i client cluster e server SQL standalone. Il backup SQL di Avamar o la navigazione nel database non riesce con errore "avsql Error" <15760>: Nessun obiettivo dopo l'espansione." Ciò è dovuto alla mancanza di ruoli sysadmin, a problemi di connessione, a problemi di connessione dei servizi WMI (Strumentazione gestione Windows), a problemi di comunicazione con le porte Avamar o a file DLL di SQL Server Management Object (SMO) mancanti. ...
Symptoms
Si verifica un problema con il backup SQL Avamar e la navigazione nel database in ambienti standalone e cluster SQL.
Scenario del caso
Eseguire il backup e la navigazione del problema utilizzando il plug-in avsql dalla GUI di Avamar Administrator Console o da AUI.
Codici di errore di backup: avsql Error <15760>: Nessun bersaglio dopo l'espansione!
Quando questo errore è presente nei backup, indica che un problema di ricerca e le informazioni del database non vengono recuperate utilizzando il comando avsql servizi.
Il backup di Avamar SQL (avsql) o la navigazione del database non riesce con "avsql Error <15760>: No targets after expansion!"
L'operazione di backup e ricerca basata su Avsql ha esito negativo per i client cluster e server standalone SQL.
Cause
- Ruoli sysadmin mancanti per l'account utente o l'utente Active Directory (SQL 2012 e versioni successive) utilizzato nei servizi dell'agent di backup.
- Problema di connessione tra SQL SMO e il plug-in SQL Avamar.
- Problema di connessione dei servizi WMI tra SQL Server e i servizi Windows.
- Porte di comunicazione Avamar non accessibili.
- File SMO dll mancanti o altri file necessari per recuperare le informazioni del database.
Resolution
Server standalone SQL
- Ruoli sysadmin mancanti per l'account utente utilizzato nei servizi dell'agent di backup. Consultare l'articolo della Knowledge Base su come assegnare i ruoli sysadmin:
- Configurare le autorizzazioni di controllo completo per l'account AD utilizzato per SQL Server 2012 e versioni successive. Informazioni più dettagliate sono disponibili a pagina 11 della guida utente V19.9 di Avamar SQL
- File SMO necessari mancanti per i servizi SQL Server.
- La versione installata di SMO può essere verificata dal programma e dalle funzionalità del pannello>>di controllo. Se manca la versione di SMO relativa alla versione di SQL Server, scaricarla e installarla dal sito Microsoft
- Per scaricare il pacchetto SMO per varie versioni di SQL
- Download di SMO/CLR SQL 2008 e 2008 R2:
- Download di SQL 2012 R2 SMO/CLR:
- Download di SQL 2014 SMO/CLR:
- Download di SQL 2016 SMO/CLR:
- SQL 2017 e versioni successive SMO vengono distribuiti da Microsoft, come "Microsoft.SqlServer.SqlManagementObjects" e vengono aggiornati tramite NUGet.
- Istruzioni per l'installazione del pacchetto Nuget:
- Per altre informazioni su come installare il pacchetto NuGet, esaminare:
- I servizi Avamar SQL (avsql) non sono in grado di connettersi ai file di SQL SMO presenti su SQL a causa di un ambiente misto
- Articolo della Knowledge Base a seguire: Il plug-in Avamar SQL di 000051925 della Knowledge Base non è riuscito a sfogliare l'istanza SQL in un ambiente SQL misto
- Eseguire il comando riportato di seguito per verificare se è in corso l'esplorazione dell'istanza SQL.
avsql.exe --debug --operation=browse --verbose
-
- È possibile utilizzare la seguente sintassi del flag --usesmoversion="SMO version" per verificare quale flag può essere utilizzato per consentire di forzare la connessione tra i servizi SMO e avsql:
- Esempio per SQL 2016:
avsql.exe --debug --operation=browse --verbose --usesmoversion=13
- Eseguire il comando seguente per verificare se si stanno esplorando i database SQL:
avsql --operation=browse (local)
- Testare la connettività tra SMO e SQL Server utilizzando l'articolo della KB riportato di seguito:
- KB 000156447 Avamar - Come testare la connettività tra SMO e SQL Server.
- È possibile seguire la procedura riportata di seguito per testare la connettività utilizzando i comandi Powershell:
- Desktop remoto sul client SQL.
- Aprire PowerShell.
- Immettere la seguente istruzione:
[reflection.assembly]::LoadWithPartialName("Microsoft.SQLServer.SMO")
-
-
- Immettere la seguente istruzione:
-
$SQLServer = new-object ("Microsoft.SQLServer.Management.SMO.Server")
-
-
- Immettere la seguente istruzione:
-
foreach($SQLDatabase in $SQLServer.databases) {$SQLDatabase.name}
-
-
- Il risultato è un elenco dei database sul client. Ciò conferma che SMO è caricato correttamente e si sta connettendo a SQL Server. Se genera un errore, è necessario risolverlo prima che Avamar possa avere esito positivo.
-
- Esaminare gli output cmd di avsql.exe --debug --operation=browse --verbose e cercare gli errori relativi ai servizi SQL:
- Se viene rilevato un errore di connessione WMI, accedere allo strumento di configurazione SQL.
- Se lo strumento di configurazione SQL non si apre con il seguente messaggio: "Impossibile connettersi al provider WMI. Se l'autorizzazione viene negata o il server non è raggiungibile, coinvolgere gli amministratori SQL per risolvere il problema.
- A seconda della versione bit di SQL Server, il flag riportato di seguito può essere prima testato con la ricerca basata su CLI e successivamente aggiunto a avsql.cmd se necessario per consentire l'operazione di ricerca:
- Esempio:
avsql.exe --debug --operation=browse verbose --provider-architecture=64bit
- Assicurarsi che i servizi del browser SQL e le named pipe siano abilitati nello strumento di configurazione SQL, protocollo di rete SQL per la particolare istanza di SQL Server.
- Assicurarsi che i file smo.dll richiesti siano presenti in c:\programfiles\avs\bin nella versione client. Verificare la versione di SQL Server in uso per verificare la versione richiesta del file di smo.dll.
- Cluster SQL attivo/passivo o Always-On
- Accedere al nodo primario o proprietario della configurazione cluster
- I passaggi da 1 a 9 della risoluzione dei problemi del server standalone SQL possono essere esaminati e seguiti dal nodo proprietario del cluster.
- Il comando utilizzato per eseguire la navigazione basata su CLI per recuperare le informazioni sull'istanza SQL:
- Cluster SQL attivo/passivo o Always-On
avsql --operation=browse --sqlserver=SQLCluster_name --hostnamesql=SQLCluster_name
-
-
- Garantire la comunicazione tra l'IP del client cluster e le porte di navigazione Avamar 28002 e 28003 (o 30002 e 30003)
- Se si sospetta un problema di comunicazione tra il client cluster SQL e il listener SQL, passare ad aggiungere il seguente flag in avsql.cmd sotto il percorso var condiviso:
-
--sqlserver=listenerIP,listenerPortnumber
-
- Nota: I dettagli di cui sopra sono presenti nello strumento >>SQL Studio, nell'istanza>>SQL ad alta disponibilità>>, nel listener del listener>>del gruppo di disponibilità e cliccare con il pulsante destro del mouse per le proprietà.
-
-
- Aggiungere flag dei nodi del cluster in avsql.cmd file situato nella posizione var condivisa per specificare i singoli SQL Server per gli errori di comunicazione "Unable to connect to the remote client '<IP_ADDRESS>", error code: 2. Accertarsi che l'agent di backup remoto sia in esecuzione:
-
--clusternode=<SQL_node_name>(<IP_ADDRESS>)
-
-
- Esaminare la porta di paging utilizzata per il client cluster dalla GUI>>>> di Avamar Policy di navigazione>>Selezionare il client e modificarlo.
- Aggiungere 280002/28003, quindi disattivare il client, modificare i parametri di avvio indicati di seguito e riattivare il client cluster.
- Sostituire --disable-gui e aggiungere --listenport=28002 o 28003 nei parametri di avvio del cluster disponibili in Failover cluster tool>>Selezionare il ruolo utilizzato>> Cliccare con il pulsante destro del mouse sulle proprietà dei servizi dell'agent di backup per il cluster.
- Esempio:
- Prima delle modifiche:
--service --mcsaddr=coeavr01.coe.int --mcsport=28001 --dpndomain=clients --vardir="E:\Program Files\Backup Agents for Cluster Groups\COEWINFILE\var" --logfile="E:\ProgramFiles\Backup Agents for Cluster Groups\COEWINFILE\var\avagent.log" --sysdir="E:\Program Files\Backup Agents for Cluster Groups\COEWINFILE\etc" --netbind=. --disablegui=true --pin_include=windows.pin,sql.pin
- Dopo le modifiche:
--service --mcsaddr=coeavr01.coe.int --mcsport=28001 --dpndomain=clients --vardir="E:\Program Files\Backup Agents for Cluster Groups\COEWINFILE\var" --logfile="E:\Program Files\Backup Agents for Cluster Groups\COEWINFILE\var\avagent.log" --sysdir="E:\Program Files\Backup Agents for Cluster Groups\COEWINFILE\etc" --netbind=. --listenport=28002 --pin_include=windows.pin,sql.pin
- Prima delle modifiche:
- Il flag seguente può essere aggiunto in avsql.cmd sotto la posizione var condivisa per elencare i database SQL a livello di nodo:
--show_db_in_availability_group=true
- Esaminare la porta di paging utilizzata per il client cluster dalla GUI>>>> di Avamar Policy di navigazione>>Selezionare il client e modificarlo.
-