ws_dmgy 发表于 2009-02-13 11:35

紧急:数据库频繁截断日志

紧急求助:数据库频繁截断日志,数据库日志文件里都是截断日志的报告,请问哪里出问题了?多谢!

01:00000:00209:2009/02/12 10:38:41.90 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.90 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.90 serverAttempt by user 3 to dump xact on db db_01 with NO_LOG
01:00000:00209:2009/02/12 10:38:41.93 serverAttempt by user 3 to dump xact on db db_01 with NO_LOG was successful
01:00000:00209:2009/02/12 10:38:41.93 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.93 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.93 serverAttempt by user 3 to dump xact on db db_02 with NO_LOG
01:00000:00209:2009/02/12 10:38:41.94 serverAttempt by user 3 to dump xact on db db_02 with NO_LOG was successful
01:00000:00209:2009/02/12 10:38:41.94 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.94 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.94 serverAttempt by user 3 to dump xact on db db_03 with NO_LOG
01:00000:00209:2009/02/12 10:38:41.94 serverAttempt by user 3 to dump xact on db db_03 with NO_LOG was successful
01:00000:00209:2009/02/12 10:38:41.94 serverWARNING: ***************************
01:00000:00209:2009/02/12 10:38:41.94 serverWARNING: ***************************

chuxu 发表于 2009-02-13 11:49

这个是用户执行了dump tran的命令呀?看一下user 3 是哪个用户

D_D_D_D 发表于 2009-02-13 11:56

没有任何问题,放心吧

ws_dmgy 发表于 2009-02-13 12:32

我只贴出了一部分日志,后面还有很多的,总是在清理日志,每隔1分钟或3分钟!为什么截断日志会这么频繁呢?
1> select name from syslogins
2> where suid=3
3> select name from sysusers
4> where uid=3
5> go
name
------------------------------
boss

(1 row affected)
name
------------------------------
probe

(1 row affected)

[ 本帖最后由 ws_dmgy 于 2009-2-13 12:46 编辑 ]

ws_dmgy 发表于 2009-02-13 12:53

还有个问题,数据库总是报tempdb空间不足的错误。tempdb的大小为500M,重启sybase过后,没几天又报tempdb大小不够。大家帮忙分析一下原因,呵呵。1.可能是临时对象建的多而且建的快了,导致tempdb空间不够;2可能是复杂查询,order by 和group by查询,占了很大的tempdb空间。请问:我如何判断出来是以上的哪种呢?如果是第二种,我如何查找出占用tempdb空间很大的SQL语句呢?多谢啦

01:00000:00004:2009/02/09 09:02:08.87 server3 task(s) are sleeping waiting for space to become available in the log segment for database tempdb.
01:00000:00004:2009/02/09 09:03:09.45 server4 task(s) are sleeping waiting for space to become available in the log segment for database tempdb.
01:00000:00004:2009/02/09 09:04:10.07 server5 task(s) are sleeping waiting for space to become available in the log segment for database tempdb.
01:00000:00004:2009/02/09 09:05:10.74 server5 task(s) are sleeping waiting for space to become available in the log segment for database tempdb.
01:00000:00004:2009/02/09 09:06:11.25 server4 task(s) are sleeping waiting for space to become available in the log segment for database tempdb.
01:00000:00004:2009/02/09 09:07:11.81 server5 task(s) are sleeping waiting for space to become available in the log segment for database tempdb.

chuxu 发表于 2009-02-13 13:53

如果是几天之后满的,sp_helpdb tempdb看一下到底是data还是log比较占空间。

如果是log ,tempdb可以加上 trunc log on chkpt的选项,保证tempdb的log能别截断。
如果是data,就要看为什么临时表空间不被释放了,是否是手工在tempdb建立表了。

[ 本帖最后由 chuxu 于 2009-2-13 13:55 编辑 ]

ws_dmgy 发表于 2009-02-13 14:12

trunc log on chkpt是加上了的,应该不是log占空间。我需要知道怎么查看,是谁(SQL)总是在不停地往tempdb建表,还有,究竟tempdb里有哪些东西,为什么会这么占空间,哪个表最占空间。sybase有没有提供系统存储过程,来帮助分析的呀? 另外,怎样查看tempdb剩余空间多少,sp_helpdb tempdb只能查看总共的空间大小。多谢!

[ 本帖最后由 ws_dmgy 于 2009-2-13 14:22 编辑 ]

maolinzhou 发表于 2009-02-13 15:15

sp_helpdb里不是有free kbytes吗,你看看他,不过你的实时看
sp_object_stats看看tempdb频繁争用锁的表

ws_dmgy 发表于 2009-02-13 15:46

sp_helpdb的free kbytes,是指tempdb所在设备剩余大小,不是tempdb剩余大小吧

camham 发表于 2009-02-17 17:01

sp_spaceused tempdb
页: [1] 2
查看完整版本: 紧急:数据库频繁截断日志