问题标签 [transaction-log]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
10536 浏览

sql-server - TSQL:如何获取事务日志的大小?

如何获取事务日志的当前大小?如何获得尺寸限制?

我想对此进行监控,以便确定需要多久备份一次事务日志。

当我执行大型操作时,我通常会遇到事务日志的问题。

0 投票
2 回答
2211 浏览

sql-server-2005 - SQL Server 2005 事务日志太大

我正在运行 SQL Server 2005。

我的数据库备份方案是:
恢复模式:FULL
备份类型:完整
备份组件:数据库
备份集将过期:0天后
覆盖媒体:备份到现有的媒体集,追加到现有的备份集

数据库正在写入 250GB 驱动器(实际为 232GB)。

我的 _Data.mdf 文件超过 55GB,我的 _Log.ldf 超过 148GB。

我们遇到了今天我们的驱动器被填满的情况。我将我们的ab_Full.bak 和ab_Log.bak 文件移动到另一个驱动器以腾出空间 - 大约 45GB。五小时后,可用空间为 37GB。

我是管理 SQL 服务器的新手;所以,我有一些关于我的备份的基本问题。

我知道我需要更新数据库以开始管理事务日志大小,以帮助防止将来出现此问题。因此,假设我有足够的可用空间,我:
1. 右键单击​​数据库并选择备份
2. 将“备份类型”设置为“事务日志”
3. 将“备份集将过期”更改为 30 天
4. 单击“确定” '

我的理解是,这会将“关闭”事务从事务日志移动到备份并截断事务日志。

这个计划合理吗?之后我需要手动调整日志文件的大小吗?

谢谢你的时间。

0 投票
1 回答
375 浏览

sql-server - SSMS 如何获取事务日志使用情况?

当您右键单击数据库、报告...磁盘使用情况时,我会收到一份报告。因为我的权限有限,所以我只获得了显示“事务日志空间使用情况”的顶部部分——仅这个数字就对我有用。

但是,后来我收到有关无权运行 DBCC showfilestats 的错误消息,而且我也绝对无权访问 sys.dm_os_performance_counters 或 DBCC SQLPERF('logspace')。

如果我能得到那个最高的数字,那将很有用。不幸的是,我当然不能运行分析器,所以我不知道它发出了什么命令或查询来获取数据......

0 投票
1 回答
2276 浏览

sql-server-2005 - SQL Server 2005 事务日志总是太大

我已经阅读了其他帖子并进行了数小时的研究,但仍然没有更聪明。我有一个数据库,数据文件中有 65 gig,当前日志文件中有 230 gig。我正在尝试重新设计数据库以提高效率,但是在进行架构更改时,日志文件会尝试变得太大,并且 Windows 会抱怨磁盘空间不足。

我试图缩小文件,最低的文件是~220 gig。使用 DBCC OPENTRAN 我可以看到没有活动的事务。使用 select * FROM sys.dm_tran_database_transactions 我可以看到没有什么有趣的事情发生。

我对我所读内容的解释是,只有在存在活动事务并且提交所有事务后,日志文件才应该很大,理论上该文件应该能够缩小到非常小的东西。正确的?

我已经尝试使用 truncate_only 备份日志,然后是 dbcc shrinkfile (dbname, 2)

我该怎么做才能将此文件缩小到更易于管理的内容?

0 投票
2 回答
4416 浏览

sql-server-2008 - SQL - 收缩数据库日志文件

我正在尝试缩小我的数据库日志文件。我试图运行:

我收到错误消息:

消息 155,级别 15,状态 1,第 3 行“truncate_only”不是可识别的备份选项。

我错过了什么吗?

0 投票
5 回答
11730 浏览

sql-server - DBCC 收缩文件给出错误

我正在尝试使用 缩小我的日志文件DBCC SHRINKFILE(db_2.ldf),这是日志文件的名称

每次都给我错误:

