zoukankan      html  css  js  c++  java
  • sqlserver数据库中的mdf文件太大,表空间分析和表空间释放

    查询数据库的大小:

    EXEC sp_spaceused

    为了保证查询结果的实时性,推荐使用 @updateusage 参数来确保统计数据是最新的:

    EXEC sp_spaceused @updateusage = N'TRUE';

    具体查询某个表的大小:

    EXEC sp_spaceused 't_table'

    分析查询数据库中所有表占用的内存大小:

    declare @table_spaceused table (
    name nvarchar(100) ,
    rows int ,reserved nvarchar(100) ,
    data nvarchar(100) ,index_size nvarchar(100) ,
    unused nvarchar(100) )
    insert into @table_spaceused (name,rows,reserved,data,index_size,unused ) exec sp_MSforeachtable @command1='exec sp_spaceused ''?'''
    select * from @table_spaceused

    字段含义:

    • name:表名
    • rows:行数
    • reserved:数据库为该表分配的空间
    • data:数据实际使用的空间,reserved肯定>=data
    • index_size:索引使用的空间
    • unused:为数据库中的对象保留但尚未使用的空间总量,大致等于reserved - data - index_size的值

    然后根据表中的业务选择性删除无用的数据,truncate table 表名来清空表中无用的数据。

    最后一步,使用数据库自带的收缩功能,来进行收缩数据库中mdf文件的大小。

    右键数据库—–>任务——->收缩———->数据库(或者文件)。

    我本地之前数据库30多个g的文件,后面压缩成了1个多g文件。

  • 相关阅读:
    node.js结合wechaty实现微信机器人[基础篇]
    .env文件为NodeJS全局环境变量
    基于jquery实现一个提示插件
    Puppeteer实现一个超简单的自动化机器人
    Vue高仿阿里动态banner,制作组件
    css不常用属性
    Vue表单校验失败滚动到错误位置
    C# Func委托
    深入解析C# 4th 笔记(第一章)
    C# 笔记 XML基础
  • 原文地址:https://www.cnblogs.com/JackZhangcom/p/11971112.html
Copyright © 2011-2022 走看看