Avamar: El respaldo o la navegación de SQL fallan con el mensaje "avsql Error <15760>: No hay destinos después de la expansión"
Summary: La operación de navegación y respaldo basado en Avamar SQL falla para clientes de clúster y servidor independiente de SQL. La navegación por la base de datos o el respaldo de Avamar SQL falla con el mensaje "avsql Error <15760>: No hay objetivos después de la expansión". Esto se debe a la falta de funciones de sysadmin, problemas de conexión, problemas de conexión de los servicios del Instrumental de administración de Windows (WMI), problemas de comunicación del puerto Avamar o archivos dll de SQL Server Management Objects (SMO) faltantes. ...
Symptoms
Hay un problema con el respaldo de Avamar SQL y la navegación de bases de datos en entornos de clúster e independientes de SQL.
Casos
El problema de respaldo y navegación se realiza mediante el plug-in de avsql desde la AUI o la GUI de Avamar Administrator Console.
Códigos de error de respaldo: avsql Error <15760>: ¡No hay objetivos después de la expansión!
Cuando este error está presente en los respaldos, indica que un problema de navegación y la información de la base de datos no se están obteniendo mediante avsql servicios.
La navegación por la base de datos o el respaldo de Avamar SQL (avsql) falla con "avsql Error <15760>: No targets after expansion!"
La operación de búsqueda y respaldo basado en Avsql falla para clientes de clúster y servidor independiente de SQL.
Cause
- Faltan funciones sysadmin para la cuenta de usuario o el usuario de Active Directory (SQL 2012 y versiones superiores) que se utilizan en los servicios de agente de respaldo.
- Problema de conexión entre SQL SMO y el plug-in de Avamar SQL.
- Problema de conexión de los servicios WMI entre SQL Server y los servicios de Windows.
- Los puertos de comunicación de Avamar no son accesibles.
- Faltan archivos dll de SMO u otros archivos necesarios que funcionan para obtener la información de la base de datos.
Resolution
SQL independientes
- Faltan funciones de sysadmin para la cuenta de usuario utilizada en los servicios de agente de respaldo. Consulte el artículo de la base de conocimientos sobre cómo asignar funciones de sysadmin:
- Configure permisos de control completo para la cuenta de AD utilizada para SQL Server 2012 y versiones posteriores. Hay información más detallada en la página 11 de la guía del usuario de Avamar SQL V19.9
- Faltan los archivos SMO necesarios para los servicios de SQL Server.
- La versión instalada de SMO se puede verificar desde el programa y las características del panel>>de control. Si falta la versión de SMO relacionada con la versión de SQL Server, descárguela e instálela desde el sitio de Microsoft
- Para descargar el paquete SMO para varias versiones de SQL:
- Descarga de SMO/CLR de SQL 2008 y 2008 R2:
- Descarga de SMO/CLR de SQL 2012 R2:
- Descarga de SMO/CLR de SQL 2014:
- Descarga de SMO/CLR de SQL 2016:
- Microsoft distribuye SMO en SQL 2017 y versiones posteriores como "Microsoft.SqlServer.SqlManagementObjects" y se actualiza a través de NUGet.
- Instrucciones de instalación del paquete Nuget:
- Para obtener más información sobre cómo instalar el paquete Nuget, revise lo siguiente:
- Los servicios de Avamar SQL (avsql) no se pueden conectar a los archivos SMO de SQL presentes en SQL debido a un entorno mixto
- Artículo de la base de conocimientos a continuación: KB 000051925 El plug-in de Avamar SQL no pudo navegar por la instancia de SQL en un entorno de SQL mixto
- Ejecute el siguiente comando para verificar si se está navegando por la instancia de SQL.
avsql.exe --debug --operation=browse --verbose
-
- La siguiente sintaxis de marca --usesmoversion="SMO version" se puede utilizar para verificar qué marca se puede utilizar para permitir la conexión forzada entre los servicios de SMO y avsql:
- Ejemplo para SQL 2016:
avsql.exe --debug --operation=browse --verbose --usesmoversion=13
- Ejecute el siguiente comando para ver si se están examinando las bases de datos SQL:
avsql --operation=browse (local)
- Pruebe la conectividad entre SMO y SQL Server mediante el siguiente artículo de la base de conocimientos:
- KB 000156447 Avamar: cómo probar la conectividad entre SMO y SQL Server.
- Se pueden seguir los siguientes pasos para probar la conectividad mediante los comandos de PowerShell:
- Escritorio remoto al cliente SQL.
- Abra Powershell.
- Ingrese la siguiente declaración:
[reflection.assembly]::LoadWithPartialName("Microsoft.SQLServer.SMO")
-
-
- Ingrese la siguiente declaración:
-
$SQLServer = new-object ("Microsoft.SQLServer.Management.SMO.Server")
-
-
- Ingrese la siguiente declaración:
-
foreach($SQLDatabase in $SQLServer.databases) {$SQLDatabase.name}
-
-
- Esto da como resultado una lista de las bases de datos en el cliente. Esto confirma que el SMO se haya cargado correctamente y que se esté conectando a SQL Server. Si se produce un error, esto se debe resolver antes de que Avamar pueda tener éxito.
-
- Revise las salidas de cmd de avsql.exe --debug --operation=browse --verbose y busque errores relacionados con los servicios de SQL:
- Si se encuentra un error de conexión WMI, vaya a Inicio de sesión en la herramienta de configuración de SQL.
- Si la herramienta de configuración de SQL no se abre con el siguiente mensaje "No se puede conectar al proveedor de WMI. Si se deniega el permiso o no se puede acceder al servidor, comuníquese con los administradores de SQL para resolver el problema.
- Según la versión de bits de SQL Server, la siguiente marca se puede probar primero con la navegación basada en la CLI y, posteriormente, agregarse a avsql.cmd si es necesario para permitir la operación de navegación:
- Ejemplo:
avsql.exe --debug --operation=browse verbose --provider-architecture=64bit
- Asegúrese de que los servicios del navegador SQL y las canalizaciones con nombre estén habilitados en la herramienta de configuración de SQL, el protocolo de red de SQL para la instancia de SQL Server específica.
- Asegúrese de que los archivos de smo.dll necesarios estén presentes en c:\programfiles\avs\bin en la versión del cliente. Verifique la versión de SQL Server en uso para comprobar la versión necesaria del archivo smo.dll.
- Clúster activo/pasivo o Always-On de SQL
- Inicie sesión en el nodo primario o propietario de la configuración del clúster
- Los pasos del 1 al 9 de la solución de problemas del servidor independiente de SQL se pueden revisar y seguir desde el nodo propietario del clúster.
- El comando que se utiliza para realizar una navegación basada en CLI a fin de obtener información de la instancia de SQL:
- Clúster activo/pasivo o Always-On de SQL
avsql --operation=browse --sqlserver=SQLCluster_name --hostnamesql=SQLCluster_name
-
-
- Garantice la comunicación entre la IP del cliente del clúster y los puertos de navegación de Avamar 28002 y 28003 (o 30002 y 30003)
- Si se sospecha que hay un problema de comunicación entre el cliente del clúster de SQL y el cliente de escucha de SQL, agregue la siguiente marca en avsql.cmd en la ubicación de var compartida:
-
--sqlserver=listenerIP,listenerPortnumber
-
- Nota: Los detalles anteriores están presentes en la herramienta SQL Studio, la instancia >>>>de SQL de alta disponibilidad>>, el cliente de escucha>>del grupo de disponibilidad y haga clic con el botón secundario para ver las propiedades.
-
-
- Agregue marcas de nodo de clúster en avsql.cmd archivo ubicado en ubicación var compartida para especificar servidores SQL individuales para errores de comunicación "No se pudo conectar al cliente remoto '<IP_ADDRESS>', código de error: 2. Asegúrese de que el agente de respaldo remoto esté en ejecución:
-
--clusternode=<SQL_node_name>(<IP_ADDRESS>)
-
-
- Revise el puerto de paginación utilizado para el cliente del clúster desde la política>> de navegación>>de la GUI>>de Avamar Seleccione el cliente y edítelo.
- Agregue 280002/28003 y, a continuación, desactive el cliente, cambie los parámetros de inicio mencionados a continuación y reactive el cliente del clúster.
- Reemplace --disable-gui y agregue --listenport=28002 o 28003 en los parámetros de inicio del clúster que se encuentran en la herramienta>>de clúster de conmutación por error Seleccione la función utilizada>> Haga clic con el botón secundario en las propiedades de los servicios de agente de respaldo para el clúster.
- Ejemplo:
- Antes de los cambios:
--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
- Después de los cambios:
--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
- Antes de los cambios:
- La siguiente marca se puede agregar en avsql.cmd en la ubicación var compartida para enumerar las bases de datos SQL en el nivel de nodo:
--show_db_in_availability_group=true
- Revise el puerto de paginación utilizado para el cliente del clúster desde la política>> de navegación>>de la GUI>>de Avamar Seleccione el cliente y edítelo.
-