Na een verse installatie van Windows 2003 SP2, SQL 2005 SP2 en VC 202 patch1 krijg ik de onderstaande foutmelding zodra ik de VC service wil starten.
Dit kun je oplossen door de volgende stappen uit te voeren:
If the VirtualCenter Server service installs but does not start and logs the following error, this is a symptom that the SQL Server 2005 SP1 database is not configured correctly:
Failed to init tableDef: Column VER_ID does not exist in table VPX_VERSION. Database version may be incompatible.
This condition can occur if VirtualCenter Server was installed using a database login mapped to a user other than dbo. When the VirtualCenter login is the owner of the database, the login automatically maps to the dbo user.
There are two ways to achieve the correct configuration:
- Configure a fresh installation.
- Repair a fresh installation that does not start.
To configure a fresh installation:
- Connect to your SQL Server 2005 server with SQL Server Management Studio.
- Create a database login (*vclogin*) for VirtualCenter Server to use.
- Create a new database (*VCDB*) and change the owner from <default> to vclogin.
- Observe that vclogin maps to the dbo database user for VCDB.
- Change the default database for vclogin from master to VCDB.
- Install VirtualCenter Server according to the product documentation.
To repair a fresh installation that does not start:
If the database has already been created and VirtualCenter Server has already been installed, it is possible to modify the owner of the database with a system stored procedure. In the steps below, substitute <vcuser> and <vclogin> with your appropriate account names.
- Connect to your SQL Server 2005 server with SQL Server Management Studio.
- Go to the db_owner schema properties and change the owner from <vcuser> to dbo.
- Delete the <vcuser> database user (not the <vclogin> database login that maps to it).
- Open a new query window for the VirtualCenter database.
- Execute this command:
EXEC sp_changedbowner @loginame = ‘<vclogin>’, @map = ‘true’- Start the VirtualCenter Server service.
Reference the VirtualCenter Server Release Notes at http://www.vmware.com/support/pubs/vi_pubs.html for details on supported databases and client driver versions. For information how to identify your SQL Server version and edition, reference the Microsoft Knowlege Base article 321185 at http://support.microsoft.com/kb/321185.
De bovenstaande tekst komt van het volgende document: http://kb.vmware.com
Bij mij was dit niet de oplossing. Ik heb er uiteindelijk voor gekozen om geen gebruik te maken van een SQL account maar van een Windows (AD) account welke rechten had op VC database. Daarna starte de VirtualCenter Service gewoon op.