cancel
Showing results for 
Search instead for 
Did you mean: 

Can not restart DB after failed recovery...suspect

Former Member
0 Kudos

Database 'XXXXXXXX' cannot be opened. An earlier attempt at recovery marked it 'suspect'. Check the ASE errorlog for information

when I try to use the database.

This is after trying to change the suspect flag then a shutdown, and reboot..

I really don't care about the data in the database.... as long as it comes up..

I have spent some time to create the database and all the datafiles needed (there are many) which took some time.. so I would rather not  have to do that all over again..

Is there a way I can get the database up and running then drop the existing tables?

here is a section of the log..

Run the DBCC command 'dbcc tablealloc' for both the objects, object id = 99, partition id = 24480119.

00:0006:00000:00001:2014/04/16 08:47:47.93 server  Error: 605, Severity: 21, State: 1

00:0006:00000:00001:2014/04/16 08:47:47.93 server  An attempt was made to fetch logical page '0' from cache 'default data cache'. Page belongs to database 'XXXXXXX' (6), object '<Unknown>' (0), index '<Unknown>' (0), partition '<Unknown>' (24480119) and not to database 'XXXXXXX' (6), object '' (99), index '<Unknown>' (0), partition '<Unknown>' (99).

00:0006:00000:00001:2014/04/16 08:47:47.93 server  Unable to proceed with the recovery of dbid <6> because of previous errors.

This is just to test a stored proc.. so I can do what I need to ...to get 10 tables loaded..  EVEN if I have to drop and start over.. (hopefully not) there is NO backup at this point..

ase 15.7

-Ken

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member188958
Active Contributor
0 Kudos

Hi Ken,

After attempting to clear the suspect flag and then rebooting, which of the messages are you getting during recovery of the database?

If it is "...An earlier attempt at recovery marked it 'suspect'..." it means that you didn't manage to get the suspect flag cleared properly.  Please try again and post the exact steps you used if the second try isn't successful.

If it is the 605, then it sounds as if your first allocation page (page 0) may have been overwritten by something else.   Are you using file system devices or raw partitions for the devices?  It is likely you will have to drop and recreate the database.  If using raw partitions, the problem may be due to how the disk is partitioned (overlapping partitions are a possibility) and that would need to be identified and corrected before re-creating the database to prevent the problem from happening again.

-bret

Former Member
0 Kudos

I am on a windows 2008r2 host:

sp_configure "allow updates", 1

go

use master

go

update sysdatabases

set status = status ^ 256

where status & 256 = 256

and name = <dbname>

go

sp_configure "allow updates", 0

go

rebooted...

I think it just tried to recover again and got the same error...

In the log (further up) had this read error trace...

Starting diagnostics for read failure:

00:0006:00000:00001:2014/04/16 08:47:45.30 server  Device Information:

  Device number = 0

  Phyname = E:\Sybase\data\master.dat

00:0006:00000:00001:2014/04/16 08:47:45.30 server  Buffer Information:

  Buf addr = 0x0000000069B4CAA8, Mass addr = 0x0000000069B4CAA8

  Buf pageno = 0, Mass pageno = 0, dbid = 6

00:0006:00000:00001:2014/04/16 08:47:45.30 server 

  Buf virtpg = 0, Mass virtpg = 15876

  Buf stat = 0x1, Mass stat = 0x1008

  Mass keep = 1, Mass awaited = 0

00:0006:00000:00001:2014/04/16 08:47:45.30 server 

PAGE DEBUG ELEMENT: buffer state = 1d;  prior to io ptnid = -1, page number =0;  page timestamp lo=0 hi=0;  latch requested mode=1, type=32;  latch result = 1;  number of times searched = 0.

00:0006:00000:00001:2014/04/16 08:47:45.30 server  Page Information from first read attempt: Page read from disk ppageno = 0, pptnid = 24480119, pindid = 0 pnextpg = 76512272, pprevpg = 0 plevel = 239, pstat = 0x1 pts_hi = 65535, pts_lo = 14

00:0006:00000:00001:2014/04/16 08:47:45.30 server  Page Information from second read attempt: Page read from disk ppageno = 0, pptnid = 24480119, pindid = 0 pnextpg = 76512272, pprevpg = 0 plevel = 239, pstat = 0x1 pts_hi = 65535, pts_lo = 14

00:0006:00000:00001:2014/04/16 08:47:45.30 server  SDES Information:

  dbid = 6, objid = 99, sptnid = 99 scur.pageid = 0

  sstat = 0x0, sstat2 = 0x0

  suid = 1, cacheid = 0

00:0006:00000:00001:2014/04/16 08:47:45.30 server  PSS Information:

  pstat = 0x1000, pcurdb = 1, pspid = 1

  p2stat = 0x1110, p3stat = 0x10904

  plasterror = 0, preverror = 0, pattention = 0

00:0006:00000:00001:2014/04/16 08:47:45.30 server  End diagnostics for read failure:

00:0006:00000:00001:2014/04/16 08:47:46.18 kernel  Symbolic stack trace information is successfully loaded

Former Member
0 Kudos

Ok.. so I am at the point where I think I just need to drop the database..

However .. can you tell me what I need to do with the devices connected to it?

Do I have to drop them too?  and rebuild them?  or can I drop the database.. create a new one and connect the devices to the new database?

It took 2 days to build and assign all the devices.. trying to prevent doing that.. again

Thanks

-Ken

former_member188958
Active Contributor
0 Kudos

You don't need to drop the devices.

All you should have to do is drop the database and run the create database command again.

It should be fine to use the same devices.