Вы находитесь на странице: 1из 18

Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards

Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

Quick guide to installing Oracle 9i Client on a Controller 8 Application server


and configuring afterwards

Overview

This document will show how to install/configure the Oracle client on a Controller 8 Application
server, and then configure Controller 8 to point to the appropriate Oracle 9i (release 2)
database/server.

NOTE:
• This is an unofficial guide, and the official documentation (e.g.
“cognoscontroller23oracleguide.pdf” and
“cognoscontroller23oracleclientguide.pdf” for 2.x, plus “ctrl_inst.pdf” for
Controller 8.x plus
http://support.cognos.com/en/support/products/controller8mr1_software_environments.html
) take precedence
• This document is intended to be used side-by-side my other document “02. Quick guide
to installing Oracle 9i Server (and creating databases) on Windows,
for Controller 2.x or 8.x - Oct 2006.pdf”

Controller 8 MR1 has only been tested/is-only-supported when using the Oracle 9.2.0.71 client,
connecting to an Oracle 9i release2 database.

• Customers therefore should use the 9.2.0.7 client (earlier versions are known to cause
problems)
• Customers may successfully use earlier or later clients but this is untested by Cognos

Details

(1) Install Oracle 9.2.0.1 client

On each Controller 8 APP server:


• Launch setup.exe

• Next
• Next

1
The previous release (Controller 8.1) was tested with 9.2.0.6 client, but issues have been occasionally
found, so we now recommend the Oracle 9.2.0.7 client
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

• IMPORTANT:
o You must select “Administrator” (see below)
o then Next

• Next

NOTE: it is possible to choose “custom” but it’s more complicated. “Administrator” is


recommended. If you choose “custom” ensure that the following as a minimum are selected:
• Oracle Network Utilities
• Oracle Database Utilities
• SQL*Plus
• Oracle JDBC/OCI Interface
• Oracle Windows Interface

• Click “Install”
• After the file copy, select Next
• Choose “No” to the following screen:

• Next
• At the following screen, select “Next”
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

• Choose “Oracle 8i or later…”

• Enter the appropriate setting (e.g. “ccr.test”):

• Choose “TCP” – Next

• Enter the appropriate values (e.g. see above), then Next


• Choose “Yes” then Next
• Click “Change login” and enter appropriate username/password:
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

• Click “Next” to above success message

• Accept the following screen by clicking “next”

• Now you’re asked whether to configure another net service name, choose Yes and
repeat the above steps to connect to your contentstore (e.g. “cs.test”)
• After the above, click “Next” and ”Next” to finish
• Finish
• Exit
• Yes
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

(2) Install Oracle 9.2.0.7 patch

Again, on all Controller 8 Application servers:


• Launch “setup.exe” from the appropriate location (e.g. see below):

• Next
• Enter the appropriate details2 (e.g. “OraHome92” and “C:\oracle\ora92”
respectively) then Next

• During the wizard you may have to:


o shut down the following Windows service:

o configure the PC/server to use a static IP address

• Click “Install”
• Exit then Yes after the install has finished

2
TIP: You can find these out by manually launching the already-installed “Universal Installer” product
from the start menu
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

(3) Patching the Client - Oracle Provider for OLEDB

Due to a bug in Oracle, the Oracle Provider for OLEDB must be upgraded to at least version
9.2.0.4.0 to work properly (e.g. with some date functions).

Cognos does not have definitive answers for the root cause of the problem but it appears to be
because we are a multi-threaded application residing in Microsoft COM+ making a lot of calls to
CLOB fields.

The patch can be downloaded from


http://otn.oracle.com/software/tech/windows/ole_db/index.html

It is important to understand that the 9.2.0.7 Oracle client install does not include the latest
oraoledb.dll versions. Therefore, you must still install the OLE DB patches! (see below)

The Controller 8 application server’s current version of OraOleDB.dll can be found in the
Oracle bin directory:

Typically it will be 9.2.0.1.0:


Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

STEP1 - We therefore need to install the OraOleDB patch (3262468)

• Extract the file “p3262468_9204_WINNT.zip”


• Run “setup.exe”

• Next
• Ensure that the “name” and “path” are correct, then Next
• Choose “Oracle provider for OLE DB 9.2.0.4.0”

• Click Install, then Next Install, Exit, Yes

• Double-check that the version should of OraOLEDB.dll is now 9.2.0.4.0:


Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

STEP2 - And finally the OraOleDB hotfix (3557062)

This is just a file copy (of all the files) and finally a registration of OraOLEDB.dll (please refer to
the readme with the install).

• Copy *.* (all 9 files) from the source to BIN folder (e.g. C:\oracle\ora92\bin):

• Don’t forget to register the DLL after copying into bin:

o Start – run
regsvr32 C:\oracle\ora92\bin\OraOLEDB.dll
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

Version should now be:


Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

(4) Configuring the Controller Application to point to Oracle

Part One - Controller (Cognos 8 BI “runtime”) ContentStore:

After you have installed the Controller 8 application:


