zoukankan      html  css  js  c++  java
  • Backup--如何快速截断日志

    --在SQL Server 2005 中,可用使用 BACKUP LOG WITH TRUNCATE_ONLY来迅速清理日志,该命令在 SQL Server2008 及更高版本上被去除。

    --BACKUP LOG WITH TRUNCATE_ONLY --该语句相当于将数据库改为简单恢复模式后又改为完整恢复模式,在该语句运行后至最近一次完整备份区间,数据库相当于运行在简单恢复模式下,所有活动日志在 checkpoint后被丢弃,且无法对数据库进行日志备份。

    ​ --BACKUP LOG TO DISK='nul' --nul并非null 的错误拼写, nul可以被看成一个虚拟文件,所有写入到 nul文件里的数据都被丢弃,对 SQL Server而言,nul 与其他真实存在的文件一样, SQL SERVER会扫描所有活动日志,将该日志格式化后写入 nul文件,数据写入到nul文件后被操作系统丢弃,然后由操作系统返回确认信息给 SQL Server,然后将活动日志标记为已日志备份,该活动日志所在空间可被 reuse。 --BACKUP LOG TO DISK='nul' 相当于正常备份日志然后删除日志文件,并不破坏备份日志链。

    --总结:在SQL SERVER 2008 及以后版本中,可以通过修改数据库恢复模式方式来实现 TRUNCATE_ONLY功能,对于数据库已做镜像且数据库日志巨大的情况,如果不需要当前日志,可以使用 BACKUP LOG TO DISK='nul'方式来备份日志然后收缩。

    --注意: --1>BACKUP LOG TO DISK='nul' 会导致日志不可用再恢复。

  • 相关阅读:
    求解整数集合的交集(腾讯笔试)
    关于屏幕适配之比例布局
    (转)注册JNI函数的两种方式
    正则表达式记录
    当年一个简单可用的多线程断点续传类
    最近用到的几个工具方法
    Android中包含List成员变量的Parcel以及Parcel嵌套写法示例
    java实现计算MD5
    一个用于去除状态栏和虚拟导航栏的BaseActivity
    MVP的模板
  • 原文地址:https://www.cnblogs.com/TeyGao/p/3519954.html
Copyright © 2011-2022 走看看