Summary
This article provides some suggestions on things that may help getting the ILMT inventory adapter to work successfully, especially if you get an error similar to...
Synopsis
This article provides some suggestions on things that may help to get the ILMT inventory adapter to work successfully, especially if you get an error similar to:
Database Connection failed:
Unspecified error
Database Connection failed:
"..." provider not registered on local machine
In the scenario covered by this article, the above error appears when testing the connection to ILMT using a valid connection string that works successfully when trying to connect through OLE DB Core Services
Discussion
The above error essentially means that the connection to the ILMT database cannot be established. First, ensure that the DB2 client is installed on the system that is actually connecting to ILMT i.e. FNMP server or Inventory Beacon as appropriate but take into account the following:
-
You cannot install the 32-bit IBM DB2 Client on 64-bit Windows OS if the 64-bit client has already been installed.
-
You cannot use the 64-bit IBM DB2 Client with FNMP
-
You cannot use the Microsoft OLE DB Provider for DB2 Version 2.0 with SQL 2008 Standard Edition (Enterprise or Developer only).
So to import from ILMT you need to ensure that you have the 32-bit client installed with a local SQL Server instance that is Enterprise or Developer edition.
Once you have installed the 32-bit DB2 Client Utilities, if the connection still fails; try to configure the DB2 client as follows:
-
Type the command ?Db2cmd?. This will launch the user interface for the DB2 client.
-
Next, you must create a ?node? setting for the DB2 server we will connect to with the following command. The command below creates a ?node? that is named ILMT1. You must replace the <ipaddress> string with the IP Address of the server hosting the DB2 ILMT database. The ?50000? represents the port number of the server. This port number is the default for a DB2 database. You will need to change this if they are using a different port number:
-
catalog tcpip node ILMT1 remote <IPAddress> server 50000
-
Next, we identify the actual database base we will connect to (which will be the ILMT database) with the following command. You will need to replace the string <dbname> with the actual name of the ILMT database:
-
catalog db <dbname> as <dbname> at node ILMT1
-
Now we will test the connection using the DB2 client with the following command:
-
connect to <dbname> user <userid> using <pwd>
The connection string used by the Inventory Beacon/Inventory Adaptor should now be successful:
Provider=IBMDADB2;Database=<dbname>;Hostname=<ipaddress>;Protocol=TCPIP;Port=50000;Uid=<username>;Pwd=<password>;
Additional Information
Although the information in this article is designed to cover the specific scenario where the Unspecified error occurs, the suggestions contained could potentially help with several issues that occur when testing connection to the ILMT database.
If you are still unable to connect, please contact support confirming the following information:
-
What version of FNMP plus service pack level are you using?
-
What is the Operating System you are running on the system which is connecting to ILMT and what version and edition of SQL Server are installed?
-
Which DB2 client is installed (32 bit or 64 bit)
-
What connection string are you using to connect to ILMT?
-
Does the connection work using OLE DB Core Services?
With the above information, please also provide a screenshot/extract of the error you receive so that Support can investigate further.