• SQL Server 查看数据库空间分配情况的 2 种方法


    方法 1、 sys.dm_db_file_space_usage。

    方法 2、 sys.dm_db_session_space_usage。

    --------------------------------------------------------------------------------------------------------------------------------------------------------------

    方法 1 、

           sys_dm_db_file_space_usage 它度量方式是以页(page)为单位的,对每个数据库的不同文件都返回一行(不包涵 log 文件)

           用它是时候先要 use 到指定的数据库才行。它不会返回当前实例中的所有数据库的信息,针对当前数据库。

                total_page_count :总页面数

                allocated_extent_page_count :文件的已分配区中的总页数 。                    

                unallocated_extent_page_count:文件的未分配区中的总页数。

                user_object_reserved_page_count:从统一区为数据库中的用户对象分配的总页数。 计数中包括已分配区中未使用的页。

                internal_object_reserved_page_count:从统一区为文件中的内部对象分配的总页数。

                mixed_extent_page_count :文件的已分配混合区中的已分配和未分配总页数。

         例子、           

              select
              DB_NAME(usage.database_id) as DBName,
              sum(usage.unallocated_extent_page_count) as UnallocatedPage,
              sum(usage.allocated_extent_page_count) as AllocatedPage,
              sum(usage.internal_object_reserved_page_count)as InternalPage,
              sum(usage.user_object_reserved_page_count) as UserObjectPage,
              sum(usage.mixed_extent_page_count) as MixedPage from sys.dm_db_file_space_usage as usage
              group by usage.database_id
              go

              

    方法 2、

          sys.dm_db_session_space_usage 返回每个会话为数据库分配和释放的页数、它只是针对tempdb空间使用情况,别的数据库看不了

                 user_objects_alloc_page_count:由该会话为用户对象保留或分配的页数。

                 user_objects_dealloc_page_count:由该会话释放并不再为用户对象保留的页数。 

                 internal_objects_alloc_page_count:由该会话为内部对象保留或分配的页数。

                 internal_objects_dealloc_page_count:由该会话释放并不再为内部对象保留的页数。

          例子、           

               select
               DB_NAME(usage.database_id) as DBName,
               usage.session_id,
               usage.user_objects_alloc_page_count,
               usage.user_objects_dealloc_page_count,
               usage.internal_objects_alloc_page_count,
               usage.internal_objects_dealloc_page_count
               from sys.dm_db_session_space_usage usage;
               go

                 

    小结:

           sys.dm_db_session_usage 只针对 tempdb。

                 

  • 相关阅读:
    摄像头距离标定方法研究(得到像素和毫米的转换比)
    mfc通过消息传递参数进行程序间通信
    基于Opencv和Mfc的图像处理增强库GOCVHelper(索引)
    【20160924】GOCVHelper MFC增强算法(4)
    【20160924】GOCVHelper 图像处理部分(3)
    Xamarin Essentials教程使用指南针Compass
    Xamarin Essentials教程使用加速度传感器Accelerometer
    XamarinSQLite教程下载安装SQLite/SQL Server Compact Toolbox
    Xamarin Essentials教程屏幕常亮ScreenLock
    Xamarin Essentials教程振动Vibration
  • 原文地址:https://www.cnblogs.com/JiangLe/p/3995744.html
Copyright © 2020-2023  润新知