Compartir a través de


Funciones y vistas de administración dinámica (Transact-SQL)

Las funciones y vistas de administración dinámica devuelven información sobre el estado del servidor que se puede utilizar para controlar el estado de una instancia del servidor, para diagnosticar problemas y para optimizar el rendimiento.

Nota importanteImportante

Las funciones y vistas de administración dinámica devuelven datos sobre el estado interno de la implementación. Los esquemas y datos que ofrecen podrán variar en versiones futuras de SQL Server. Por lo tanto, es posible que las funciones y vistas de administración dinámica de las versiones futuras no sean compatibles con las funciones y vistas de administración dinámica en esta versión. Por ejemplo, en versiones futuras de SQL Server, Microsoft puede aumentar la definición de cualquier vista de administración dinámica y agregar columnas al final de la lista. Se recomienda no usar la sintaxis SELECT * FROM dynamic_management_view_name en código para producción, ya que el número de columnas devueltas podría cambiar y alterar la aplicación.

Hay dos tipos de funciones y vistas de administración dinámica:

  • Funciones y vistas de administración dinámica con ámbito en el servidor. Se requiere el permiso VIEW SERVER STATE en el servidor.

  • Funciones y vistas de administración dinámica con ámbito en la base de datos. Se requiere el permiso VIEW DATABASE STATE en la base de datos.

Consultar las vistas de administración dinámica

Puede hacer referencia a las vistas de administración dinámica en instrucciones Transact-SQL usando nombres formados por dos, tres o cuatro partes. Por otro lado, puede hacer referencia a las funciones de administración dinámica en instrucciones Transact-SQL usando nombres formados por dos o tres partes. No se puede hacer referencia a funciones ni vistas de administración dinámica en instrucciones Transact-SQL mediante nombres con una sola parte.

Todas las funciones y vistas de administración dinámica existen en el esquema sys y siguen la convención de nomenclatura siguiente: dm_*. Cuando utilice una función o vista de administración dinámica, debe agregar un prefijo al nombre de la función o vista mediante el esquema sys. Por ejemplo, para consultar la vista de administración dinámica dm_os_wait_stats, ejecute la consulta siguiente:

SELECT wait_type, wait_time_ms

FROM sys.dm_os_wait_stats;

GO

Permisos necesarios

Para ejecutar una consulta en una función o vista de administración dinámica, es necesario el permiso SELECT sobre el objeto y el permiso VIEW SERVER STATE o VIEW DATABASE STATE. Así podrá restringir de forma selectiva el acceso de un usuario o inicio de sesión a las funciones y vistas de administración dinámica. Para ello, cree primero el usuario en la base de datos master y, a continuación, deniéguele el permiso SELECT sobre las funciones o vistas de administración dinámica a las que no desea que tenga acceso. Después de esto, el usuario no podrá seleccionar ninguna de estas funciones o vistas de administración dinámica, sin tener en cuenta el contexto de la base de datos del usuario.

Nota

Dado que el permiso DENY tiene prioridad, si un usuario tiene concedido el permiso VIEW SERVER STATE, pero tiene denegado el permiso VIEW DATABASE STATE, el usuario podrá ver la información en el servidor, pero no en la base de datos.

En esta sección

Las funciones y vistas de administración dinámica están organizadas en las categorías siguientes.