¿Hay una consulta T-SQL que pueda ejecutar contra una base de datos que proporcionará una lista de todas las tablas en esa base de datos y su disco actual? uso del espacio? Sé que puedo verlo en SSMS con el cuadro de diálogo "propiedades", y sé cómo usar el sproc sp_spaceused para verlo una tabla a la vez, pero me gustaría evaluar el uso de espacio en disco de todas mis tablas, ordenado por el uso de espacio de disco más alto al más bajo. Tenemos que reducir significativamente el tamaño de nuestra base de datos, por lo que me gustaría ver qué tablas son las más ofensivas.Cómo recuperar un conjunto de resultados de todas las tablas en la base de datos con su espacio de disco
Respuesta
create table #Temp (
name nvarchar(128),
[rows] char(11),
reserved varchar(18),
data varchar(18),
index_size varchar(18),
unused varchar(18)
)
insert into #Temp
exec sp_msforeachtable 'sp_spaceused ''?'''
select * from #Temp order by cast(replace(reserved,' kb','') as int) desc
¿Echó un vistazo al Disk Usage Summary Report?
"Para ver el informe, expanda la carpeta Administración, haga clic en colección de datos, seleccione Informes, seleccione Gestión de almacenamiento de datos, y luego haga clic en Disco Resumen de uso"
El uso de disco informe conjunto de colecciones proporciona una descripción general del espacio de disco utilizado para todas las bases de datos en la instancia de SQL Server, y tendencias de crecimiento para los datos y archivos de registro para cada una de estas bases de datos.
- La tabla de resumen muestra el tamaño de inicio (en megabytes) y el tamaño actual de todas las bases de datos instaladas en el servidor que el recopilador de datos está monitoreando.
- La información de tendencia y crecimiento promedio se muestra gráficamente y numéricamente para los archivos de datos y de registro.
sys.allocation_units
, mira total_pages. Cada conjunto de filas (partición de un índice) tiene 3 unidades de asignación (DATA, SLOB y LOB), consulte Table and Index Organization. Únase con sys.partitions
para obtener el object_id y el index_id. Index_id 0 es el montón de una tabla desordenada, index id 1 es el índice agrupado. Cada mesa (índice) tiene al menos una partición, si no se reparte:
select object_name(p.object_id) as [name],
object_schema_name(p.object_id) as [schema],
i.name as [index],
i.type_desc,
au.type_desc,
p.partition_number,
p.rows,
au.total_pages * 8 as [space (kb)]
from sys.allocation_units au
join sys.partitions p on au.container_id = p.partition_id
join sys.indexes i on p.object_id = i. object_id
and i.index_id = p.index_id
order by [space (kb)] desc;
+1 parece mucho más fácil y más agradable que la respuesta de Joe Stefanelli! –
- 1. Renombrar todas las tablas en la base de datos
- 2. Lista de todas las tablas en la base de datos
- 3. Recuperar una lista de todas las tablas en la base de datos
- 4. ¿Cómo colocar todas las tablas en la base de datos sin soltar la base de datos?
- 5. Recuperar espacio en disco después de soltar la base de datos en mysql
- 6. de datos MongoDB eliminan - recuperar espacio en disco
- 7. Cómo colocar todas las tablas de la base de datos con manage.py CLI en Django?
- 8. Listar todas las tablas en una base de datos
- 9. Espacio en disco hambriento Las bases de datos de NoSQL
- 10. Base de datos que consume menos espacio en disco
- 11. Obtenga todas las tablas y todas las columnas de una base de datos odbc
- 12. ¿Cómo puedo crear una nueva base de datos SQLite, con todas las tablas, sobre la marcha?
- 13. Seleccionar de todas las tablas
- 14. Buscar todas las columnas de un cierto tipo en todas las tablas en una base de datos SQL Server
- 15. ¿Cómo puedo listar todas las tablas en una base de datos con Squirrel SQL?
- 16. MySQL OPTIMIZE todas las tablas?
- 17. Número total de campos en todas las tablas de la base de datos
- 18. Recuperar la lista de tablas de la base de datos específica en el servidor C#
- 19. Alterar las tablas de la base de datos en Django
- 20. Enumeraciones persistentes en las tablas de la base de datos
- 21. Recuperar esquema de base de datos
- 22. Sqlite: ¿Cómo reinicio todas las tablas de la base de datos?
- 23. ¿Es útil agregar una máscara de bits a todas las tablas en una base de datos?
- 24. enumere todas las tablas en una base de datos con MySQLi
- 25. Ordenar columnas en las tablas de la base de datos
- 26. Obtenga recuentos de todas las tablas en la base de datos MySQL
- 27. ¿Cómo puedo cambiar los prefijos en todas las tablas de mi base de datos MySQL?
- 28. Cómo mostrar todas las tablas de múltiples bases de datos
- 29. Cómo generar DDL para todas las tablas en una base de datos en MySQL
- 30. ¿Cómo cambiar todas las tablas de mi base de datos al juego de caracteres UTF8?
+1 BTW es filas exactas o estimadas? –
las filas deben ser exactas. –
Mirando la definición del proceso, se saca de la columna 'row_count' en' sys.dm_db_partition_stats'. Creo que recuerdo haber visto esto antes y que incluye filas modificadas por transacciones no confirmadas. –