Solucionar problemas de la Utilidad de SQL Server

Se pueden citar como ejemplos de solución de problemas de la utilidad de SQL Server la resolución de una operación que no ha podido inscribir una instancia de SQL Server con un UCP, la resolución de un error de recopilación de datos que crea iconos deshabilitados en la vista de lista de instancias administradas de un UCP, la mitigación de cuellos de botella de rendimiento o la resolución de problemas de mantenimiento de recursos. Para obtener más información sobre cómo solucionar los problemas de mantenimiento de recursos identificados por un UCP de SQL Server, vea Solucionar problemas de estado de recursos de SQL Server (Utilidad de SQL Server)..

Error de una operación de inscripción de una instancia de SQL Server en una Utilidad de SQL Server

Si se conecta con la instancia de SQL Server para inscribirse mediante la Autenticación de SQL Server, y especifica una cuenta de proxy que pertenece a un dominio de Active Directory que no es el dominio en el que está el UCP, la validación de la instancia será correcta, pero se produce un error en la operación de inscripción con un mensaje de error parecido a este:

Se ha producido una excepción al ejecutar una instrucción o lote Transact-SQL. (Microsoft.SqlServer.ConnectionInfo)

Información adicional: no se pudo obtener información sobre el grupo o usuario '<nombreDeDominio\nombreDeCuenta>' de Windows NT, código de error 0x5. (Microsoft SQL Server, Error: 15404)

Este problema sucede en el siguiente escenario de ejemplo:

  1. El UCP es miembro de "Domain_1."

  2. Existe una relación de confianza de dominio unidireccional: es decir, "Domain_2" no confía en "Domain_1", pero "Domain_1" confía en "Domain_2."

  3. La instancia de SQL Server para inscribirse en la utilidad de SQL Server también es miembro de "Domain_1."

  4. Durante la operación de inscripción, conéctese a la instancia de SQL Server para inscribirse usando "sa". Especifique una cuenta de proxy de "Domain_2."

  5. La validación se realiza correctamente, pero se produce un error de inscripción.

La solución para este problema, usando el ejemplo anterior, es conectar a la instancia de SQL Server para inscribirse en la utilidad de SQL Server usando "sa" y proporcionar una cuenta de proxy de "Domain_1."

Error de validación de WMI

Si WMI no se configura correctamente en una instancia de SQL Server, las operaciones de creación de UCP y de inscripción de instancia administrada muestran una advertencia, pero no se bloquea la operación. Además, si cambia la configuración de la cuenta del Agente SQL Server de forma que que Agente SQL Server no tenga permiso en las clases WMI necesarias, la recopilación de datos en la instancia administrada afectada de SQL Server no se carga en el UCP. Esto genera iconos deshabilitados en el UCP.

Un error de recopilación de datos genera iconos de estado deshabilitados en la vista de lista del UCP para las instancias administradas de SQL Server afectadas. El historial de trabajos en la instancia administrada de SQL Server muestra que sysutility_mi_collect_and_upload produce un error en el paso 2 (almacenaje temporal de los datos recopilados del script de PowerShell).

Los mensajes de error simplificados son:

La ejecución del comando se detuvo porque la variable del shell "ErrorActionPreference" esa establecida en Stop: Access denied.

ERROR: <Fecha y hora (MM/DD/AAAA HH:MM:SS)>: excepción al recopilar propiedades de la CPU. Se podría haber producido un error en una consulta WMI. ADVERTENCIA.

Para resolver este problema, compruebe la configuración siguiente:

  • En Windows Server 2003, el servicio Agente SQL Server debe formar parte del grupo WMI en la instancia administrada de SQL Server.

  • El servicio WMI/IP debe estar habilitado y configurado en la instancia administrada de SQL Server.

  • El repositorio WMI podría estar dañado en la instancia administrada de SQL Server.

  • La biblioteca de rendimiento podría faltar o estar dañada en la instancia administrada de SQL Server.

