VMware vCenter Server login fails and panic halt occurs with the error: "Unable to retrieve schema information" in vpxd.log
search cancel

VMware vCenter Server login fails and panic halt occurs with the error: "Unable to retrieve schema information" in vpxd.log

book

Article ID: 342363

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:
  • Logging into vCenter Server VC fails.
     
  • VMware vCenter Server (VC) has a panic halt.
     
  • You see this error message in the C:\Documents and Settings\All Users\Application Data\VMware\VirtualCenter\logs\vpxd.log:
    Unable to retrieve schema information message
     
  • You can see messages in the C:\Documents and Settings\All Users\Application Data\VMware\VirtualCenter\logs\vpxd.log file similar to:
[07580 warning 'Default' opID=HB-host-22@18952-b14fe087] [VdbStatement] SQL execution failed: insert into VPX_TABLE (TABLE_NAME, COL_NAME, COL_TYPE, COL_LEN, PK_FLG) values (?, ?, ?, ?, ?)
[07580 warning 'Default' opID=HB-host-22@18952-b14fe087] [VdbStatement] Execution elapsed time: 0 ms
[07580 warning 'Default' opID=HB-host-22@18952-b14fe087] [VdbStatement] Diagnostic data from driver is 07002:1:0:[Microsoft][SQL Server Native Client 10.0]COUNT field incorrect or syntax error
[07580 warning 'Default' opID=HB-host-22@18952-b14fe087] [VdbStatement] Bind parameters:
[07580 error 'Default' opID=HB-host-22@18952-b14fe087] [Vdb::IsRecoverableErrorCode] Unable to recover from 07002:0
[07580 error 'Default' opID=HB-host-22@18952-b14fe087] [VdbStatement] SQLError was thrown: "ODBC error: (07002) - [Microsoft][SQL Server Native Client 10.0]COUNT field incorrect or syntax error" is returned when executing SQL statement "insert into VPX_TABLE (TABLE_NAME, COL_NAME, COL_TYPE, COL_LEN, PK_FLG) values (?, ?, ?, ?, ?)"
[07580 error 'Default' opID=HB-host-22@18952-b14fe087] [VdbSchemaLoader::StoreTableSchemaInfoToDB] Error inserting into VPX_TABLE for table VPX_SN_DISTR_VPORT_BACKING: "ODBC error: (07002) - [Microsoft][SQL Server Native Client 10.0]COUNT field incorrect or syntax error" is returned when executing SQL statement "insert into VPX_TABLE (TABLE_NAME, COL_NAME, COL_TYPE, COL_LEN, PK_FLG) values (?, ?, ?, ?, ?)"
YYYY-MM-DDT<time>.074+09:00 [07580 error 'Default' opID=HB-host-22@18952-b14fe087] [VdbTableDef::PopulateSchemaInfo] Failed to retrieve column information for table VPX_SN_DISTR_VPORT_BACKING. Usually this is the result of a mismatch between the DB schema and the product/build.</time>
<snip>
--> Panic: [VdbTableDef::PopulateSchemaInfo] Exiting. Unable to retrieve schema information.


Environment

VMware vCenter Server 5.5.x
VMware vCenter Server 5.1.x
VMware vCenter Server 5.0.x
VMware vCenter Server 6.0.x

Cause

This issue is caused by an incorrectly configured VMware vCenter Server (VC) user account on the Microsoft SQL Server.
 

Resolution

To resolve this issue, verify and correct the necessary settings on the Microsoft SQL Server database:
  1. Record the table_name used as a target of the insert statement in the error messages in the vpxd.log file.
    For Example:
    field incorrect or syntax error" is returned when executing SQL statement "insert into VPX_TABLE (TABLE_NAME, COL_NAME, COL_TYPE, COL_LEN, PK_FLG) values (?, ?, ?, ?, ?)"

    Here the table_name is "VPX_TABLE". The error may occur with different tables.
     
  2. Open SQL Management Studio.
     
  3. Execute this query to check the TABLE_SCHEMA, using the table_name recorded in step 1:
    use VCDB
    SELECT TABLE_SCHEMA FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'table_name';

    Check the result of this command and write it down.
    For example: dbo
  4. Navigate to Database > VCDB(vCenter Database) > Security > Users.
     
  5. Right-click VC-User and click Properties.
     
  6. Review the default schema name of this user for VCDB(vCenter Database).
     
  7. If the default schema is not equal to the result of step 3, you must change the schema to the correct value with these steps:
    1. Stop the VMware VirtualCenter Server service.
    2. Back up the VCDB, using your usual method.
    3. Change the default schema for VC-user on SQL Server, using the Management Studio.
    4. Start the VMware VirtualCenter Server service.

    Note: For information on how to stop or start the VMware VirtualCenter Server service, see Stopping, starting, or restarting VMware vCenter Server services (1003895).



Additional Information


How to stop, start, or restart vCenter Server services
次のエラーにより VMware vCenter Server ログインが失敗し、パニック停止が発生する: vpxd.log の "Unable to retrieve schema information"