Re: Maintaining simultaneous support for two Oracle versions in DBI
Richie <[email protected]>
| Newsgroups | gmane.comp.lang.perl.modules.dbi.general |
|---|---|
| Message-ID | <[email protected]> |
I might be overlooking something in your requirements, but this is a
response that I had previously sent to someone on the list regarding
migration concerns:
I'm going through a migration now and had to recompile DBD-Oracle
against the new ORACLE_HOME.
I wanted to leave the old DBD-Oracle install in tact during my testing
so I did not do a 'make install' after
compilation. I took my test scripts, etc and used an appropriate
PERL5LIB setting;
ie.
PERL5LIB=/u99/testing/DBD-Oracle-1.23/blib/lib:/u99/testing/DBD-Oracle-1.23/blib/arch;
so it could would work while the old processes are able to use the
current DBD-Oracle install.
On 12/2/2011 1:27 PM, Scott Smith wrote:
> My workplace is transitioning from Oracle version 9 to version 11. I
> would like to build the DBD driver to support connecting to the Oracle
> 11 database. However, until all the data are migrated from the old
> database to the new one, I would need to maintain connectivity to the
> old Oracle 9 database. Since the driver and shared objects built for
> the new database would be incompatible, I would need to build separate
> objects for the Oracle 11 connection.
>
> Some of the items I can identify are:
>
> The module should be Oracle11.pm rather than Oracle.pm (called as
> DBI->connect("dbi:Oracle11:", ...) rather than
> DBI->connect("dbi:Oracle:", ...)).
> The shared object and bootstrap files as Oracle11.so and Oracle11.bs
> respectively. (Should these go in the same directory or should they be
> in the directory Oracle11 and does the package name in Oracle11.pm
> have to be changed to DBD::Oracle11 in order to find things there?)
>
> I have some idea of what I need to change in Makefile.PL in order to
> achieve at least part of this. What I have so far is changing
> references to Oracle.pm to Oracle11.pm and $opts{NAME} from
> DBD::Oracle to Oracle 11. Am I right about the second? Are there
> others I should have included?
>
> Thanks for any help,
> Scott Smith