Para comprobar que la instancia especificada de SQL Server está configurada correctamente para notificar datos al UCP, compruebe que las siguientes clases están disponibles en la instancia especificada de SQL Server y que son accesibles para la cuenta del servicio Agente SQL Server:

  • Win32_MountPoint

  • Win32_PerfRawData_PerfProc_Process

  • Win32_PerfRawData_PerfOS_Processor

  • Win32_Processor

  • Win32_Volume

  • Win32_LogicalDisk

Puede usar el cmdlet Get-WmiObject de PowerShell en cada una de las clases para comprobar que todas son accesibles. Ejecute los siguientes cmdlets en la instancia administrada de SQL Server:

Get-WmiObject Win32_MountPoint -ErrorAction Stop | Out-Null
Get-WmiObject Win32_PerfRawData_PerfProc_Process -ErrorAction Stop| Out-Null
Get-WmiObject Win32_PerfRawData_PerfOS_Processor -ErrorAction Stop | Out-Null
Get-WmiObject Win32_Processor -ErrorAction Stop | Out-Null
Get-WmiObject Win32_Volume -ErrorAction Stop | Out-Null
Get-WmiObject Win32_LogicalDisk -ErrorAction Stop | Out-Null

Para obtener más información sobre la solución de problemas de WMI, vea Solucionar problemas de WMI. Observe que las consultas de estas operaciones de la Utilidad de SQL Server se ejecutan localmente, de modo que el DCOM y el contenido de la solución de problemas remota no se deben tener en cuenta.

Error en la recopilación de datos

