Author |
Message
|
svu |
Posted: Fri Mar 18, 2011 2:11 am Post subject: mqsimigratecomponents fails because of ODBC issues |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
Hi all
We're trying to migrate 6.0.x to 7.0.x on Solaris SPARC. The broker 6.0 works ok. db2 command line client can connect to the broker DB, no problem. But trying to run mqsimigratecomponents -c BK, I am getting this:
Code: |
BIP8040E: Unable to connect to the database.
BIP8681W: Pre-migration check failed.
BIP2393E: Database error: ODBC return code '-1' from data source ''BKDB'' using ODBC driver manager ''libbipodbc.so''.
The broker received an error when processing a database operation. The ODBC return code was '-1'. See the following messages for information obtained from the database about this error.
Use the following messages to determine the cause of the error. Typical problems are an incorrect data source, or table names. Correct either the database or the broker configuration.
BIP2322E: Database error: SQL State ''IM003''; Native Error Code '0'; Error Text ''[DataDirect][ODBC lib] Specified driver could not be loaded''.
The error has the following diagnostic information: SQL State ''IM003'' SQL Native Error Code '0' SQL Error Text ''[DataDirect][ODBC lib] Specified driver could not be loaded''
|
Both versions 6 and 7 are using same odbc.ini, with the lines
Code: |
[BKDB]
Driver=/opt/IBM/db2/V8.1/lib/libdb2.so
Description=DB2 ODBC Database for Broker
Database=BKDB
|
What could be wrong here? Thank you for any hints |
|
Back to top |
|
 |
smdavies99 |
Posted: Fri Mar 18, 2011 2:24 am Post subject: Re: mqsimigratecomponents fails because of ODBC issues |
|
|
 Jedi Council
Joined: 10 Feb 2003 Posts: 6076 Location: Somewhere over the Rainbow this side of Never-never land.
|
svu wrote: |
Both versions 6 and 7 are using same odbc.ini, with the lines
|
Therein lies your problem
Could it be that the V7 broker uses a different Datadirect driver? One that is 64 bit? _________________ WMQ User since 1999
MQSI/WBI/WMB/'Thingy' User since 2002
Linux user since 1995
Every time you reinvent the wheel the more square it gets (anon). If in doubt think and investigate before you ask silly questions. |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 2:32 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
I tried to change lib to lib64, got another error:
Code: |
BIP2322E: Database error: SQL State ''HY010''; Native Error Code '0'; Error Text ''[DataDirect][ODBC lib] The driver is incapable of supporting the current environment attributes.''.
The error has the following diagnostic information: SQL State ''HY010'' SQL Native Error Code '0' SQL Error Text ''[DataDirect][ODBC lib] The driver is incapable of supporting the current environment attributes.''
|
|
|
Back to top |
|
 |
zpat |
Posted: Fri Mar 18, 2011 2:47 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
This is because the migrate command does not support DB/2 8.2 (8.1 + FP7) - this is not documented but is what IBM tell us.
So even though WMB 6.0 and 6.1 operate and are supported on this version of DB/2, the migrate command does not work with it!
We have queried this with IBM, since upgrading to DB2 v9 (immediately before removing the need for it) is not our preferred option.
I suggest you open a PMR and add your voice to get this sorted. |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 2:55 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
zpat: thanks! Is it a known fact? Should upgrading ODBC driver to the newer version be enough? |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Mar 18, 2011 3:04 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
The mqsimigratecomponents command that you need to run to migrate TO v7 is a v7 command, with all of the same database restrictions that all other parts of v7 have, including supported levels of databases.
If you are trying to avoid updating to a newer level of DB2 because you are planning to get rid of DB2 at all, since you were only using it for the broker database - you could install the db2 v9 client. Yes, I agree, you're still upgrading before you delete. But you need to balance that hassle against the hassle of creating a new v7 broker instead. Maybe you don't need to migratecomponents? |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 3:11 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
Another thing. If I use libdb2Wrapper.so instead of libdb2.so, I am getting different error:
Code: |
BIP2322E: Database error: SQL State ''IM004''; Native Error Code '0'; Error Text ''[DataDirect][ODBC lib] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed''.
The error has the following diagnostic information: SQL State ''IM004'' SQL Native Error Code '0' SQL Error Text ''[DataDirect][ODBC lib] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed'' |
Which one would be the right ODBC driver for db2 in WMB7? |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 3:13 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
mqjeff wrote: |
Maybe you don't need to migratecomponents? |
Yes, may be that would be simpler indeed |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Mar 18, 2011 3:15 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
svu wrote: |
Which one would be the right ODBC driver for db2 in WMB7? |
The one listed in the WMB v7 documentation.
But again, you can only use the v7 ODBC drivers with the databases that those ODBC drivers support - including the specific versions of DB2.
If you need to connect to an unsupported database, you can install a supported database client and then rely on the support the database provides to talk to the unsupported version. |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 3:28 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
mqjeff wrote: |
The one listed in the WMB v7 documentation |
I searched v7 docs, could not find the explicit mentioning of ODBC driver (libdb2.so or libdb2Wrapper.so). Am I missing something?
But anyway, you made a valid point about supported DB2 version
Last edited by svu on Fri Mar 18, 2011 3:29 am; edited 1 time in total |
|
Back to top |
|
 |
