View
80
Download
0
Category
Preview:
Citation preview
Argo Group US
Oracle 64bit SSIS Solution Connecting to an Oracle database with a 64bit Windows OS on a workstation or server.
Errol Straker Jr. Ashu Agarwal 4/28/2011
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: T
able
of
Co
nte
nts
2
Table of Contents
Table of Contents .......................................................................................................................................... 2
The 64 bit Enigma ......................................................................................................................................... 4
The Fog lifted ............................................................................................................................................ 4
Oracle 11g R1 (32 bit Installation) ................................................................................................................ 5
Step 1 .................................................................................................................................................... 5
Step 2 .................................................................................................................................................... 6
Step 3 .................................................................................................................................................... 7
Step 4 .................................................................................................................................................... 8
Step 5 .................................................................................................................................................... 9
Step 6 .................................................................................................................................................. 11
Step 7 .................................................................................................................................................. 12
Step 8 .................................................................................................................................................. 13
Step 9 .................................................................................................................................................. 14
Step 10 ................................................................................................................................................ 15
Step 11 ................................................................................................................................................ 16
Step 12 ................................................................................................................................................ 18
Oracle 11g R1 (64 bit Installation) .............................................................................................................. 19
Step 1 .................................................................................................................................................. 19
Step 2 .................................................................................................................................................. 20
Step 3 .................................................................................................................................................. 21
Step 4 .................................................................................................................................................. 24
Step 5 .................................................................................................................................................. 25
Step 6 .................................................................................................................................................. 27
Step 7 .................................................................................................................................................. 28
Step 8 .................................................................................................................................................. 29
Step 9 .................................................................................................................................................. 30
Step 10 ................................................................................................................................................ 31
Step 11 ................................................................................................................................................ 33
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r:
3
Step 12 ................................................................................................................................................ 34
Editing the Registry ..................................................................................................................................... 36
The 32 bit Registry Change ..................................................................................................................... 36
32 Bit Registry Change Step 1 ............................................................................................................. 37
32 Bit Registry Change Step 2 ............................................................................................................. 38
32 Bit Registry Change Step 3 ............................................................................................................. 39
32 Bit Registry Change Step 4 ............................................................................................................. 40
32 Bit Registry Change Step 5 ............................................................................................................. 41
32 Bit Registry Change Step 6 ............................................................................................................. 42
32 Bit Registry Change Step 7 ............................................................................................................. 43
The 64 Bit Registry Change ..................................................................................................................... 44
Works Cited ................................................................................................................................................. 45
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: T
he
64
bit
En
igm
a
4
The 64 bit Enigma
The reason that this paper came about is fairly simple, my co-author had an issue with
connecting a server to an Oracle database located on another server. She has an application that
needed to be migrated from one server to another in order to get it out of the development
environment and into production. Usually this is not a huge task however the system she was migrating
to is running Windows 2008 server 64 bit edition. Initially looking at it I thought that perhaps there was
an issue within Visual Studio or the Oracle installation on the server itself. In the past it been as simple
as either changing the TNSNames file to included the path to the correct database or installing some
missing component within either Visual Studio or Oracle. However, neither of these were the case it
actually turned out that both installations were correct and since this server housed some other
applications that were working correctly. It appeared that there was an different culprit to catch in the
this strange case.
The Fog lifted
After doing some research we discovered that there is an issue with BIDS (Business Intelligence
Development Studio) and connecting to an Oracle database from a 64 bit server. BIDS is a 32 bit
application based on Visual Studio 32 bit modules on either a 32 bit or 64 bit workstation or server.
Since it is 32 bit it is unable to see the 64 bit driver installed on the system. Due to this issue you can
never get BIDS to connect to Oracle on a 64 bit system with just the 64 bit version of Oracle installed!
Now we are only using the “Oracle provider for OLE DB” connecter for Oracle and not the “Microsoft
Provider for Oracle”. This, according to Jorg Klein, will lead to an even bigger mess as Microsoft has no
intention of upgrading the connector they supplied to 64 bit. Also he stated that there are a lot of
problems with running the 10g version of the Oracle client as the 10g driver cannot handle the “(x86)” in
the SQL path.
As we continued to look around the internet we came across a growing consensus as to what the
solution to this issue actually is. You needed to install both the 32 bit and the 64 bit version of Oracle on
the 64 bit workstation or server that you needed to connect from. Since the desktop we used to test
this theory with is running Windows 7 64 bit Enterprise we needed to go to the next version of Oracle
which is 11g. The examples in this document follow the installation methods used to install Oracle 11g
R1 on the workstation we tested with.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
5
Oracle 11g R1 (32 bit Installation)
During the course of this section we will go over the
installation procedure that was used to install the Oracle client for
both the 32 bit and 64 bit versions of the software. We will also
discuss what steps need to be taken once both installations have
been completed. Once you have completed all of the necessary
steps you should be able to connect to any Oracle database using
the SSIS feature with in Visual Studio. We’ll start off with the 32 bit
version of Oracle since that is the first piece we need to install.
Step 1
When you start the Oracle installation you’ll need to select Advanced Installation then click “Next” (see
example 1).
Example 1
Since Oracle 11g R1 was used to
prove this solution the following
examples will show screen shots of
this version of Oracle.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
6
Step 2
On the Select Installation Type screen you will choose “Custom” then click “Next” (see example 2).
Example 2
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
7
Step 3
You will need to change the default directory for the Oracle Base
installation to C:\Oracle. Then feel free to keep the Oracle home
name the same for this portion of the installation. You will need
to change the Path however, for this example I have changed it to
C:\Oracle\product\11.1.0\Client_32. (see example 3)
Example 3
We need to change the directory
path so we can ensure that the 32
bit installation of Oracle 11g. Is not
installed over with the 64 bit client
installation we will perform later on
in the document.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
8
Step 4
Type in your email address, I just used my work email. (see example 4)
Example 4
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
9
Step 5
On this next screen you are going to see an error for “Checking operating system requirements…” (see
example 5a).
Example 5a
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
10
Just click on the check box next to it and the “Error” under
status will change to “User Verified” at this point you can
click “Next” (see example 5b).
Example 5b
If you get a dialog box when you
click “Next” just click “Ok” to move
on towards the next step.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
11
Step 6
At this point you should be at the Available Product Components screen and will see a listing of the
software components that will be installed onto the workstation or server. Make sure you select
“Oracle Windows Interfaces” then you can click “Next” after selecting any other components you need
(see example 6).
Example 6
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
12
Step 7
Unless you need to create a database on the system you are doing the installation on. Just select the
option “Install database Software only” then click on “Next”.
Example 7
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
13
Step 8
The next screen is the Oracle Service for Microsoft Transaction Server screen. When it comes up just
click on “Next” unless you need to change the port address (see example 8).
Example 8
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
14
Step 9
The next screen you will see should be the Summary screen showing you everything that will be
included in your installation. At that point you can click on “Install” (see example 9).
Example 9
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
15
Step 10
Your Oracle installation should proceed forward without any errors (see example 10). This will not be
the case when we do the 64 bit install.
Example 10
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
16
Step 11
Once your installation has completed and if you get the Configuration Assistants screen just click on
“Stop” and the install will exit (see example 11a).
Example 11a
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
17
You will see the following dialog box come up just click on “Ok” to close this down (see example 11b).
Example 11b
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(3
2 b
it In
stal
lati
on
)
18
Step 12
At this point you should see the End of Installation screen you can click “Exit” and we can start the
installation of the Oracle 64 bit client (see example 12).
Example 12
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
19
Oracle 11g R1 (64 bit Installation)
Now we will cover the 64 bit portion of the installation. There are going to be some slight changes that
will need to be made so you will need to pay close attention. Once we have covered this section we will
move on to the changes that will be made in the Registry.
Step 1
The installation process is fairly close in how we are going to install this version of Oracle. The screen
captures are presented here more so to re-enforce that fact and to show what slight differences I made
when installing the 64 bit client (see example 1). Just like with the 32 bit version select the “Advanced
Installation” option.
Example 1
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
20
Step 2
On the Select Installation Type screen you will choose “Custom” (see example 2) then click “Next”.
Example 2
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
21
Step 3
For this portion of the installation we need to make a few different changes. Below is a screen shot of
what we did for the 32 bit installation (see example 3).
Example 3
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
22
Step 3a
Now for the 64 bit installation we need to keep the “Oracle Base” directory the same as the with the 32
bit install. What we are going to change are the “Name” and “Path” values under Software Location.
Change the “Name” for the Oracle home to “OraDb11g_home2” (see example 3a)”.
Example 3a
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
23
Step 3b
Then change the “Path” to “C:\Oracle\products\11.1.0\Client_64” (see example 3b). We need to keep
the 32 bit installation and the 64 bit installation separate from one another.
Example 3b
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
24
Step 4
Just like we did with the 32 bit installation use your work email address for this part then click “Next”
(see example 4).
Example 4
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
25
Step 5
At this point things return to the norm as we proceed further with our 64 bit installation. Just as we did
with the 32 bit Oracle installation you will see an “Error” under the “Status” column for “Checking
operating system requirements” (see example 5a).
Example 5a
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
26
You can click on the check box and it should change from “Error” to “User Verified” (see example 5b).
Example 5b
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
27
Step 6
Now at the Available Product Components screen we will select “Oracle Windows Interfaces” then click
“Next” (see example 6).
Example 6
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
28
Step 7
At the Create Database screen you can select “Install database Software only” unless you have a need
to create a database. Once you have made your selection you can click “Next” to proceed on with this
portion of the 64 bit install (see example 7).
Example 7
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
29
Step 8
On the Oracle Service for Microsoft Transaction Server screen we can leave the Port Number as the
default unless you have a reason to change it (see example 8). So at this point just click “Next” to move
past this screen.
Example 8
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
30
Step 9
At the Summary screen you can go ahead and click “Install” to initiate the installation process (see
example 9).
Example 9
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
31
Step 10
For this step you will the installation screen move through the normal process (see example 10).
Example 10
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
32
Installation Error Message
However you will see an error message stating “Error while creating service. The service
OracleMTSRRecoveryService already exists.” You can click on “Ignore” to bypass this and continue on
with the rest of the installation (see example 10b). (Park, 2010)
(Park, 2010)
Example 10b.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
33
Step 11
If you get the Configuration Assistants screen you can click on “Stop” to cancel this installation unless
you need it (see example 11).
Example 11
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
34
Step 12
After click on “Stop” from the previous screen you will see a Warning dialog box come up. Just click on
“OK” to close this down (see example 12a).
Example 12a
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: O
racl
e 1
1g
R1
(6
4 b
it In
stal
lati
on
)
35
If you did not see the Configuration Assistants screen then you will just get the regular End of
Installation screen. At this point and time you can click on “Exit” (see example 12b).
Example 12b
Now that we have installed both the 32 bit and 64 bit versions of Oracle 11g R1. We can now move onto
the editing of the system registry on the workstation or server.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
36
Editing the Registry
At this portion of the installation we will not need to spend too
much time on this. It will just be a few changes that need to
be made and then your workstation or server should be good
to go. I’ve also embedded within this document the registry
keys you need to change. However for reference sake and also
in case your copy of this document is slightly corrupted. You
can just make the changes manually.
Registry Keys:
Oracle32bitKey.reg
Oracle64bitKey.reg
Please keep in mind that these keys, as they should be universal, were exported from a 64 bit Windows
7 workstation. Running Windows 7 Enterprise 64 bit which at the time of the export was fully patched. I
personally would be skeptical importing these keys on an actual server. To do the changes manually
really isn’t that difficult to accomplish especially since you are making the same changes to both keys.
Its only the location of the keys that really makes the difference.
The 32 bit Registry Change
For the 32 bit registry key change we need to open up the registry editor. At either the “Run” or if you
are using Windows 7 or Server 2008 you can type this directly in the search field. You’ll need to type
“Regedit” to bring up the registry editor, also make sure you are an administrator on the system you are
working on. Otherwise you will be unable to make any of these changes. First we are going to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\MTxOCI and then edit the two of the registry
keys. When you are finished your 32 bit registry key should look like this:
If you feel uncomfortable with
editing the system registry. Then
you will need to contact your local
helpdesk technician or server
administrator to perform this
portion of the installation. If you
are the local support technician
then maybe you should look at
another type of work instead or
learn fast. Just Kidding!
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
37
For those that might be a bit nervous in doing this I’m including the following walk through for the 32 bit
registry change.
32 Bit Registry Change Step 1
After opening the registry editor we are going to “HKEY_LOCAL_MACHINE” (see step 1 example).
Step 1 example
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
38
32 Bit Registry Change Step 2
Secondly we went to “SOFTWARE” (see step 2 example).
Step 2 example
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
39
32 Bit Registry Change Step 3
Then we went down to “Microsoft” (see step 3 example).
Step 3 example
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
40
32 Bit Registry Change Step 4
Then we went down to “MSDTC” (see step 4 example).
Step 4 example
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
41
32 Bit Registry Change Step 5
Finally we selected “MTxOCI” and we get to see the two keys we need to modify.
Step 5 example
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
42
32 Bit Registry Change Step 6
The first key we needed to change was “OracleSqlLib” and modify the Value data to “orasql11.dll” (see
step 6 example).
Step 6 example
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
43
32 Bit Registry Change Step 7
The next key we needed to change was “OracleXaLib” and the Value data needed to be modified to
“oraclient11.dll” (see step 7 example).
Step 7 example
Giving us the final result of:
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: E
dit
ing
the
Reg
istr
y
44
The 64 Bit Registry Change
At this point we can now make our changes to the 64 bit registry key. With the above crash course you
should be able to change the next key with great success. The registry path we are changing is
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\MSDTC\MTxOCI. Notice that the path
is very similar to 32 bit registry path with the exception of the “Wow6432Node” being added. Make
sure you include this as you drill down to make your changes. Once you arrive at the “MTxOCI” key the
changes you are going to make are identical to the 32 bit registry changes. At this point you can now
add in your TNSNames file and then reboot the server or workstation. Once the system is back up you
can then have a software developer or Oracle DBA test the system for connectivity via SSIS. Unless you
know how to test the connection out yourself.
Oracle 64bit SSIS Solution
April 28, 2011
Ch
apte
r: <
Wo
rks
Cit
ed
45
Works Cited Klein, J. (2009, October 15). SSIS - Connect to Oracle on a 64-bit machine. Retrieved April 29, 2011, from
SQLblog.com: http://sqlblog.com/blogs/jorg_klein/archive/2009/10/15/ssis-connect-to-oracle-on-a-64-
bit-machine.aspx
Park, J. (2010, April 26). Accessing Oracle from 64bit SQL Server or SSIS, 9. Retrieved April 25, 2011, from
Knol Beta: A unit of knowledge.: http://knol.google.com/k/accessing-oracle-from-64bit-sql-server-or-
ssis#
Recommended