Results 1 to 4 of 4

Thread: Error : 806 -- Could not find virtual page...

  1. #1
    Gregory Guest

    Error : 806 -- Could not find virtual page...

    at SQL Server startup, in error log:
    Error : 806, Severity: 21, State: 1
    Could not find virtual page for logical page <number> in database &#39;EMGTEST&#39;

    Error : 3414, Severity: 21, State: 1
    Database &#39;EMGTEST&#39; (dbid 7): Recovery failed. Please contact Technical Support for further instructions.

    Database &#39;EMGTEST&#39; cannot be opened - it has been marked SUSPECT by recovery. The SA can drop the database with DBCC.


    .....

    I reset status to Emergency mode (sysdatabases.status = -32768),
    run dbcc checkdb, dbcc newalloc, dbcc textall...it all looks just fine.
    I also changed database status to 12 (sysdatabases.status = 12 - select into/bulkcopy and trunc. log on chkpt.) and then run dbcc checkdb, dbcc newalloc, dbcc textall again. looked just fine.
    but, if I restarted server , database will be marked &#39;suspect&#39; again, because of Error 806.

    any ideas?

    Thanks.

  2. #2
    Kenneth Wilhelmsson Guest

    Error : 806 -- Could not find virtual page... (reply)

    Hi Gregory.

    Just some guessing:
    Seems like the internal allocation got screwed somewhere.
    Do you have any hardware/disk problems? Controller cache enabled? Corrupt device file? Bad clusters? Anything useful in the Eventlog?

    Have you tried dbcc fix_al ? I know it&#39;s for 2540 errors, but I&#39;ve seen suggestions to use it for other errors also, so it might work. Never tried it myself on anything else than 2540, but you never know. ;-)

    Otherwise, if it keeps on being suspect, you might have to drop the db and recreate. It would be interesting to know if the datapage reported in the errormessage is accessible in emergency mode, and if you can bcp/select the data out from the db undamaged.

    /Kenneth
    ------------
    Gregory at 5/19/99 1:55:56 PM

    at SQL Server startup, in error log:
    Error : 806, Severity: 21, State: 1
    Could not find virtual page for logical page <number> in database &#39;EMGTEST&#39;

    Error : 3414, Severity: 21, State: 1
    Database &#39;EMGTEST&#39; (dbid 7): Recovery failed. Please contact Technical Support for further instructions.

    Database &#39;EMGTEST&#39; cannot be opened - it has been marked SUSPECT by recovery. The SA can drop the database with DBCC.


    .....

    I reset status to Emergency mode (sysdatabases.status = -32768),
    run dbcc checkdb, dbcc newalloc, dbcc textall...it all looks just fine.
    I also changed database status to 12 (sysdatabases.status = 12 - select into/bulkcopy and trunc. log on chkpt.) and then run dbcc checkdb, dbcc newalloc, dbcc textall again. looked just fine.
    but, if I restarted server , database will be marked &#39;suspect&#39; again, because of Error 806.

    any ideas?

    Thanks.

  3. #3
    Gregory Guest

    Error : 806 -- Could not find virtual page... (reply)

    dbcc fix_al didn&#39;t help.after sql server re-start, database marked &#39;suspect&#39;:
    only error I see is error 806 - &#39;Could not find virtual page for logical page 2050822144 in database &#39;EMGTEST&#39;&#39;

    NT application log didn&#39;t show anything useful.

    I&#39;ve tryed to dbcc page() to (maybe!) find object id, but it didn&#39;t work.
    I can access data and use database, if I reset database status to let&#39;s say 12
    (select into/bulkcopy, trunc. log on chkpt.)

    I don&#39;t want to re-create database (it&#39;s test database anyway), I want to find a way to fix it
    ------------
    Kenneth Wilhelmsson at 5/20/99 7:55:32 AM

    Hi Gregory.

    Just some guessing:
    Seems like the internal allocation got screwed somewhere.
    Do you have any hardware/disk problems? Controller cache enabled? Corrupt device file? Bad clusters? Anything useful in the Eventlog?

    Have you tried dbcc fix_al ? I know it&#39;s for 2540 errors, but I&#39;ve seen suggestions to use it for other errors also, so it might work. Never tried it myself on anything else than 2540, but you never know. ;-)

    Otherwise, if it keeps on being suspect, you might have to drop the db and recreate. It would be interesting to know if the datapage reported in the errormessage is accessible in emergency mode, and if you can bcp/select the data out from the db undamaged.

    /Kenneth
    ------------
    Gregory at 5/19/99 1:55:56 PM

    at SQL Server startup, in error log:
    Error : 806, Severity: 21, State: 1
    Could not find virtual page for logical page <number> in database &#39;EMGTEST&#39;

    Error : 3414, Severity: 21, State: 1
    Database &#39;EMGTEST&#39; (dbid 7): Recovery failed. Please contact Technical Support for further instructions.

    Database &#39;EMGTEST&#39; cannot be opened - it has been marked SUSPECT by recovery. The SA can drop the database with DBCC.


    .....

    I reset status to Emergency mode (sysdatabases.status = -32768),
    run dbcc checkdb, dbcc newalloc, dbcc textall...it all looks just fine.
    I also changed database status to 12 (sysdatabases.status = 12 - select into/bulkcopy and trunc. log on chkpt.) and then run dbcc checkdb, dbcc newalloc, dbcc textall again. looked just fine.
    but, if I restarted server , database will be marked &#39;suspect&#39; again, because of Error 806.

    any ideas?

    Thanks.

  4. #4
    Kenneth Wilhelmsson Guest

    Error : 806 -- Could not find virtual page... (reply)

    How big is the database?
    Page no 2050822144 is way off in space.
    If it were correct, it should be located 4.200.083.750.912 bytes from page 0 where the database starts. (Don&#39;t have BOL at hand, but I&#39;m pretty sure that logical pages translates to the actual sequence of linked pages that make up the physical database. You might want to check up on this, don&#39;t take my word for it =;-)

    If I&#39;m right, you might have an object somewhere with a broken pointer pointing at this bogus page, and when recovery tries to find the virtual page which should point to this logical page and it obvoiusly isn&#39;t there, recovery assumes the db is corrupt and switches to suspect mode...
    ... it&#39;s a two cent theory anyway.. ;-)

    It&#39;s a bit strange though, that dbcc doesn&#39;t show anything

    As I&#39;m sure you already know, BOL mostly relates 806 errors to hardware.
    You might have a loose cord somewhere...?

    /Kenneth

    ------------
    Gregory at 5/20/99 9:21:52 AM

    dbcc fix_al didn&#39;t help.after sql server re-start, database marked &#39;suspect&#39;:
    only error I see is error 806 - &#39;Could not find virtual page for logical page 2050822144 in database &#39;EMGTEST&#39;&#39;

    NT application log didn&#39;t show anything useful.

    I&#39;ve tryed to dbcc page() to (maybe!) find object id, but it didn&#39;t work.
    I can access data and use database, if I reset database status to let&#39;s say 12
    (select into/bulkcopy, trunc. log on chkpt.)

    I don&#39;t want to re-create database (it&#39;s test database anyway), I want to find a way to fix it
    ------------
    Kenneth Wilhelmsson at 5/20/99 7:55:32 AM

    Hi Gregory.

    Just some guessing:
    Seems like the internal allocation got screwed somewhere.
    Do you have any hardware/disk problems? Controller cache enabled? Corrupt device file? Bad clusters? Anything useful in the Eventlog?

    Have you tried dbcc fix_al ? I know it&#39;s for 2540 errors, but I&#39;ve seen suggestions to use it for other errors also, so it might work. Never tried it myself on anything else than 2540, but you never know. ;-)

    Otherwise, if it keeps on being suspect, you might have to drop the db and recreate. It would be interesting to know if the datapage reported in the errormessage is accessible in emergency mode, and if you can bcp/select the data out from the db undamaged.

    /Kenneth
    ------------
    Gregory at 5/19/99 1:55:56 PM

    at SQL Server startup, in error log:
    Error : 806, Severity: 21, State: 1
    Could not find virtual page for logical page <number> in database &#39;EMGTEST&#39;

    Error : 3414, Severity: 21, State: 1
    Database &#39;EMGTEST&#39; (dbid 7): Recovery failed. Please contact Technical Support for further instructions.

    Database &#39;EMGTEST&#39; cannot be opened - it has been marked SUSPECT by recovery. The SA can drop the database with DBCC.


    .....

    I reset status to Emergency mode (sysdatabases.status = -32768),
    run dbcc checkdb, dbcc newalloc, dbcc textall...it all looks just fine.
    I also changed database status to 12 (sysdatabases.status = 12 - select into/bulkcopy and trunc. log on chkpt.) and then run dbcc checkdb, dbcc newalloc, dbcc textall again. looked just fine.
    but, if I restarted server , database will be marked &#39;suspect&#39; again, because of Error 806.

    any ideas?

    Thanks.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •