zoukankan      html  css  js  c++  java
  • 查询数据库空间使用情况

    sp_spaceused [[ @objname = ] 'objname' ] 
    [,[ @updateusage = ] 'updateusage' ]

    @objname='objname'

    请求其空间使用信息的表、索引视图或队列的限定或非限定名称。 仅当指定限定对象名称时,才需要使用引号。 如果提供完全限定对象名称(包括数据库名称),则数据库名称必须是当前数据库的名称。

    如果未指定 objname,则返回整个数据库的结果。

    objname 的数据类型为 nvarchar(776),默认值为 NULL。

    @updateusage='updateusage'

    指示应运行 DBCC UPDATEUSAGE 以更新空间使用信息。 当未指定 objname 时,将对整个数据库运行该语句;否则,将对 objname 运行该语句。 值可以为 true 或false updateusage 的数据类型为 varchar(5),默认值为 false

    exec sp_spaceused

    database_name:数据库名称

    database_size:当前数据库的大小 (MB)。 database_size 包括数据和日志文件

    unallocated space:未保留供数据库对象使用的数据库空间。

    reserved:由数据库中对象分配的空间总量。

    data:数据使用的空间总量。

    index_size:索引使用的空间总量。

    unused:为数据库中的对象保留但尚未使用的空间总量。

     

    EXEC sys.sp_spaceused N'userinfo'  --查询指定的表名的空间使用情况

    database_size 将始终大于 reserved + unallocated_space 之和,因为该值包括日志文件的大小,而 reserved 和 unallocated_space 只考虑数据页。

    在这两个结果集的 index_size 中,都包括了 XML 索引和全文索引使用的页。 当指定 objname 时,对象的 XML 索引和全文索引所使用的页将计算在 reserved 和index_size 结果中。

    如果为具有空间索引的数据库或对象计算空间使用情况,则空间大小列(例如,database_size、 reserved 和 index_size)将包含空间索引的大小。

    指定 updateusage 时,SQL Server 数据库引擎将扫描数据库中的数据页,并根据每个表所使用的存储空间对 sys.allocation_units 和 sys.partitions 目录视图进行必要的更正。 在某些情况下(例如删除索引后、表的空间信息不是当前信息时),需要执行该操作。 updateusage 在大型表或数据库上运行会花费一些时间。 只有当怀疑所返回的值不正确,而且该进程对数据库中的其他用户或进程没有负面影响时,才应使用 updateusage 如果首选该进程,则可以单独运行 DBCC UPDATEUSAGE。

    简单查询表记录数从大到小排序

    select max(object_name(object_id)) as tablename, sum(row_count) rows from sys.dm_db_partition_stats
    where index_id<2
    group by object_id
    order by sum(row_count) desc

    简单查询表数据Size从大到小排序

    select max(object_name(object_id)) as tablename, (sum(in_row_data_page_count + lob_used_page_count + row_overflow_used_page_count) *8) as size_kb from sys.dm_db_partition_stats
    where index_id<2
    group by object_id
    order by sum(in_row_data_page_count + lob_used_page_count + row_overflow_used_page_count)desc

  • 相关阅读:
    wapp HTTP Error 404. The requested resource is not found.
    JS 动态修改json字符串
    使用VS2017新建的Web项目报错:Package Microsoft.Composition 1.0.27 is not compatible with netcoreapp1.1
    java park unpark
    DOUHAO
    Thread dump
    线程状态
    https://stackoverflow.com/questions/20795295/why-jstack-out-says-thread-state-is-runnable-while-socketread
    rocketmq-flink
    the-implementation-of-epoll
  • 原文地址:https://www.cnblogs.com/gjhjoy/p/3517324.html
Copyright © 2011-2022 走看看