• On the Controller 8 Application server, go to the “ORACLE_HOME/jdbc/lib” directory (e.g.
“C:\oracle\ora92\jdbc\lib”)
• copy the classes12.jar3 file to the c8_location/webapps/p2pd/WEB-INF/lib
directory on each of the Cognos/Controller 8 application servers

After this, follow the normal “SQL” install instructions, except the following (see below) are the
different things that you need to do for Oracle:

• Launch Cognos Configuration


• Right-click on “Content Store” and choose “delete”, “yes”

• Right-click on content manager and choose “New resource” – “database”


• Choose “Oracle Database” and call it “Content Store”

Incidentally, you may have to use “Net Manager” to configure a LISTENER (e.g. on the Oracle
server):

3
This file includes the driver required by the content store
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

• Enter the appropriate details:

[TIP: The above service name (“cs”) does not seem to need to be “resolvable” by TNSPING, but
the Controller application database (e.g. “CCR”) does. In other words, you may have to configure
TNSNAMES.ORA on each application server for the “CCR” database(s), but at this stage you
should be OK without a suitably-configured TNSNAMES.ORA file!]

• Right-click on “content store” and click “test” to make sure everything is OK

Part Two - Controller Application Databases

 Configure the database connection


 In the tree control in the left pane, expand Cognos Controller Configuration > Web
Services Server > Database Connections
 Click the New button in the main tool bar
 In the right pane, enter the following information:
o Databasetype: Oracle (TIP: you can simply double-click on this cell to
change it)
 Name: Anything (usually the name of the server and/or purpose is
used to help identify the database e.g. “default”
 Provider: OraOLEDB.Oracle.1
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

 User ID: The user ID used in the Create Controller Database step
e.g. fastnet
 Enter what you think are the correct details (e.g. see below) and
then test
• This will fail
• Do not worry, click “save anyway”

Workaround:
• Open the appropriate UDL file, by right-clicking and choosing “properties”
e.g. "C:\Program Files\cognos\c8\data\default.udl"
• Change to the following (“Oracle Provider for OLE DB”):
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

• You may get the following:

• This will be a permissions issue. You need the following permissions!

TIP: The above “application” database connections do rely on TNSPING working OK (i.e. that the
TNSNAMES.ORA file is correctly configured).
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

Inside Cognos Controller Configuration, in the tree control in the left pane, select the database
connection you've just created, and click the Run (green “play”) button in the main tool bar
o If a warning comes up saying "Unable to determine current database
version", click the Create Db button4
o If the Actual and DbConv versions at the top of the dialog do not match5
(e.g. in picture 512 doesn’t equal 577), click the Run Steps button (this
takes a bit of time).

 Click the Close button

WARNING!

If you get an error during “run steps” at step 577/578, then type the following
command into SQL Plus Worksheet:
select * FROM v$option;
If you get the following:

i.e. “Bitmap indexes” is set to “false” then step 578 will fail (see below):

4
You may have to change the group/local language settings as appropriate – e.g. to EN/EN
5
NB you’ll also have to do this step after using the “createDB” step the first time.
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

To solve this:
• Re-install Oracle 9i server as “Enterprise” not “Standard” edition!!

FOR MORE INFO:


According to the document Oracle 9i Database: A Family of Database Products,
bitmapped indexes are not available in the standard edition of Oracle 9i.

www.oracle.com/technology/products/oracle9i/pdf/9idb_rel2_prod_fam.pdf
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

Appendix

When a user optimises, they may get the following error:

The rest of the application will work fine.

JL: It is an information (not an error) and it disappeared as soon as they started to use the
system. My guess is the table does not YET exist to be deleted.

CA: I've seen this many times, the error message is normally related to lack of admin permissions
for the user account in COM+, the consolidation component is cleaning up any remaining vfp
tempfiles left on the application server.
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

Testing Controller

The first time that you logon to Controller, you may get the following message:

This is OK, it is just reminding you to perform some maintenance.

• Therefore, go into “Single User Mode” and launch “Maintain – Database – Optimise”:

• Tick all the boxes (see above) and click on “Yes” to analyse the schema
Quick guide to installing Oracle 9i Client on a Controller 8 Application server, and configuring afterwards
Richard.Collins@Cognos.com – August 16th 2006 – updated Oct 13th, Nov 20th 2006

Appendices

#1 - Issue with non-English languages

When you execute a Consolidation (e.g. “with status”), then you may get the following error:

The ODBC Connection is missing or invalid.

[The above was seen with Controller 8.1.2 MR1, with the Oracle client 9.2.0.7].

Consolidations use an ODBC “system” DSN. Controller Configuration creates a System DSN, but
apparently consolidations don’t use this6. Instead, consolidation creates its own ODBC on the fly:

The problem may therefore be due to the name of the Oracle ODBC driver. If it is not using
English, then it may fail. For example: 'Oracle i OraHome92' is the Swedish version of the English
'Oracle in OraHome92'. (I remember that there has been a couple of issues with this previously,
the consolidation creates it's ODBC on the fly).

Solution:
• Locate: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI
• Edit the registry and change the non-English wording (e.g. "Oracle en OraHome92" for
Spanish) to "Oracle in OraHome92"

6
Therefore, even if you delete/re-create/check this DSN, you may still get the issue