社区
MS-SQL Server
帖子详情
数据库日志文件超级的大,如何在不停止数据库服务的情况下。截断日志文件。
antelop_yan
2005-10-12 11:40:02
我的客户的数据库无比的大,检查发现原因在于日志文件非常的大。我想把它弄小一点,但由于客户一直在使用数据库,所以服务不能停止。那我就不知道该怎处理了。请高手指点一下。
...全文
283
5
打赏
收藏
数据库日志文件超级的大,如何在不停止数据库服务的情况下。截断日志文件。
我的客户的数据库无比的大,检查发现原因在于日志文件非常的大。我想把它弄小一点,但由于客户一直在使用数据库,所以服务不能停止。那我就不知道该怎处理了。请高手指点一下。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
wgsasd311
2005-10-12
打赏
举报
回复
1.首先清空日志
DUMP TRANSACTION 库名 WITH NO_LOG
2.最后压缩数据库就可以了
DBCC SHRINKDATABASE(库名)
饮水需思源
2005-10-12
打赏
举报
回复
DUMP TRANSACTION 数据库名 WITH NO_LOG
insert2003
2005-10-12
打赏
举报
回复
最简单的:
建个作业
每天运行一次
BACKUP LOG table_name WITH NO_LOG
DBCC SHRINKDATABASE(table_name)
详细的:
压缩日志及数据库文件大小
/*--特别注意
请按步骤进行,未进行前面的步骤,请不要做后面的步骤
否则可能损坏你的数据库.
一般不建议做第4,6两步
第4步不安全,有可能损坏数据库或丢失数据
第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复.
--*/
--下面的所有库名都指你要处理的数据库的库名
1.清空日志
DUMP TRANSACTION 库名 WITH NO_LOG
2.截断事务日志:
BACKUP LOG 库名 WITH NO_LOG
3.收缩数据库文件(如果不压缩,数据库的文件不会减小
企业管理器--右键你要压缩的数据库--所有任务--收缩数据库--收缩文件
--选择日志文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
--选择数据文件--在收缩方式里选择收缩至XXM,这里会给出一个允许收缩到的最小M数,直接输入这个数,确定就可以了
也可以用SQL语句来完成
--收缩数据库
DBCC SHRINKDATABASE(库名)
--收缩指定数据文件,1是文件号,可以通过这个语句查询到:select * from sysfiles
DBCC SHRINKFILE(1)
4.为了最大化的缩小日志文件(如果是sql 7.0,这步只能在查询分析器中进行)
a.分离数据库:
企业管理器--服务器--数据库--右键--分离数据库
b.在我的电脑中删除LOG文件
c.附加数据库:
企业管理器--服务器--数据库--右键--附加数据库
此法将生成新的LOG,大小只有500多K
或用代码:
下面的示例分离 pubs,然后将 pubs 中的一个文件附加到当前服务器。
a.分离
EXEC sp_detach_db @dbname = '库名'
b.删除日志文件
c.再附加
EXEC sp_attach_single_file_db @dbname = '库名',
@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\库名.mdf'
5.为了以后能自动收缩,做如下设置:
企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"
--SQL语句设置方式:
EXEC sp_dboption '库名', 'autoshrink', 'TRUE'
6.如果想以后不让它日志增长得太大
企业管理器--服务器--右键数据库--属性--事务日志
--将文件增长限制为xM(x是你允许的最大数据文件大小)
--SQL语句的设置方式:
alter database 库名 modify file(name=逻辑文件名,maxsize=20)
联机帮助有说的!
JohnLuyuanyi
2005-10-12
打赏
举报
回复
不错不错
cary2006
2005-10-12
打赏
举报
回复
1、首先以下情况下,数据库日志的非活动部分才会被截断:
简单恢复模式,设置在检查点截断日志;简单恢复模式,备份数据库;back up log db_name with no_log
2、日志被截断后只是让出了逻辑空间,如果日志文件没有设置成自动收缩则要通过以下方式收缩:
DBCC SHRINKDATABASE或DBCC SHRINKFILE
ORACLE清理、
截断
监听
日志
文件
(listener.log)
本文讨论了Oracle
数据库
中监听
日志
(listener.log)过大可能带来的问题,包括存储空间占用、连接问题和性能影响。指出即使
文件
系统支持大
文件
,过大的
日志
文件
也会给管理和查找信息带来不便。文章介绍了错误的监听
日志
截断
方法,并提供了正确流程,包括
停止
监听
服务
、复制
日志
、清空
文件
和重新开启
日志
记录。最后,分享了一个自动化脚本,用于定期清理和保留一定期限的
日志
文件
。
ORACLE清理监听
日志
文件
(listener.log)
当ORACLE
数据库
的监听
日志
文件
listener.log过大时,可能会影响
服务
。本文介绍了如何在不重启
服务
器和
数据库
的
情况
下,通过
停止
监听
服务
、复制并重命名
日志
文件
、清空原
日志
、开启
日志
记录,以及删除旧备份来正确处理这个问题。操作步骤详细,适用于32bit或64bit系统。
oracle++大量
日志
,Oracle
日志
文件
过大 容易出现 03113
本文介绍了如何管理Oracle
数据库
的
日志
文件
,如alert_orasid.log,当
文件
过大时,通过
截断
和定期存档来降低性能开销。同时,也详细讲解了如何处理listener.log
日志
,包括
停止
记录、备份旧
日志
并重启监听器。
sybaseIQ12.7无事物
日志
的恢复或是
截断
事物
日志
本文介绍了在Sybase IQ
数据库
中进行
日志
管理的方法,包括在
数据库
运行或
停止
状态下
截断
日志
、重新生成
日志
文件
的具体步骤及实用工具的使用方法。
MS-SQL Server
34,876
社区成员
254,639
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章