最近跟 James 讨论为何「ApexSQL Log」这个工具可以读到被删除的数据呢? 原来它是透过 Transaction Log 来读取数据的! 于是透过 Transaction Log 到网络上有找到「SQL Server – How to find Who Deleted What records at What Time」直接透过 Transaction Log 来把被删除的数据给找回来! 蛮神奇的,只是Run在我的区分大小写的DB中会发生错误,因为有些字段名称大小写没有一致,于是就调…
今天查看Job的History,发现Job 运行失败,错误信息是:“The transaction log for database 'xxxx' is full due to 'ACTIVE_TRANSACTION'.” 错误消息表明:数据库的事务日志文件空间耗尽,log 文件不能再存储新的transaction log. SQL Server将事务日志文件在逻辑上划分为多个VLF(Virtual Log Files),将这些VLF组成一个的环形结构,以VLF为重用单元.如果一个VLF 中存在…
今天早上,Dev跟我说,执行query statement时出现一个error,detail info是: “The transaction log for database 'tempdb' is full due to 'ACTIVE_TRANSACTION'” 错误信息提示:由于活动事务太长,使得 tempdb 的 transaction log file 空间用尽. 一般情况下,由于tempdb 的 Recovery Mode是 simple,日志文件会自动截断和重用,如果活动事务太长,…
目录 什么是事务日志 事务日志的组成 事务日志大小维护方法 Truncate Shrink 索引碎片 总结 什么是事务日志 Transaction log   是对数据库管理系统执行的一系列动作的记录,并利用这些记录来保证在遭遇硬件故障,灾难情况下ACID的可用性.从物理上来说,事务日志就是一个记录对数据库更新操作的文件. 事务日志的组成 SQL Server 数据库引擎在内部将每个物理文件分为多个虚拟日志文件.虚拟日志文件没有固定大小和固定数量,这两个值是由数据库引擎动态决定的. 事务日志是一…
DB2在执行一个大的insert/update操作的时候报"The transaction log for the database is full.. "错误,查了一下文档是DB2的日志文件满了的缘故. 首先执行以下命令来查看DB2的日志配置信息 $ db2 get db cfg | grep LOG 注意当中的以下配置项 Log file size (4KB) (LOGFILSIZ) = 1024 Number of primary log files (LOGPRIMARY) =…
分布式中的 transaction log 在分布式系统中,有很多台node组成一个cluster,对于client 的一个写操作请求而言,在什么样的情况下,cluster告诉client此次写操作请求是成功的呢? 首先来定义一下什么是写操作成功? 假设有一个三节点的cluster,一个primary node,两个replica node如下图所示: 方案1. client 向primary发写请求,primary 将待写的数据持久化后,返回响应给client此次写操作成功,然后primary…
记在这里, 备用. select name, recovery_model_desc from sys.databases where name = 'WSS_Content_1000' USE WSS_Content_1000 ; ALTER DATABASE WSS_Content_1000 SET RECOVERY Simple; go use WSS_Content_1000 go checkpoint go checkpoint go dbcc shrinkfile(WSS_Conte…
Msg 9002, Level 17, State 4, Line 4The transaction log for database 'Test' is full due to 'ACTIVE_TRANSACTION'. 本定一个测试库错误,由于此库的LOG文件被设置成不允许自动增长,而在大量输入数据的时候报出此错.此库已经使SIMPLE恢复模式. --数据库当前LOG状态 select log_reuse_wait_desc from sys.databaseswhere name = 'T…
今天早上,Dev跟我说,执行query statement时出现一个error,detail info是: “The transaction log for database 'tempdb' is full due to 'ACTIVE_TRANSACTION'” 错误信息提示:由于活动事务太长,使得 tempdb 的 transaction log file 空间用尽. 一般情况下,由于tempdb 的 Recovery Mode是 simple,日志文件会自动截断和重用,如果活动事务太长,…
n some circumstances, we just want to truncate transaction log without backup and refuce change database mode to "Simple".You may want to say "You are make an unnecessary move". Yes, that is true. However,. our customer just want to ke…