sybase之error: 926解决方法

2018-11-25  本文已影响0人  在路上的小海贼

上午上班后发现数据库不能使用,PB和advantage不能连接。报错:Error: 926,Database '***' cannot be opened. An earlier attempt at recovery marked it 'suspect'。按照公司的文档和网上查到的信息执行如下:

第一步:isql(sa身份)登录sybase

sp_configure "allow updates",1

go

update master..sysdatabases set status = -32768 where name = "database_name"

go

/where 子句不可丢,不然数据库将无法恢复/

shutdown with nowait

go

第二步:isql(sa身份)重新登录sybase

update master..sysdatabases set status =0 where name = "database_name"

go

sp_configure "allow updates",0

go

shutdown with nowait

go

第三步:isql(sa身份)重新登录sybase,就可以了。

执行完之后PB和advantage可以连接数据库,但响应速度很慢,tomcat和自动化系统客户端不能连接数据库,报错; Error: 7214,上网查了一下应该是数据库日志出现了错误,重建日志如下:

(1)赋予sa用户sybase_ts_role的角色

isql -Usa -P

1>sp_role "grant","sybase_ts_role",sa

2>go

1>quit

(2)将数据库置为"bypass recovery"状态

isql -Usa -P

1>sp_configure "allow updates",1

2>go

1>use master

2>go

1>update sysdatabases set status=-32768

2>where name="database_name"

3>go

1>shutdown with nowait

2>go

(3)rebuild数据库日志

重启Server

isql -Usa -P

1>use master

2>go

1>dbcc rebuild_log(database_name,1,1)

2>go

1>shutdown with nowait

2>go

(4)重启server

1>use master

2>go

1>update sysdatabases set status=0 where name="database_name"

2>go

1>sp_configure "allow updates",0

2>go

1>shutdown with nowait

2>go

(5)在重启server之后,如果数据库恢复正常,rebuild log工作将会成功完成,否则要恢复数据库备份,使用dump database或bcp命令。

数据库响应速度很慢的解决方法如下:

1.用下面命令看看这2个值设置到多少为好

sp_countmetadata "open objects" //最大打开对象

sp_countmetadata "open indexes" //最大索引

发现自己的测试库都是500,决定扩一下

2.用sp_configure 配置这2个参数

sp_configure 'number of open indexes',2500

go

sp_configure 'number of open objects',2500

go

3.重新启动服务器

由于自己的测试数据库昨天没有执行过特殊配置操作,只有今天系统第一次启动时太慢而强制关机了一次,网上介绍这种情况多是由于sybase执行任务时突然停电导致。

上一篇下一篇

猜你喜欢

热点阅读