SYBASE 日志空间满了的几种情况

1、在数据库执行SQL语句时,执行不成功,报错:日志空间已满(***log full**)的错误

解决方法:执行 dump transaction DB_TASK with truncate_only   即可

2、在java项目运行时控制台报错:Space available in the log segment has fallen critically low in database 'DB_TASK_R11'.  All future modifications to this database will be aborted until the log is successfully dumped and space becomes available.

这个时候再用1的方法就不可以了,可以用一下方法:

sp_helpdb 'DB_TASK_R11'   -----在【device_fragments】字段查到对应日志文件的名称,例如:DEV_TASK_LOG01_R11

sp_helpdevice 'DEV_TASK_LOG01_R11'  ------查看原来日志文件存储的物理位置,查看查询结果的【physical_name】字段 结果为:C:\sybase\data\DEV_TASK_LOG01_R11.dat

 

disk init name = 'DEV_TASK_LOG02_R11',
physname = 'C:\sybase\data\DEV_TASK_LOG02_R11.dat',
size = '150M', dsync = false
go              --------在同样的物理位置上,参照日志文件1的名字创建日志文件2,大小视数据库的情况而定,一般不要超过DATA的大小

 

ALTER DATABASE DB_TASK_R11
log ON DEV_TASK_LOG02_R11 = 150
go                      ----------将新建的日志挂到对应数据库上

 

百度查询的是需要重启数据库才会生效,但是我没有重启数据库,重新运行java的web项目也没有在报这个错误,如果还报错可以重启一下数据库应该就好了。

 

PS:SELECT COUNT(*) FROM DB_TASK_R11..syslogs      ---这个语句可以查看数据库的日志里面的记录数

 

转载于:https://www.cnblogs.com/latter/p/6101711.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值