在我们使用sql server数据库或者服务器时,有时会发现数据库不到一段时间,占用磁盘空间好大,也有可能是数据的原因,也有可能是其他的原因,但如果说占用绝大部分存储空间,而且数据量又不怎么大,那么,这其中就有问题了。

工具/原料

  • sql server

方法/步骤

  1. 首先我们要清楚问题的原因之处;

    第一步:打开sql server数据库,数据库右键——属性——文件,在这个文件栏打开之后,我们会看到主数据文件和日志文件的初始大小和增长大小,如果日志文件太多,我们首先要考虑处理日志文件。

  2. 对数据库事务日志已满的处理方法:

    USE [master]

    GO

    ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE WITH NO_WAIT

    GO

    ALTER DATABASE 数据库名称 SET RECOVERY SIMPLE

    GO

    USE 数据库名称

    GO

    DBCC SHRINKFILE (N'数据库名称_log' , 11, TRUNCATEONLY)

    GO

  3. 数据日志处理完之后,如果是日志的问题的话,这个时候磁盘的存储空间会多出来很多,如果不是这个问题的话,我们还要去查看数据库中每个表数据大小,看看是否是数据量很大这个原因导致的。

  4. IF OBJECT_ID('tempdb..#TablesSizes') IS NOT NULL

    DROP TABLE #TablesSizes

    CREATE TABLE #TablesSizes

    (

    TableName sysname ,

    Rows BIGINT ,

    reserved VARCHAR(100) ,

    data VARCHAR(100) ,

    index_size VARCHAR(100) ,

    unused VARCHAR(100)

    )

    DECLARE @sql VARCHAR(MAX)

    SELECT  @sql = COALESCE(@sql, '') + '

    INSERT INTO #TablesSizes execute sp_spaceused ''' + QUOTENAME(TABLE_SCHEMA,

    '[]') + '.'

    + QUOTENAME(Table_Name, '[]') + ''''

    FROM    INFORMATION_SCHEMA.TABLES

    WHERE   TABLE_TYPE = 'BASE TABLE'

    PRINT ( @SQL )

    EXECUTE (@SQL)

    SELECT  *

    FROM    #TablesSizes

    ORDER BY Rows DESC

  5. 当这些配置好了之后,我们发现确实是数据原因,这个时候,我们就要适当的去删除数据量比较大的表格了,删除完了之后,我们就要对表格进行压缩了。将磁盘的可用空间释放出来。

  6. 数据库右键——任务——压缩——数据库,来到上面的压缩数据库文件,这个时候我们要选择压缩的百分比了,设置好百分比之后,我们就开始执行,这个过程可能比较漫长,毕竟是对磁盘的一次重新组合,所以敬请等待,最终你会看到磁盘会空出很多可用空间。

    步骤阅读

数据库文件.mdf太大的解决方法相关推荐

  1. 服务器c盘windows文件夹太大,Win10C盘windows文件夹过大怎么办?Win10C盘windows文件夹过大的解决方法...

    在我们使用win10操作系统的时候会发现,C盘的windows文件夹内存占用空间特别大,那么应该如何删除或者清理这个windows文件夹内的东西呢?下面就和小编一起来看看有什么方法吧. Win10C盘 ...

  2. Unity3D占用内存太大的解决方法【先转,慢慢看】

    2019独角兽企业重金招聘Python工程师标准>>> Unity3D占用内存太大的解决方法 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太大. 这里写下关于Unit ...

  3. PPT打印留白空隙太大,解决方法!

    PPT打印留白空隙太大,解决方法: 打开PPT,点击打印,设置每页6张幻灯片,A4纸张横向,颜色为纯黑白. 如下图所示: 预览如下图,空隙留白太多! PPT打印留白空隙太大,解决方法分两步: 1 PP ...

  4. Git仓库占用空间太大的解决方法

    Git仓库占用空间太大的解决方法 $ git gc $ git gc --aggressive $ git gc --auto Mac机的500G容量在一段时间后,快被撑满了,现在需要给Git本地库减 ...

  5. 【mac】Snagit截图时候鼠标变大太大的解决方法

    Snagit截图时候鼠标变大太大的解决方法: 将Snagit的Capture Preference - Capture - Capture Settings中的Capture cursor关闭

  6. unity占内存大小_Unity3D占用内存太大的解决方法

    原文链接:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html 最近网友通过网站搜索Unity3D在手机及其他平台下占用内存太 ...

  7. Python打包exe程序(pyinstaller)以及打包文件太大的解决方法

    编写的python项目,如何在没有python环境的电脑中运行? 打包成exe可执行程序即可 本文章可以教会你如何将python项目打包成exe可执行程序,以及打包后文件太大该如何解决! 来了来了,开 ...

  8. Word 2010文档中参考文献自动编号后间距太大的解决方法

    在使用Word 2010撰写论文时,一般都会在文章后面加上好多篇参考文献,但在对参考文献自动编号的时候,发现编号与文献之间的间距太大,很不美观,如下图所示: 那么该如何调整呢?其实这主要是自动编号的缩 ...

  9. 计算机桌面显示图标太大,win10系统出现桌面图标太大的解决方法

    大家在用win10系统电脑工作和学习的过程中,可能会出现win10系统桌面图标太大的情况.如果遇到win10系统桌面图标太大的问题应该如何处理呢?对于电脑水平属于小白的用户来说一般不知道win10系统 ...

最新文章

  1. SubVersion和Subclipse的简单使用方法
  2. linux bash中too many arguments问题的解决方法
  3. 58回应“简历数据泄露”:将展开追查并加固安全系统
  4. Java 第三周总结
  5. 洛谷 P1615 西游记公司
  6. java servlet是单例吗_关于java:为什么apache servlet是单例?
  7. 病毒侵袭(HDU-2896)
  8. 2021.08.24学习内容torch.utils.data.DataLoader以及CUDA与GPU的关系
  9. error_reporting()函数
  10. linux 托盘两个输入法图标,linux mint12安装ibus之后,语言栏不跟随光标和系统托盘输入法图标不能显示问题解决...
  11. Oracle_linux_lesson_p2
  12. 【记】微信支付服务器证书更换通知的验证流程
  13. springboot 启动 退出_springboot怎么停止掉服务器 我启动了springboot,但是我修改了程序,我怎么重启啊...
  14. Undertow 实现反向代理
  15. 机甲大师s1 python编程_机甲大师RoboMaster S1教育机器人- DJI 大疆创新
  16. 等保测评中web应用防火墙怎么选择?
  17. armbian不拔掉TF卡使用usb移动硬盘启动
  18. Linux 操作系统之文件服务
  19. linux superblock 时间,e2fsck: Bad magic number in super-block_Linux
  20. 【IoT】 产品设计:产品工艺之金属外壳CNC加工过程

热门文章

  1. 素雅唯美古典中国风PPT模板
  2. 好用的数据恢复软件,误删不再怕
  3. 浅谈Linux内核无锁编程原理
  4. android蓝牙门禁,BleAgent蓝牙门禁SDK文档
  5. 小程序统一服务消息_小程序客服消息接入微信教程
  6. 北大计算机考研个人陈述,北大推免研究生个人陈述
  7. 人行备案AAA企业信用等级认证简介
  8. vue 倒计时 插件_Vue学习笔记-倒计时插件
  9. mac安装软件没权限Anywhere ---“XX” is damaged and can’t be opened. You should move it to the Trash 解决方案
  10. MOOC翁凯_零基础学Java语言