
正文
sqlserver数据删除后文件变大,sqlserver删除记录后空间释放
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
SQLserver数据库备份数据文件过大怎么办
如果里面的数据资料不重要,只是数据结构重要的话,可以再导出一个只含数据结构的数据库副本。或者 如果日志文件不重要的话,可以只导出数据库本身,不导出日志。最后,7G文件也不算大,我这里就是用一个160G的移动硬盘备份的,不过一定要把硬盘格式化成NTFS格式。
时间充足就断线停止写入数据库,做个全备份。删除数据库,删除数据库文件。整理下磁盘。重建同名数据库,恢复数据库。这时候的空间是最紧凑的,可以试试建聚集索引。最根本的方法是加硬盘,可能你的数据操作规律就是会产生很多碎片的,必须要有双倍的空间才行。
sqlserver最大支持数据文件,也就是MDF,单个文件是16 TB,日志2 TB。如果你的数据文件和日志文件没有超过这个大小,数据库是没有问题的。如果硬盘没有空间了,要先清出一些空间,然后对数据库做一个备份,再做一下日志备份,再做一下收缩。
然后把数据库文件COPY到你新买的大硬盘上 然后再附加数据库 然后再做一个作业,定期清理日志,一天做一个差异备份,一周做一个完全备份。并自动删除之前备份的文件。数据库实在大了,分割数据库,用蓝光刻盘。不过我不明白,你到底在运行什么业务,上T的硬盘都不够你用。
SQL备份的文件可以定期删除,不影响使用 内存使用是1700M是正常的 重要:SQL日志要定期瘦身,否则日志会变大,导致备份文件太大,很多时候日志文件太大而数据本身并不大,瘦身后每天备份的文件大大减小。
相关问答
Q1: Sqlserver数据库日志太大如何快速删除
可以通过直接删 除log文件和清空日志在清除数据库日志。删除LOG分离数据库。分离数据库之前一定要做好数据库的全备份,选择数据库右键任务分离。勾选删除连接分离后在数据库列表将看不到已分离的数据库。
方法一:1)打开查询分析器,输入命令 BACKUP LOG databasename WITH NO_LOG ;2)打开企业管理器--右键要压缩的数据库--所有任务--收缩数据库--收缩文件--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了。
解决方法 日志文件满而造成SQL数据库无法写入文件时,可用两种方法:一种方法:清空日志。
手动清理方法:右键单击需要清理的数据库,选择“属性”,在“选项”卡上,把故障还原模型设定为简单,确定后关闭;再右键单击该数据库,“所有任务”-“收缩数据库”,确认后即可清除日志文件,最后记得重新选择“属性”,将故障还原模型设置为完全。自动清理方法:利用sqlserver代理服务,执行自动作业。
Q2: sqlserver数据库文件增长过快,MDF文件过大,不是日志文件大。
如果单位内部业务数据太多,那么数据库文件快速增大就是正常的,这种情况下,只能采取其它措施缩减其大小,比如说建立专门的归档数据库,用以存放历史数据,从而控制主数据文件的增长速度。
sql server的数据是按页存储的,页是记录存储的最小单位!一个页最多4096B左右,就是说一条记录的最大量应在4096之内,你的一个字段就为varchar(8000)了,整个表加起来按最大算10000个字节计算,一条记录需要占用3个页,第3个页面最少只占用了一少半,就不能再利用了。
是你的mdf大吗? mdf大说明数据多,你可以适当优化数据库表结构,如果仍然很大, 就要考虑建数据仓库,或者,历史数据平时查询使用很少,可以把旧数据导出来,把原库中的删了,如是ldf大,说明生成的事务日志多,重新考虑你的备份计划。
在收缩窗口里选择“文件(F)”,然后在弹出的新窗口里,有一个数据库文件下拉列表选项,选中你的数据库文件(也可以对日志文件),在“收缩操作”中选中“压缩页,然后截断文件中的可用空间(P)”,然后确定。你的数据量很大,可能需要花几十分钟甚至几小时才能完成,请耐心等待。
才可以选确定。到数据库文件的存放目录,将it_log.LDF文件删除,不放心可以先拷到别的地方。进入企业管理器,数据库-所有任务-附加数据库。选择it_Data.MDF,这个时候你会看见日志文件这项是一个红叉,不要紧点确定。
Q3: 数据库数据已经删除,但是物理文件mdf还是很大
数据是存放在数据文件中的,不是直接写在物理硬盘上,数据文件是无法自动缩小的,分配了多大就是多大,用下面的sql可以查出表空间的具体使用情况,删了大量数据后应该有一个或几个表空间出现大量空闲。数据库是“按照数据结构来组织、存储和管理数据的仓库”。
删除数据后文件大小不变,是因为你没有对数据重新进行清理,你需要在access的工具里,点击“压缩和修复数据库。
sql server的数据是按页存储的,页是记录存储的最小单位!一个页最多4096B左右,就是说一条记录的最大量应在4096之内,你的一个字段就为varchar(8000)了,整个表加起来按最大算10000个字节计算,一条记录需要占用3个页,第3个页面最少只占用了一少半,就不能再利用了。
Q4: SqlServer数据文件太大,表占用空间太大,怎么释放空间
处理方法:用BACKUPLOGdatabaseWITHNO_LOG清除日志把数据库属性中的故障还原模型改为“简单”可以大大减慢日志增长的速度。
要解决SQLServer占内存过多的问题,可以调整最大服务器内存设置、优化查询、建立适当的索引以及定期维护数据库。 调整最大服务器内存设置 SQL Server 使用内存来缓存数据,以便快速检索。但是,如果它占用了太多的内存,可能会导致系统资源争用,影响性能。
一般是因为查询数据量大,执行时间长造成的。那么有什么办法解决win7系统SQLServer软件占用大量内存空间的问题,不要着急,接下去小编告诉大家具体解决方法。
关于sqlserver数据删除后文件变大和sqlserver删除记录后空间释放的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






