Migrating the vCenter Server database from SQL Express to full SQL Server (1028601)
- When performing an in place upgrade of SQL Express to SQL Server the roll up jobs will need to be created.
- You may need to migrate from SQL Express to SQL Server if you are close to or exceeding 5 hosts, 50 virtual machines, or 4 GB database size. (In Microsoft SQL Express 2008 and newer, the maximum database size is increased to 10 GB.)
Note: Ensure that you are using the dbo schema and not custom schemas in your vCenter Server database.
- Stop the VirtualCenter Server service.
- Take a complete backup of the vCenter Server database. Do not skip this step.
- Stop the vCenter Server database on the SQL Express server.
- Copy the backed up database to the full SQL Server host.
- Create a new database on the full SQL Server.
- Restore the backed up SQL Express vCenter Server database to the newly created database. To ensure a proper restore, navigate to Options and click Overwrite existing database with replace.
- The instructions above also apply when full SQL Server is installed locally on the vCenter Server Windows host. SQL Express 2005 is upgraded to SQL Server 2008 after you have created the new 2008 database and restored the SQL Express 2005 database to the SQL 2008 Server.
- If the new instance of full SQL Server is installed locally for the database migration, the vCenter Service's SQL Server Instance dependency may need to be recreated or modified.
- You must remove and recreate the system DSN so that it uses the SQL Native Client 10.0 driver. Download the x86 for vCenter Server 4.0 and earlier, and x64 for vCenter Server 4.1 and later.
Note: The preceding links were correct as of October 24, 2014. If you find a link is broken, provide a feedback and a VMware employee will update the link.
- Ensure the DSN connects to the newly created database on SQL 2008 Server. For vCenter Server 4.1 and later, ensure a 64-bit DSN is created for the ODBC connection.
- For vCenter Server 5.1, the Single Sign-On (SSO) database may also have to be migrated.
- Configure the vCenter Server account that connects to the database as the
dbouser of the MSDB system database.
- Update the ODBC connection on vCenter Server.
Note: This procedure modifies the Windows registry. Before making any registry modifications, ensure that you have a current and valid backup of the registry and the virtual machine. For more information on backing up and restoring the registry, see Microsoft Knowledge Base article 136393.
To update the ODBC connection:
- Click Start > Run, type
regedit, and click OK. The Registry Editor window opens.
- Navigate to HKEY_LOCAL_MACHINE > SOFTWARE > VMware, Inc > VMware VirtualCenter.
- Modify the key
DbInstanceNameand remove the current Value data. Do not delete this key.
- Modify the key
DbServerTypeand change the Value data from
- Navigate to HKEY_LOCAL_MACHINE > SOFTWARE > VMware, Inc > VMware VirtualCenter > DB.
- If the ODBC connection name is changed, modify Key 1 with the name of the new ODBC connection.
- Modify Key 4 and change the ODBC driver to the new driver.
- Modify key 2 and add the vCenter Server user, for example
- Click Start > Run, type
- To change the database password stored in the registry and to allow the user to update the ODBC information without reinstalling vCenter Server.
- Click Start > Run
- Type cmd
- Right-click on the Command prompt icon and select Run as Administrator.
- Run this command:
C:\Program Files\VMware\Infrastructure\VirtualCenter Server\vpxd.exe -p
Note: This is the default path to the vCenter Server installation directory. Change the path appropriately, if required.
- Recreate the rollup jobs.
- Ensure that the
vcdb.propertiesfile reflects the new SQL database information.
Note: If using vCenter Server 5.0 ensure that the database settings used by the Tomcat Server are updated.
- Start the vCenter Server services.
If vCenter Server service still has dependency on SQL Express follow the steps given below:
- Open regedit and navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vpxd.
- Click the DependOnService column. The value of DependOnService lists all the services the vCenter Server depends on.
- Delete the SQL Express service line.
- Do similarly check for ControlSet001 and ControlSet002 folders.
- Reboot the virtual machine.
- Ensure the SQL Express service was set to manual/disabled and stopped.
- Start vCenter service.
Note: If you experience issues accessing the Storage View tab after the migration, see Accessing the Storage tab view in vCenter Server 5.0 fails with an internal error: com.vmware.vim.sms.fault.serviceInitializationException (2015180).
- Administrative credentials are required for Oracle and SQL Server databases when installing or upgrading vCenter Server (1003052)
- Upgrading VMware vCenter Server 4.0/4.1 fails with the error: Setup found that multiple schemas exist in the database (1011386)
- VMware vCenter Server fails to populate performance charts and displays an error message when using a custom JDBC SQL port (1021202)
- After migrating the vCenter Server database to a new host, the VMware VirtualCenter Management WebServices service does not function correctly (2010958)
- Accessing the Storage tab view in vCenter Server 5.0 fails with an internal error: com.vmware.vim.sms.fault.serviceInitializationException (2015180)