En varias oportunidades me he encontrado frente a un servidor de SQL Server teniendo que realizar diversas tareas de administración o afinamiento. En ese momento comienzo a preguntarme que es lo que tengo adelante. Necesito respuesta a preguntas como ¿cuál es la versión o la edición? ¿cuanta memoria o CPUs tiene? ¿cómo se llama la instancia?
La mayoría de esa información la puedo obtener a través de Management Studio, pero implica hacer varios clics por diferentes opciones del sistema, lo cual puede consumir tiempo.
El siguiente script obtiene información en una sola consulta, utilizando funciones de metadatos y consultando vistas de metadatos, de modo que se puede obtener el detalle del servidor y la instancia en la que estamos trabajando en un solo paso.
Los campos que devuelve el script son:
Campo | Descripción |
---|---|
Nombre del Servidor | Es el nombre del equipo donde está instalado SQL Server |
Instancia | Indica si es Default o el nombre de la instancia instalada |
Número de Versión | Si es SQL 2000, 2005, etc. Indica si es32 o 64 bits |
Edición | Si es Workgroup, Standard, etc. |
Nivel de Producto | Si es RC, RTM o nivel de Service Pack |
Tipo de Instalación | Standalone o cluster |
CPUs Lógicos (Núcleos) | Número de núcleos disponible en el servidor (*) |
Ratio de Hyperthread | Ratio de hypertread del servidor |
CPUs Físicos | Número de procesadores físicos disponible en el servidor (*) |
Memoria Física (MB) | Cantidad de memoria física disponible en el servidor (*) |
Inicio del Servicio | Fecha y hora de inicio del servicio de SQL Server |
1 |
(*) Indica el valor disponible en el servidor físico. No es el valor asignado a la instancia |
A continuación el script, el cual ha sido dividido en dos consultas para facilitar la visualización en pantalla. Tener en cuenta que en el segundo SELECT hay un campo particular para la versión 2012, el cual se encuentra comentado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<span style="color: #0000ff;">SELECT</span> <span style="color: #ff00ff;">SERVERPROPERTY</span>(<span style="color: #ff0000;">'MachineName'</span>) <span style="color: #0000ff;">AS</span> [Nombre del Servidor], <span style="color: #ff00ff;">ISNULL</span>(<span style="color: #ff00ff;">SERVERPROPERTY</span>(<span style="color: #ff0000;">'InstanceName'</span>), <span style="color: #ff0000;">'Default'</span>) <span style="color: #0000ff;">AS</span> [Instancia], <span style="color: #ff00ff;">@@VERSION</span> <span style="color: #0000ff;">AS</span> [Número de Versión], <span style="color: #ff00ff;">SERVERPROPERTY</span>(<span style="color: #ff0000;">'Edition'</span>) <span style="color: #0000ff;">AS</span> [Edición], SERVERPROPERTY(<span style="color: #ff0000;">'ProductLevel'</span>) <span style="color: #0000ff;">AS</span> [Nivel de Producto] <span style="color: #0000ff;">GO</span> <span style="color: #0000ff;">SELECT</span> <span style="color: #0000ff;">CASE</span> <span style="color: #ff00ff;">SERVERPROPERTY</span>(<span style="color: #ff0000;">'IsClustered'</span>) <span style="color: #0000ff;">WHEN</span> 1 <span style="color: #0000ff;">THEN</span> <span style="color: #ff0000;">'CLUSTERED'</span> <span style="color: #0000ff;">ELSE</span> <span style="color: #ff0000;">'STANDALONE'</span> <span style="color: #0000ff;">END</span> <span style="color: #0000ff;">AS</span> [Tipo de Instalación], cpu_count <span style="color: #0000ff;">AS</span> [CPUs Lógicos (Núcleos)], hyperthread_ratio <span style="color: #0000ff;">AS</span> [Ratio de Hyperthread], cpu_count / hyperthread_ratio <span style="color: #0000ff;">AS</span> [CPUs Físicos], physical_memory_in_bytes / 1048576 <span style="color: #0000ff;">AS</span> [Memoria Física (MB)], <span style="color: #008000;">--2005,2008/R2</span> <span style="color: #008000;">--physical_memory_kb / 1024 AS [Memoria Física (MB)], --2012</span> sqlserver_start_time <span style="color: #0000ff;">AS</span> [Inicio del Servicio] <span style="color: #0000ff;">FROM</span> <span style="color: #339966;">sys.dm_os_sys_info</span> <span style="color: #0000ff;">GO</span> |
He ejecutado el script en dos instancias diferentes, obteniedo los sigientes resultados:
Ejemplo 1 (SQL 2008):
Ejemplo 2 (SQL 2012):
Encontrarán más scripts como este haciendo clic aquí