Si los eventos de recopilación de datos de la Utilidad de SQL Server producen un error, tenga en cuenta las posibilidades siguientes:

  • No cambie las propiedades del conjunto de recopilación "Información de la utilidad" en una instancia administrada de SQL Server y no active ni desactive manualmente la recopilación de datos, ya que la recopilación de datos la controla un trabajo del agente de la Utilidad.

  • Error de validación de WMI o validación de WMI no compatible. Para obtener más información, vea la sección sobre error de validación de WMI de este tema.

  • Actualice los datos en la vista de lista de la instancia administrada, ya que los datos en los puntos de vista de la utilidad de SQL Server no se actualizan automáticamente. Para actualizar los datos, haga clic con el botón secundario en el nodo Instancias administradas del panel Navegación del Explorador de la utilidad, a continuación, seleccione Actualizar o haga clic con el botón secundario del mouse en el nombre de instancia SQL Server en la vista de lista y seleccione Actualizar. Tenga en cuenta que una vez se haya inscrito una instancia de SQL Server con un UCP, pueden transcurrir hasta 30 minutos hasta que los datos aparezcan por vez primera en el panel y puntos de vista en el panel de contenido del explorador de la utilidad.

  • Use el Administrador de configuración de SQL Server para comprobar que la instancia de SQL Server se está ejecutando.

  • Si se produjo un error de recopilación de datos o de carga de datos debido a problemas de tiempo de espera, actualice la función dbo.fn_sysutility_mi_get_collect_script() de la base de datos MSDB. Especialmente, en la función "Invoke-BulkCopyCommand()" agregue una línea:

    $bulkCopy.BulkCopyTimeout=180
    

    El valor predeterminado del tiempo de espera es de 30 segundos.

  • Si la instancia de SQL Server no se agrupa, compruebe que el servicio del Agente SQL Server se está ejecutando y que el servicio se establece para que se inicie de forma automática en el UCP y en la instancia administrada de SQL Server.

  • Compruebe que se usa una cuenta válida para ejecutar la recopilación de datos en la instancia administrada de SQL Server. Por ejemplo, la contraseña puede haber expirado. Si la contraseña del proxy ha expirado, actualice las credenciales de la contraseña en SSMS, tal como sigue:

    1. En el Explorador de objetos de SSMS, expanda el nodo Seguridad y el nodo Credenciales.

    2. Haga clic con el botón secundario en UtilityAgentProxyCredential_<GUID> y seleccione Propiedades.

    3. En el cuadro de diálogo de las propiedades de credencial, actualice las credenciales según sea necesario para la credencial UtilityAgentProxyCredential_<GUID>.

    4. Haga clic en Aceptar para confirmar el cambio.

  • Se debe habilitar TCP/IP en el UCP y en la instancia administrada de SQL Server. Habilite TCP/IP a través del Administrador de configuración de SQL Server.

  • Se debería iniciar el servicio SQL Server Browser en el UCP y se debería configurar para que se iniciara automáticamente. Si su organización impide el uso del servicio SQL Server Browser, siga los siguientes pasos para permitir que a una instancia administrada de SQL Server se conecte al UCP:

    1. En la barra de tareas de Windows de la instancia administrada de SQL Server, haga clic en Iniciar y, a continuación, haga clic en Ejecutar....

    2. Escriba "cliconfg.exe" en el espacio proporcionado y, a continuación, haga clic en Aceptar.

    3. Si se le solicita que permita el inicio del ejecutable de la utilidad de configuración del cliente SQL ("SQL Client Configuration Utility EXE"), haga clic en "Continuar".

    4. En el cuadro de diálogo Herramienta de cliente de red de SQL Server, seleccione la pestaña Alias y, a continuación, haga clic en Agregar....

    5. En el cuadro de diálogo Agregar configuración de biblioteca de red:

    6. Especifique TCP/IP de la lista de bibliotecas de red.

    7. Especifique el nombreDeEquipo\nombreDeInstancia del UCP en el cuadro de texto Alias del servidor.

    8. Especifique el nombreDeEquipo del UCP en el cuadro de texto Alias del servidor.

    9. Desactive la casilla Determinar el puerto dinámicamente.

    10. Especifique el número de puerto que el UCP enumera en el cuadro de texto Número de puerto.

    11. Haga clic en Aceptar para guardar los cambios.

    12. Repita estos pasos para cada instancia administrada de SQL Server que se conecte a un UCP donde no se habilite el servicio SQL Server Browser.

  • Asegúrese de que las instancias administradas de SQL Server están conectadas a la red.

  • Si hay bases de datos con el mismo nombre pero con una configuración de distinción entre mayúsculas y minúsculas diferente en una instancia administrada de SQL Server, puede que la identificación entre la base de datos y sus puntos de vista sea incorrecta, y se produzca un error de recopilación de datos. Por ejemplo, es posible que una base de datos denominada "MYDATABASE" muestre estados de mantenimiento para una base de datos con el nombre "MyDatabase". En esta situación no se producirán errores. Un error de recopilación de datos también puede ser consecuencia de la disparidad entre mayúsculas y minúsculas en otros objetos mostrados en el UCP, como el archivo de base de datos y los nombres de grupos de archivos.

  • Si una instancia administrada de SQL Server se hospeda en un equipo con Windows Server 2003, es preciso que la cuenta del servicio del Agente SQL Server pertenezca al grupo Usuarios del monitor del sistema o al grupo local Administradores. De lo contrario, se producirá un error en la recopilación de datos con un error de denegación del acceso. Para agregar un servicio del Agente SQL Server al grupo de seguridad Usuarios del monitor del sistema, siga los pasos siguientes:

    1. Abra Administración de equipos, expanda Usuarios y grupos locales y haga clic en Grupos.

    2. Haga clic con el botón secundario en Usuarios del monitor del sistema y seleccione Agregar a grupo.

    3. Haga clic en Agregar.

    4. Escriba la cuenta que está ejecutando el servicio del Agente SQL Server y haga clic en Aceptar.

    5. Si la instancia de SQL Server ya se ha inscrito con el UCP antes de agregar al usuario a este grupo, reinicie el servicio del Agente SQL Server.

Vea también

Conceptos

Características y tareas de la utilidad de SQL Server

Solucionar problemas de estado de recursos de SQL Server (Utilidad de SQL Server).