VMware Cloud Community
Daveg225
Contributor
Contributor

How to Fix Bad Page ID detected during Read

Sorry if I missed a similar thread but anything close seems to confuse me more !

Running on separate MS 2003 server hardware with built in MSSQL$MSDE_VC. VirtualCenter Server 2.0.2, License server on same box too.

I assume this is MS SQL Server "Express" ; I selected internal one. The MS SQL Server Service Manager shows Ver 8.00.760

I also have MDAC 2.8 SP2 ( does installing MDAC newer version's upgrade the MS SQL Server ?)

I basically want to fix the I/O error that I get every time I try to start the VM VirtualCenter Server "SERVICE".

The logs at C:\windows\temp\vpx\*.log shows:

Locale subsystem initialized from E:\Program Files\VMware\VMware VirtualCenter 2.0\locale/ with default locale en.

Failed to load tableDef 42 from database: "ODBC error: (HY000) - [ODBC SQL Server Driver][SQL Server]I/O error (bad page ID) detected during read at offset 0x00000000264000 in file 'C:\Program Files\Microsoft SQL Server\80\Tools\..\..\MSSQL$MSDE_VC\Data\VCDB.mdf'." is returned when executing SQL statement "SELECT ID, NAME, STORAGE_URL, CAPACITY, FREE_SPACE, TYPE, INFO, CAPABILITY, DATACENTER_ID FROM VPX_DATASTORE"

Failed to load DATASTORE table from database

Failed to intialize VMware VirtualCenter. Shutting down...

I have found "close" threads to address this, but the fix info is not clear to me.

Is there a "DBCC Checkdb" command or is this NOT for the SQL express version I have ?

Are there any other commands to repair the read error that may be "old" data, or is my database corrupt?

If I have to re-install - can I salvage the information from the database somehow?

Thank-You

Reply
0 Kudos
2 Replies
AndreTheGiant
Immortal
Immortal

I'm not sure that SQL Express will work with VC 2.0.x.

Use VC 2.5.x instead.

Andre

**if you found this or any other answer useful please consider allocating points for helpful or correct answers

Andrew | http://about.me/amauro | http://vinfrastructure.it/ | @Andrea_Mauro
Reply
0 Kudos
Daveg225
Contributor
Contributor

What I have found out:

VC 2.02 comes with a built in MSDE that generally works well if your host Server count is low ( mine is 5 ), with 30 VM's.

For the specific error that I have ( basically corrupt SQL database ) there is no fix per say due to the limited tools for MSDE.

Microsoft SQL Server 2000 Desktop Engine = "MSDE" which VMware uses "built in" with Virtual Center when you select that option.

So the "easy" fix was to use another physical server and install VC from scratch, again using the built in MSDE.

Then using the Vclient to access the "new" VC and its database, I populated by adding the 5-host servers. The VM's automatically appeared since all this info is stored on the hosts. The only thing I had to add was a Template.

It was so easy ( for a low count of hosts ) that I was making this so much harder looking for a database fix tool.

Reply
0 Kudos