第一步:
backup log database_name with no_log
或者 backup log database_name with truncate_only --no_log和truncate_only是在这里是同拍则义的,随便执行哪一句都可以
第二步:
1.收缩特定数据库的所有数据和日志文件,执行 dbcc shrinkdatabase (database_name,[,target_percent])--database_name是要收缩的数据库名称;target_percent是数据库收缩后的数据库文件中所要的剩余可用空间百分比
2.收缩一次一个特定数据库中衡差的数据或日志文件,执行 dbcc shrinkfile(file_id,[,target_size]) --file_id是要收缩的文件的标识 (ID) 号,若要获得文件 ID,请使用 FILE_ID 函数或在当前数据库中搜索 sysfiles;target_size是用兆字节表示的所要的文件大小(用整数表示)。如果没有指定,dbcc shrinkfile 将文件大小减少到默认文件大小
两个dbcc都可以带上参数notruncate或truncateonly,具体意思看帮助袭拦棚。
crontab做一个计划任务脚本不就好了。把这周的日志cp一下,然后清空当前日志谈顷枝,最后再删含敏除上乎迟周的日志。
#!/usr/bin/sh
file=`date '+%M%d'`
cp SysOut.log ../old/sysout.log.$file
>SysOut.log
cd ../old/
rm *
exit 0
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)