您的位置:首页 > 博客中心 > 数据库 >

The transaction log for database 'XXX' is full due to 'ACTIVE_TRANSACTION'.

时间:2022-03-14 02:49

Msg 9002, Level 17, State 4, Line 4
The transaction log for database ‘Test‘ is full due to ‘ACTIVE_TRANSACTION‘.

本定一个测试库错误,由于此库的LOG文件被设置成不允许自动增长,而在大量输入数据的时候报出此错。此库已经使SIMPLE恢复模式。

--数据库当前LOG状态

select log_reuse_wait_desc from sys.databases
where name = ‘Test‘

log_reuse_wait_desc
ACTIVE_TRANSACTION

--LOG 使用情况 

dbcc sqlperf(logspace)

Database Name Log Size (MB) Log Space Used (%) Status
Test       1.984375   118.3071 0

最吃惊的是它的使用率是118%,那多出来的18%空间给那来的?

--再看看它的虚拟日志情况

DBCC loginfo

--这个显示只有一个是活动的,其它的都可以使用的。又一个奇怪的信息

gxlsystem.com,布布扣

 

这种状态下,数据库基本上是一个只读状态。

那这个时候怎么解决,按 再加一个LOG文件就可以了。看文档上说,可能还有在恢复数据库的时候也遇到这种错。那个文档上有处理方法。

 

热门排行

今日推荐

热门手游