IBM Support

Error: Database Error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

Technote (troubleshooting)


Problem(Abstract)


The error indicates a problem with the TEM server components (BES Root Server, FillDB, and Gather DB) being unable to find the DSN specified in the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\BigFix\Enterprise Server\Database registry key in the server's registry due to a misconfiguration.

Symptom

  • BES Root Server service unable to connect to database
    • Console unable to connect to server/database and startup
  • FillDB service unable to connect to the database (resulting in a backlog of client reports)
  • GatherDB service unable to connect to the database

Cause

Missing DSN entry

Diagnosing the problem

Check BESRelay.log, FillDB.log, and GatherDB.log files on the server for the follow error messages for recent error messages similar to:

FillDB.log
Fri, 13 Jul 2012 14:11:17 -0400 -- Unexpected exception: Database Error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (IM002:0)

GatherDB.log
Fri, 13 Jul 2012 14:11:25 -0400 -- Database Error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (IM002:0)
Fri, 13 Jul 2012 14:11:25 -0400 -- Disconnecting from database; will reconnect in 10 seconds.

BESRelay.log
Fri, 13 Jul 2012 13:02:03 -0400 - 2212 - Database Error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (IM002:0)
Fri, 13 Jul 2012 13:02:03 -0400 - 2212 - Disconnecting from database; will reconnect in 10 seconds.
Fri, 13 Jul 2012 13:02:08 -0400 - Secure Server Thread (5052) - SecureServerThread::WaitForSigningKey Error: Database Error: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (IM002:0)

If the error messages exist check to see which DSN is being referenced in the DSN value of the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\BigFix\Enterprise Server\Database registry key on the server machine.

Does the DSN entry referenced within this key exist in the in the 32 bit ODBC editor (C:\windows\SysWOW64\odbcad32.exe) under the System DSN tab?

If it does not, or if you are trying to use a differently named DSN, this is the cause of the problem.


Resolving the problem

Determine which method of authentication you are using or would like to use (NT or SQL)

NT Authentication:

    1. Open the 32 bit ODBC editor (C:\windows\SysWOW64\odbcad32.exe)
    2. Go to the System DSN tab
    3. If a DSN named bes_bfenterprise does not exist create it.
    4. Configure the DSN
    5. Name: bes_bfenterprise
    6. Server: If the database is on the same machine as the TEM server, either choose [local] or choose the name of the TEM server from the drop down. If the database is on a remote machine, browse for the database server and select it. Click Next.
    7. Choose "With Integrated Windows authentication. Click Next.
    8. Choose "BFEnterprise" for the "Change the default database to:" option. Click Next.
    9. Click Finish
    10. Test Data Source to check for basic database connectivity
    11. Change the DSN value in the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\BigFix\Enterprise Server\Database registry key to bes_bfenterprise (note: if the DSN value does not exist, create it as a REG_SZ type).
    12. Restart the BES Root Server, FillDB, and Gather DB services and check the BESRelay.log, FillDB.log, and GatherDB.log files to see if these errors are still occurring. Try to start up the console. Does the console load?
SQL Authentication:
    1. Open the 32 bit ODBC editor (C:\windows\SysWOW64\odbcad32.exe)
    2. Go to the System DSN tab
    3. If a DSN named bes_EnterpriseServer does not exist create it.
    4. Configure the DSN
    5. Name: bes_EnterpriseServer
    6. Server: If the database is on the same machine as the TEM server, either choose [local] or choose the name of the TEM server from the drop down. If the database is on a remote machine, browse for the database server and select it. Click Next.
    7. Choose "With SQL Server authentication using a login ID and password entered by the user"
    8. Choose "BFEnterprise" for the "Change the default database to:" option. Click Next.
    9. Click Finish
    10. Test Data Source to check for basic database connectivity
    11. Change the value of the DSN value in the HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\BigFix\Enterprise Server\Database registry key to bes_EnterpriseServer (note: if the DSN value does not exist, create it as a REG_SZ type). Create values for User and Password as REG_SZ types as well. Enter the username and password SQL authentication information into these values.
    12. Restart the BES Root Server, FillDB, and Gather DB services and check the BESRelay.log, FillDB.log, and GatherDB.log files to see if these errors are still occurring. Try to start up the console. Does the console load?

Related information

Remote Database Guide
Guide to Configuring TEM ODBC DSNs
How do I add new ODBC data source to connect to a datab

Document information

More support for: IBM BigFix family

Software version: All Versions

Operating system(s): Windows

Reference #: 1605108

Modified date: 08 July 2014