SQL SERVER 数据库日志收缩整理 三种方法

一、日志文件过大,可以通过分离数据库来实现

为了最大化的缩小日志文件(如果是sql   7.0,这步只能在查询分析器中进行)     
  a.分离数据库:     
  企业管理器--服务器--数据库--右键--分离数据库     
    
  b.在我的电脑中删除LOG文件     
    
  c.附加数据库:     
  企业管理器--服务器--数据库--右键--附加数据库     
    
  此法将生成新的LOG,大小只有500多K     
    
  或用代码:       
  下面的示例分离   pubs,然后将   pubs   中的一个文件附加到当前服务器。     
    
  a.分离     
  EXEC   sp_detach_db   @dbname   =   'pubs'     
    
  b.删除日志文件     
    
  c.再附加     
  EXEC   sp_attach_single_file_db   @dbname   =   'pubs',       
        @physname   =   'c:\Program   Files\Microsoft   SQL   Server\MSSQL\Data\pubs.mdf'    


二.下面的删除日志,然后压缩数据库的方法和方法一有什么区别?


删除(清空)日志,然后压缩日志到指定文件大小,一下两句同时运行才可,否则日志文件不减少

DUMP   TRANSACTION   数据库名   WITH   NO_LOG   
    
DBCC SHRINKFILE(书库库日志文件的逻辑名称,10)  --收缩read126_log   10M日志

减小事务日志的物理大小需要收缩日志文件。通过删除一个或多个不活动的虚拟日志文件来收缩事务日志,从而减小其物理大小。
包含任何活动日志记录的虚拟日志文件(即“活动的虚拟日志文件”)是逻辑日志的一部分,不能将其删除。
注意:  
如果事务日志最近未被截断,则在截断日志之前无法收缩日志。有关详细信息,请参阅使日志记录保持活动状态的因素。

 

三。自动收缩日志,具体收缩到多大?何事收缩?

企业管理器--服务器--右键数据库--属性--选项--选择"自动收缩"   
    
  --SQL语句设置方式:   
  EXEC   sp_dboption   '数据库名',   'autoshrink',   'TRUE'

四。截断事务日志后进行收缩事务日志
   截断并不减小物理日志文件的大小。减小日志文件的物理大小需要收缩文件
  BACKUP   LOG   数据库名   WITH   NO_LOG    

  DBCC SHRINKFILE(库日志文件的逻辑名称,10)  --收缩read126_log   10M日志


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要自动备份MySQL数据库,你可以使用以下步骤: 1. 创建一个备份脚本:使用任何你熟悉的编程语言(如Bash、Python等),编写一个脚本来执行备份操作。你可以使用MySQL的命令行工具或者编程语言提供的MySQL客户端库来执行备份操作。 2. 定义备份频率:决定备份的频率,比如每天、每周或者每月备份一次。你可以使用操作系统的定时任务(如Cron)来定期运行备份脚本。 3. 备份数据库:在备份脚本中,使用适当的命令来备份MySQL数据库。你可以使用`mysqldump`命令来导出整个数据库或者单独的表。 例如,使用mysqldump备份整个数据库: ``` mysqldump -u <用户名> -p<密码> <数据库名> > <备份文件路径> ``` 或者,备份单独的表: ``` mysqldump -u <用户名> -p<密码> <数据库名> <表名> > <备份文件路径> ``` 4. 存储备份文件:在备份脚本中,指定一个目录来存储备份文件。你可以使用本地文件系统、网络共享文件夹、云存储服务等等。 5. 可选的压缩备份文件:如果你想节省存储空间,可以在备份脚本中使用压缩工具(如gzip)对备份文件进行压缩。 例如,使用gzip压缩备份文件: ``` gzip <备份文件路径> ``` 6. 保留旧备份:如果你想保留一定数量的旧备份,可以在备份脚本中添加逻辑来删除旧的备份文件。你可以根据日期、备份文件数量等条件来决定删除哪些备份文件。 7. 测试和监控备份:确保备份脚本能够正常运行,并且检查备份文件的完整性。你可以在脚本中添加日志记录和错误处理来监控备份过程。 请注意,以上步骤仅为一般指导,并且具体实现可能因你的环境和需求而有所不同。建议在实际操作前,先对脚本进行测试并确保备份数据的安全性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值