backup log JDAIS to disk='NUL'
文本描述了在云星空操作中遇到数据库“JDAIS”事务日志满的问题,原因是“LOG_BACKUP”。处理过程包括查看数据库属性、尝试修改恢复模式并收缩日志文件但无效,因备份失败而考虑后台语句截断日志。最终通过截断后收缩LDF文件解决,业务操作恢复正常。
问题描述
云星空操作自动分配就报错数据库“JDAIS”的事务日志已满,原因为“LOG_BACKUP”,如下图;
分析处理过程
1、查看该数据中心对应数据库实体的属性,【选项】里面的恢复模式选的是“完整”;
文件大小是mdf文件39G+,而ldf日志文件却又390G+,如下图所示;
2、执行语句查询日志状态,就是‘LOG_BACKUP’,如下图;
3、尝试,直接把选项里面的恢复模式改为“简单”,再去操作收缩-文件-日志文件,收缩没效果;收缩不掉;
4、经确认该库已有头一天的完整备份,于是考虑,给这个客户在完整模式下,先做一下事物日志备份,以此来截断日志;
但是由于日志文件太大,事务日志备份时提示磁盘空间不足,备份失败了,如下图;
参考帖子:登录时提示“xxx数据库的事务日志已满,原因为log_backup”
5、综上,只能考虑在现有“完整”模式的情况下,通过后台语句的方式,先截断日志文件;
说明:上述脚本建议分步执行上述脚本;上述红色字体内容,需要替换为实际数据库名称和数据库日志文件的逻辑名称。
6、如果上述最后2行脚本不执行的话,
也可以在数据库属性-选项界面,手工改为“简单”模式,然后再右键-任务-收缩-文件-日志,进行收缩即可。
本案例中是手工改为简单之后收缩掉的(相当于前面的脚本主要是截断事务日志),收缩之后日志文件大小 如下图;
7、通过上述操作把日志文件收缩掉之后,重新到云星空操作相关业务,没有再遇到【数据库“XXX”的事务日志已满,原因为“LOG_BACKUP”】的报错了。
推荐阅读