appleshuffle 发表于 2012-12-14 09:50

Could not find virtual page for logical page 3072 in database 'sybsystemdb'

运行该语句:
use sybsystemdb
go
sp_spaceused
后返回
sybsystemdb的大小,但不能返回 reserved, data, index_size, unused等信息并显示Could not find virtual page for logical page 3072in database 'sybsystemdb'。
请问各位能用什么方法去排除这个错误?谢谢。

hobbylu 发表于 2012-12-14 14:35

重新建库可以解决问题

appleshuffle 发表于 2012-12-16 14:49

回复 2# hobbylu


    请问如何重建?我尝试用dbcc dbrepair来删除该数据库,但提示this database is not marked suspect so that cannot be dropped. 而直接的drop database也不能运行,那怎么才能删除后重建呢?

hobbylu 发表于 2012-12-17 09:46

直接删除系统表吧
delete from sysusages where dbid=db_id('sybsystemdb')
go
delete from sysdatabases where name='sybsystemdb'
go

sybman 发表于 2012-12-22 15:50

需要手工修改sysdatabase的status位把数据库置成suspect状态,google一下就能找到如何做了

sybman 发表于 2012-12-22 15:50

需要手工修改sysdatabase的status位把数据库置成suspect状态,google一下就能找到如何做了

appleshuffle 发表于 2012-12-24 17:34

回复 6# sybman


    谢谢回复,我已经按版主所说的直接从系统表里删除对应的数据库并重建成功。我对你所提出的这个方法也很有兴趣,稍后试下,谢谢分享。
页: [1]
查看完整版本: Could not find virtual page for logical page 3072 in database 'sybsystemdb'