我从syslog中了解到 - 必要的信息记录到文件中,以便可以根据存储在syslog文件中的信息执行回滚。 从过去几个月开始,我在sybase数据库中面临着很高的syslog使用率。在高syslog使用时检查数据库活动,无法找到任何可能导致此问题的查询。我有“trunc log on chkpt”dboption也已启用。
sp_helpthreshold可以获得
segment name free pages last chance? threshold procedure
--------------- ------------- --------------- ----------------------
logsegment 109296 1 sp_thresholdaction
有人可以指出是否需要任何其他设置来控制syslog使用?
sp_helpdb DB01
的结果name db_size owner dbid created durability status
------- ------------- -------- ------- ------------ ------------- ------------------------------------------------------------------------
tlew04 33000.0 MB sa 13 Apr 17, 2013 full select into/bulkcopy/pllsort, trunc log on chkpt, abort tran on log full
device_fragments size usage created free kbytes
------------------- ------------- -------------------- ------------------- ----------------
dev29 1000.0 MB data only May 26 2013 5:17AM 928
dev32 250.0 MB log only May 26 2013 5:17AM not applicable
dev29 250.0 MB data only May 26 2013 5:17AM 0
dev32 7.0 MB log only May 26 2013 5:17AM not applicable
dev38 13.0 MB log only May 26 2013 5:17AM not applicable
dev29 1450.0 MB data only May 26 2013 5:17AM 240
dev38 230.0 MB log only May 26 2013 5:17AM not applicable
dev29 300.0 MB data only May 26 2013 5:17AM 416
dev38 200.0 MB log only May 26 2013 5:17AM not applicable
dev29 500.0 MB data only May 26 2013 5:17AM 1230
dev38 300.0 MB log only May 26 2013 5:17AM not applicable
dev29 500.0 MB data only May 26 2013 5:17AM 876
dev38 100.0 MB log only May 26 2013 5:17AM not applicable
dev29 200.0 MB data only May 26 2013 5:17AM 0
dev38 200.0 MB log only May 26 2013 5:17AM not applicable
dev29 3200.0 MB data only May 26 2013 5:17AM 2316
dev38 400.0 MB log only May 26 2013 5:17AM not applicable
dev29 200.0 MB data only May 26 2013 5:17AM 0
dev38 200.0 MB log only May 26 2013 5:17AM not applicable
dev29 18555.0 MB data only May 26 2013 5:17AM 9156764
dev35 3845.0 MB data only May 26 2013 5:17AM 3921884
dev1 1100.0 MB log only Jun 8 2014 9:06AM not applicable
column1
-----------------------------------------------------
log only free kbytes = 3059998
答案 0 :(得分:1)
如您sp_helpdb
输出中所示,您有3000Mb的日志空间,目前有2988Mb可用空间,因此此时此问题尚未发生。
假设您没有使用Sybase Replication Server,可能发生的情况是您有一个长时间运行的事务,它会阻止日志中的截断点移动。这反过来导致日志在事务可以提交之前填满,并且可以发生检查点和截断。
换句话说,你有10个交易,1到10,按顺序执行。如果2到10完成,但1仍然打开,则事务日志将不会被截断,直到1完成。
要查看您是否有长时间运行的事务,您需要检查master..syslogshold
,它显示每个数据库中最早运行的事务。
您可以尝试解决此问题。
增加事务日志大小。目前,您似乎已将事务日志设置为大约数据大小的10%。您可以尝试将其增加到15-20%,并查看额外空间是否为长时间运行的事务提供了足够的时间来完成。
另一件事是尝试弄清楚哪些事务正在运行很长时间,并查看是否可以优化这些查询以减少运行时间。