标签: transaction-log

SQL Server:如何增加事务日志的大小?

如何增加事务日志的大小?也可以暂时增加事务日志吗?

假设我有以下情况。我的Delete操作对于当前事务日志来说太大了。我想要:

  • 增加事务日志(是否可以检测当前大小?能否告诉我我需要多少事务日志才能进行操作?)
  • (执行我的操作)
  • 备份事务日志
  • 恢复事务日志的大小。

t-sql sql-server transaction-log

7
推荐指数
1
解决办法
2万
查看次数

SQL Server Tempdb LOG文件越来越多

在SQL Server 2000系统上,我有一个templog.ldf文件似乎无限制地增长!但是当我检查时,tempdb中没有任何打开的事务(使用DBCC OPENTRAN),也没有在tempdb中使用显式事务.

但是,我在我的存储过程中使用临时表.谁知道ASP.NET数据访问对象可能在幕后做什么?数据库支持ASP.NET网站.

无论如何,tempdb.mdf文件 - tempdb数据文件 - 是一个非常合理的700 MB.templog.ldf文件一天可以增长到30 GB!如果我没有耗尽磁盘空间,可能会更多.我没有明确地删除存储过程中的#tables,但同样,mdf文件似乎永远不会变得非常大.

当没有未完成的交易时,为什么交易日志会增长?事务日志是否会回收空间?此外,DUMP TRAN WITH NO_LOG不会缩小文件,也不会通过截断事件检查CHECKPOINT事件.在tempdb上启用了登录chkpt.停止SQL Server清除tempdb(可能是DBCC SHRINKFILE,但我还没有这样做).

谢谢你的帮助!

size transaction-log sql-server-2000 tempdb

7
推荐指数
1
解决办法
1万
查看次数

事务日志驱动器是否需要与数据库驱动器一样快?

我们告诉客户端将SQL Server数据库文件(mdf)放在与事务日志文件(ldf)不同的物理驱动器上.该技术公司(由我们的客户雇用)希望将事务日志放在比数据库驱动器更慢(例如更便宜)的驱动器上,因为使用事务日志,您只需按顺序写入日志文件.

我告诉他们我认为驱动器(实际上是RAID配置)也需要在快速驱动器上,因为每个数据更改调用数据库需要保存在那里,以及数据库本身.

在说完之后,我意识到我并不完全确定.事务日志驱动器的速度是否会在性能上产生显着差异...如果带有数据库的驱动器速度很快?

sql-server performance drives transaction-log

7
推荐指数
1
解决办法
6938
查看次数

如何在不使日志文件失控的情况下从大表中删除过期数据?

我有一个巨大的表(30亿行),不幸的是,它包含大部分过期的数据.我想简单地删除所有这些过期的行,并保留其余的行.

我可以执行这样的语句:

delete from giganticTable where exp_date < getDate()
Run Code Online (Sandbox Code Playgroud)

执行计划以某种方式估计将删除大约4亿行.

执行时,不仅在一小时后没有完成,而且数据库事务日志文件也从6 GB增长到90 GB.请注意,在发生这种情况时,数据库处于批量记录恢复模型中.我最终取消了这个查询,因为我确信必须有更好的方法来做到这一点.

我有几个表需要执行类似的操作.如果我绝对不想恢复它们,那么删除这些行的最快和最节省空间的方法是什么?

请注意,我正在使用Microsoft SQL Server 2005.

sql sql-server-2005 transaction-log bulk sql-delete

7
推荐指数
2
解决办法
6913
查看次数

事件中心是否旨在用于事件溯源/仅追加日志架构

事件中心不允许您存储超过 7(最多 30)天的消息。具有这些限制的 Azure 建议的 PaaS 事件溯源架构是什么?如果是事件中心 + 快照,如果我们需要以某种方式重建该状态会发生什么?另外,事件中心是对 KSQL/Spark Azure 流分析的回答吗?

transaction-log azure-eventhub azure-eventhub-capture

6
推荐指数
2
解决办法
2035
查看次数

在生产中记录 SQL 查询?

我对是否也在生产中记录 SQL 查询感到进退两难。

我不知道在 PHP 中写入文件有多慢。可能一些基准测试可以给出一些答案,但我想看看你们之前的想法。

什么会使或不会使过程变慢?或者它可以依赖什么?

php mysql sql transaction-log

5
推荐指数
1
解决办法
2577
查看次数

如何查看SQL Server 2005事务日志文件

如何查看SQL Server事务日志文件(.trn)?

我希望能够在单个事务中查看trn文件.一些记录从数据库中删除,我需要知道何时,如何以及由谁.

谢谢Neal

编辑:我删除之前和之后的.bak文件,以及期间的.trn文件.

编辑(2010-11-16):详细讨论:http://www.sqlservercentral.com/Forums/Topic1019240-357-1.aspx

analysis sql-server-2005 transaction-log

5
推荐指数
1
解决办法
1万
查看次数

如何从事务日志执行SQL回滚

我的事务日志文件可以追溯到6个月.我需要从数据库中回滚2013年5月20日之后发生的所有事情.任何人都可以请教我如何做到这一点?

transaction-log rollback sql-server-2008-r2

5
推荐指数
1
解决办法
2万
查看次数

如何从TRANSACTION LOG BACKUP FILE获取SQL语句?

我只想问一下SQL Server中的事务日志.我们可以.bak在任何系统位置以格式备份这些日志文件.

问题是从事务日志备份文件中提取SQL语句/查询.我们可以使用fn_dump_dblog函数来完成它.但我们想要的是提取必须在日志中完成事务的查询或数据.

我想手动执行,就像sql server的"apex"工具一样.并且不想使用任何第三方工具.

现在我能提取table nameoperation type原木.但仍在搜索SQL语句提取.

sql-server transaction-log

5
推荐指数
1
解决办法
1928
查看次数

事务日志已满(由于没有)...但该数据库处于简单恢复模式

我支持一个古老的网络应用程序(即将退役),它仍然使用“aspnetdb”作为其身份验证系统。当我发现我的测试服务器抱怨以下错误时,我正在为它在我的测试环境中的退役做一些准备工作:

由于“NOTHING”,数据库“aspnetdb”的事务日志已满。

现在,通常我会假设问题来自数据库事务日志......但该数据库最近切换到简单恢复模式(这是测试机)。

我尝试了一些实验,但没有成功,并进行了一些谷歌搜索。有人以前见过这个错误吗?简单恢复模式下数据库的完整事务日志?

它在 SQL Server 2016 上,以 2008 兼容模式运行,因为 aspnetdb 太旧了。

sql-server transaction-log aspnetdb

4
推荐指数
1
解决办法
8511
查看次数