8985,级别 16,状态 1,第 1 行在 sys.database_files 中找不到数据库 db 的文件 'FIelD'。该文件不存在或已被删除。

您能否建议我可以做些什么来解决它。

0 投票
1 回答
1768 浏览

sql-server - 从损坏的 SQL Server 数据库中恢复事务日志

我们有一个每周以简单模式备份的数据库。昨天,我们有一个 crc 错误损坏了 mdf 文件,我们无法保存它。我从上周恢复了备份,但现在我们从备份时间到恢复时间有一个差距。由于我有来自该数据库的 ldf 文件,有没有办法“重播”该事务日志以填补空白?

我尝试将 ldf 文件重新附加到恢复的 mdf 文件,但 SQL Server 不允许我这样做。(当我重新附加数据库时,它只是创建一个具有不同名称的新 ldf 文件。)

任何想法都会有所帮助。这是要丢失的大量数据,虽然它不是关键数据,但我想找回它(以及学习和学习如何去做。)

0 投票
1 回答
2415 浏览

sql - SQL Server 2005 - 如何找出已恢复的事务日志文件

如何在 SQL Server 2005 中找出使用 SQL 恢复了哪些事务日志备份文件?

0 投票
3 回答
16103 浏览

db2 - DB2 事务日志已满。如何冲洗/清除它?

我正在做一个关于我正在学习的关于调整 DB2 的课程的实验。我正在使用 Amazon (aws) 的 EC2 进行实验。

然而,我的问题是,我必须在 DB2 中针对行压缩测试非压缩,为此我创建了一个运行这些实验的 bsh 文件。但是当我到达我的压缩部分时,我收到错误“<strong>事务日志已满”;并且无论我将插入设置得有多低,它都会抱怨我的事务日志。

我已经在 Google 上搜索了一天,试图找到某种方法来刷新/清除日志,或者只是摆脱它,我不需要它。我试图增加尺寸,但没有任何帮助。

拜托,我希望有人能解决这个令人沮丧的问题

谢谢 - 梅斯蒂卡

0 投票
2 回答
1707 浏览

sql-server - Sql Server:分块删除仍会填满事务日志;失败时,所有删除都回滚 - 为什么?

这是我的场景:我们有一个数据库,我们称它为 Logging,其中包含一个保存来自 Log4Net 的记录(通过 MSMQ)的表。数据库的恢复模式设置为简单:我们不关心事务日志——它们可以翻转。

我们有一个作业,它使用 sp_spaceused 中的数据来确定我们是否达到了某个大小阈值。如果超过阈值,我们将确定需要删除多少行才能将大小降低到该阈值的 x%。(顺便说一句,我正在使用 exec sp_spaceusedMyLogTableTRUE获取行数和它们平均大小的粗略近似值,尽管我不相信这是最好的方法。但这是一个不同的问题。)

然后我尝试通过循环调用基本上执行此操作的 sproc 来分块删除(例如,一次 5000 个):

直到我删除了需要删除的内容。

问题是:如果我有很多行要删除,事务日志文件就会填满。我可以通过跑步看着它成长

令我困惑的是,当作业失败时,所有已删除的行都会回滚。换句话说,似乎所有块都被(以某种方式)包装在隐式事务中。

我已经尝试明确设置隐式事务关闭,将每个 DELETE 语句包装在 BEGIN 和 COMMIT TRAN 中,但无济于事:要么所有删除的块都成功,要么根本没有。

我知道简单的答案是,使您的日志文件足够大,以处理您曾经删除的尽可能多的记录,但是,为什么这被视为单个事务?

抱歉,如果我错过了一些简单的事情,但是我查看了很多有关日志文件增长、恢复模式等的帖子,但我无法弄清楚这一点。

另一件事:一旦作业失败,日志文件会在一段时间内保持在 95% - 100% 左右,然后再回落。但是,如果我运行

它立即回落到大约 5% 的利用率。

TIA。