UTNianos

Versión completa: SQL - Como obtener el tamaño de todos los servidores
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hago una consulta que no se si es posible,
En el trabajo tenemos distintos servidores (Producción, Desarrollo, Test).
Cada uno de ellos con varias bases de datos.
Lo que quiero es crear un SP que me tire algo como lo siguiente:
Produccion - BD1 - XXGB
Produccion - BD2 - XXGB
Produccion - BD3 - XXGB
Desarrollo - BD1 - XXGB
Desarrollo - BD2 - XXGB
Test - BD1 - XXGB

Lo que hago es lo siguiente:
1-Con sp_linkedservers obtengo todos los nombres de los servidores de la columna 'srv_name'

2-De cada servidor obtengo todas sus BD de la siguiente forma:
select name from '@servername'+.master.dbo.sysdatabase where databasepropertyex (name,'status') <> offline

3-Ahora viene el problema, puedo obtener el tamaño de las bases a las que estoy conectado mediante:
'use ['@dbaname'] DBCC SHOWFILESTATS'

EL PROBLEMA: si estoy conectado por ejemplo en producción, no se como usar el DBCC SHOWFILESTATS para obtener el tamaño de las bases de los otros servidores (desarrollo y test).
Alguien sabe como hacerlo ? o si hay otra forma de obtener los datos que estoy buscando.

Gracias.
No podes crear una funcion en el servidor externo que tire el shofilestats intermante y llamarlo desde el tuyo para que te devuelva los datos?
si, exacto eso es lo que quiero ebric.

Lo probé en un sql server que tengo en casa así:
Exec [servidor].[base].dbo.sp_executesql N'dbcc showfilestats'

y funciona. Esperemos que en el trabajo también funcione.

Muchas Gracias!!!!
URLs de referencia