VMware Cloud Community
PaulAX
Contributor
Contributor

Migration of VC Database

I have a rather large issue having migrated my VC database from MSDE to SQL2000. When our 'experts' configured our ESX environment, they decided that an MSDE VC database would suffice for our production environment.......

Having discovered this, I have recently built a new server to host both the database and the VC. The steps taken are as follows:

1. install SQL2000 sp4 on new server

2. Export data from MSDE to SQL

3. Configure ODBC to point to new table created on SQL server

4. Install VC License serer

5. Install VC 2.0.1

6. Install VI Client

7. Open VI client, remove and re-add all esx hosts

After completing these steps, all virtual servers were functioning correctly and everything seemed to have worked. That is until I had to reboot the server.

After restart the VC service failed to start with a system error 1067.

I have found a number of articles suggesting the problem is with having SQL and VC on one box, and to alter service dependancies. I tried this through the registry change, and to confirm it was still not working, I set the VC services to manual and started them up after the server had completely booted. This again didn't work.

I am receiving the following error in the vpxd logs:

Log for VMware VirtualCenter, pid=2932, version=2.0.1, build=build-40644, option=Release, section=2

\[2007-03-22 18:52:11.370 'App' 2968 info] Current working directory: C:\WINDOWS\system32

\[2007-03-22 18:52:11.370 'App' 2968 info] Initializing SSL context

\[2007-03-22 18:52:11.696 'App' 2968 info] Vmacore::InitSSL: doVersionCheck = true, handshakeTimeoutUs = 120000000

\[2007-03-22 18:52:11.712 'BaseLibs' 2968 info] NFC connection accept timeout: 180000 milliseconds

\[2007-03-22 18:52:11.712 'BaseLibs' 2968 info] NFC request timeout: 180000 milliseconds

\[2007-03-22 18:52:11.712 'BaseLibs' 2968 info] NFC read timeout: 60000 milliseconds

\[2007-03-22 18:52:11.712 'BaseLibs' 2968 info] NFC write timeout: 600000 milliseconds

\[2007-03-22 18:52:11.712 'App' 2968 info] Starting VMware VirtualCenter 2.0.1 build-40644

\[2007-03-22 18:52:11.712 'App' 2968 info] Account name: SYSTEM

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxOsLayer] Enabled low-frag process heap.

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxOsLayer] Enabled low-frag crt heap.

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxLRO] 32 max LROs

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxLRO] 6 reserved internal LROs

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxLRO] 6 reserved blocker LROs

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxLRO] 6 reserved short LROs

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxLRO] 2 reserved long LROs

\[2007-03-22 18:52:11.712 'App' 2968 info] \[VpxLRO] 600-second task lifetime

\[2007-03-22 18:52:17.591 'Locale' 2968 info] Locale subsystem initialized from C:\Program Files\VMware\VMware VirtualCenter 2.0\locale/ with default locale en.

\[2007-03-22 18:52:17.949 'App' 2968 error] VM has invalid name

\[2007-03-22 18:52:17.949 'App' 2968 error] Invalid VM. Removing /vpx/vm/#874/

\[2007-03-22 18:52:17.965 'App' 2968 error] \[VpxdInvt] Delete failed for /vpx/vm/#874/

\[2007-03-22 18:52:17.965 'App' 2968 error] \[VpxdMain] Failed to initialize: vim.fault.DatabaseError

\[2007-03-22 18:52:17.965 'App' 2968 error] Failed to intialize VMware VirtualCenter. Shutting down...

Other things I have noticed are:

1. There are more tables in the SQL database than there were in the MSDE database.

2. If I re-run the steps listed at the top and re-import the data from the MSDE database, the VC works again (until I reboot the server)

Can anyone help?

0 Kudos
7 Replies
wobbly1
Expert
Expert

it looks like errors in the database that are trying to be corrected but fail. Has the VC user account got the correct level of permissions on the database? dbo is needed during the installation of VC but not sure about for normal operation

0 Kudos
PaulAX
Contributor
Contributor

Hi and thanks for the response,

The VC service is attempting to run under the local system account. I have also tried to run the VC service with my own user account (Domain Admin) but it still fails. The database is configured to use intgrated windows authentication.

0 Kudos
wobbly1
Expert
Expert

what users & permissions do you have set on the database?

0 Kudos
PaulAX
Contributor
Contributor

Sorry, my SQL knowledge is not what is should be. In thesecurity/logins section of Enterprise manager I only have BUILTIN\administrators and sa. Users of the specific VC database is one: dbo. The permissions are set as public with no ticks in the create Table|Create View etc.

Is this right?

0 Kudos
wobbly1
Expert
Expert

check your config against pg59/60 of the installation guide for vi3

0 Kudos
PaulAX
Contributor
Contributor

I have checked the ODBC settings and the SQL settings and all seems correct. I am using NTLM as the SQL server is local to the VC, the Security tab on the SQL server authentication is set to Windows Only and the service is running under the system account.

The ODBC connection is configured also to use Windows Auth, and is pointing at localhost. All tests seem to run fine. I am kind of running out of ideas. Are there any more VM log files that I can check? or are the VPX logs all I have?

0 Kudos
PaulAX
Contributor
Contributor

Thanks for your input, it has highlighted the fact that exporting the data from the MSDE hadn't worked. I have managed to fix it now and have listed the steps required should anyone else experience this problem.

OK, here is the resolution for anyone else who happens to need to migrate from MSDE to SQL2000.

1. On MSDE hosting server, install SQL2000 management tools

2. From enterprise manager, connect to the MSDE database and backup the VC database and the TempDB database.

3. On the new SQL server, install SQL2000 and configure a blank instance.

4. Create a new ODBC connection with the new instance set as the default table

5. Install the Virtual Center Application and use the ODBC connection created above. Allow the installer to create all tables.

6. Once the installation has completed, go into Enterprise Manager on the new server and choose restore from the All Tasks menu on the newly created VM database.

7. Select restore 'from device', then 'Select Devices'

8. Add the VC database backup created in step 2 and also the Tempdb database, then select OK.

9. Select the OPTIONS tab along the top of the Restore Database window and tick the 'Force overwrite of existing database' option.

10. Change the location of the .ldf and .mdf files to a local location to the new server.

11. Click OK and all being well, everything should now work.

0 Kudos