zpat |
Posted: Fri Mar 18, 2011 3:29 am Post subject: |
|
|
 Jedi Council
Joined: 19 May 2001 Posts: 5866 Location: UK
|
Jeff, how would the DB2 v9 client best be installed without risking upsetting anything that is currently working on our broker platform (WMB 6.0, 6.1, 7.0; DB2 v8.2, AIX 5.3, WMQ 7.013)?
Where does one get the DB2 client software from (passport advantage?) - how hard would it be to configure for this purpose?
Can you explain exactly what the migrate command does, and how we could deal with the MQSI registry and MQ queues without using it, to upgrade an existing broker?
The infocenter rather unhelpfully says (for an application migration)
Quote: |
8. Configure all other relevant properties of the Version 6.0 broker on the Version 7.0 broker |
How would I find all these out?
I don't particularly want to delete and create brokers, QMs - it would also make any backout process more complex. |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 4:03 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 4:51 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
Installed the db2 client 9.5
Changed Driver to /opt/IBM/db2/V9.5/lib32/libdb2.so
Added /opt/IBM/db2/V9.5/lib32 to PATH and LD_LIBRARY_PATH.
Same stuff
"Specified driver could not be loaded''. |
|
Back to top |
|
 |
mqjeff |
Posted: Fri Mar 18, 2011 5:17 am Post subject: |
|
|
Grand Master
Joined: 25 Jun 2008 Posts: 17447
|
svu - the link you want is
http://publib.boulder.ibm.com/infocenter/wmbhelp/v7r0m0/topic/com.ibm.etools.mft.doc/bh26080_.htm
Notice that it very carefully discusses libdb2.so for 32bit Linux and libdb2wrapper for everything else on Unix.
zpat - DB2 can coexist. You can install the DB2 client separately into a new location and then catalog the existing v8.x databases into that client as if they were remote databases. This assumes of course that db2 v9 can catalog the relevant v8.x databases. I do not know the exact licensing requirements for the DB2 client, but suspect you should be able to get the v9.x client as a standalone like you can get the MQ client as a standalone. But I haven't double-checked... It does NOT come with the MB v7 package any more. So if you can get it from Passport Advantage it will be under a db2 entitlement not your broker entitlement.
As for migrating without migrating - of course you would recreate the needed objects in the broker registry and use something like saveqmgr to backup and restore your application/flow level queues.
Remember in particular that v7 does not manage admiinistrative security any more - so regardless you already have to redo all of your ACLs using setmqauth anyway. You can't migrate information from the configmgr because there is no configmgr any more. |
|
Back to top |
|
 |
svu |
Posted: Fri Mar 18, 2011 6:28 am Post subject: |
|
|
Voyager
Joined: 30 Jan 2006 Posts: 99
|
mqjeff: thanks! So, it is libdb2Wrapper.so after all, on Solaris. But how does that .so know which version of db2 client to use?? I have two! And, as I said before, I am getting "[DataDirect][ODBC lib] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed" with libdb2Wrapper.so |
|
Back to top |
|
 |
|