11 Configuring the Gateway Using TCP/IP Communication Protocol
The following topics describe how to configure Oracle database for a gateway using TCP/IP for IMS Connect on your UNIX platform. It also provides the steps necessary to verify installation and configuration of the gateway and OLTP components.
Configuring Oracle Database Gateway for APPC using TCP/IP support for IMS Connect involves working with the following components:
-
Oracle database
-
UNIX system
-
Network
-
OLTP
Before You Begin
Gateway configuration using TCP/IP communication protocol requires you to input parameters unique to your system to correctly configure the gateway and TCP/IP communications interface.
Refer to Configuration Worksheet for a worksheet listing the installation parameters that you will need to know before you can complete the configuration process. Ask your network administrator to provide you with these unique parameter names before you begin.
Preparing to Configure a Gateway Installation/Upgrade
There are three ways to establish the gateway and Oracle database relationship when you are installing, upgrading, or migrating the gateway:
-
When Oracle Database and the Gateway Are Installed in the Same ORACLE_HOME
-
When Oracle Database and the Gateway Are Installed on Separate Systems
-
When Oracle Database and the Gateway Are on the Same System but in Different Directories
Depending on the location of your gateway and your Oracle database, you might need to transfer some of the gateway administrative files to the location where Oracle database is installed.
Follow the instructions applicable to your combination of the gateway-Oracle database locations listed below.
When Oracle Database and the Gateway Are Installed in the Same ORACLE_HOME
You do not need to transfer files. Proceed to Configuring Oracle Database: First-Time Installation.
When Oracle Database and the Gateway Are Installed on Separate Systems
When Oracle database and the gateway are installed on separate systems, you need to perform the following tasks:
-
Locate the gateway administrative files in the gateway
$ORACLE_HOME/dg4appc/admin
directory. All files in this directory that have the suffix.sql
,.pkh
, and.pkb
must be copied into a similarly named directory in the Oracle database Oracle home directory. -
Now, locate the gateway demo files and subdirectories in the gateway
$ORACLE_HOME/dg4appc/demo
directory. Copy thepgavsn.sql
andpgaecho.sql
files into a similarly named directory on Oracle database. -
Copy the
pgaims.sql
file from the gateway Oracle home$ORACLE_HOME/dg4appc/demo/IMS
directory to the Oracle database Oracle home$ORACLE_HOME/dg4appc/demo/IMS
directory.Optional Steps: If you want to run
IVTNV
andIVTNO
, then you will need to copy theivtno.ctl
,ivtnod.sql
,ivtnv.ctl
, andivtnvd.sql
files into the Oracle database Oracle home at$ORACLE_HOME/dg4appc/demo/IMS
directory as well. Ensure that you generate the required TIPs and transfer them as well.
When Oracle Database and the Gateway Are on the Same System but in Different Directories
You must change your gateway Oracle home to the Oracle database Oracle home directory.
Proceed with Configuring Oracle Database: First-Time Installation. Following those steps, you may want to perform the Optional Configuration Steps to Permit Multiple Users,.
Configuring Oracle Database: First-Time Installation
Follow these steps to configure your Oracle database after installing the Oracle Database Gateway for APPC.
-
Ensure that the
UTL_RAW
PL/SQL package has been installed on Oracle database. All TIP specifications generated by Procedural Gateway Administrative Utility (PGAU) useUTL_RAW
, which provides routines for manipulating raw data.-
From SQL*Plus, enter the following command:
SQL> DESCRIBE UTL_RAW
The
DESCRIBE
statement produces output on your screen. If you browse through the output, then you should see some functions, including a compare function. If you do not see this output, then continue theUTL_RAW
installation by executing Step 1.d below.If the
DESCRIBE
statement indicates success, then Oracle database hasUTL_RAW
installed and you can proceed to Step 2. -
Use SQL*Plus to connect to Oracle database as
SYS
. -
From SQL*Plus, run the
utlraw.sql
andprvtrawb.plb
scripts in the Oracle database$ORACLE_HOME/rdbms/admin
directory in the following order:SQL> @$ORACLE_HOME/rdbms/admin/utlraw.sql SQL> @$ORACLE_HOME/rdbms/admin/prvtrawb.sql
-
Ensure that the
DBMS_OUTPUT
standard PL/SQL package is enabled on Oracle database. The sample programs and installation verification programs on the distribution media use this standard package.-
If necessary, use SQL*Plus to connect to the Oracle database as the
SYS
user. -
Enter the following command:
SQL> DESCRIBE DBMS_OUTPUT
The
DESCRIBE
statement produces output on screen. If you browse through that output, then you should see some functions, including aput_line
function.If you do not see this output, then you must create the
DBMS_OUTPUT
package. Refer to the Oracle Database PL/SQL Packages and Types Reference for more information about theDBMS_OUTPUT
package. After installing theDBMS_OUTPUT
package successfully, run theDESCRIBE
statement.If the
DESCRIBE
statement indicates success, then Oracle database hasDBMS_OUTPUT
created and you can proceed to Step 3.
-
-
Install the
UTL_PG
PL/SQL package. All PGAU-generated TIP specifications useUTL_PG
, which provides routines for performing numeric conversions to and from raw data.-
If necessary, use SQL*Plus to connect to Oracle database as the
SYS
user. -
From SQL*Plus, run the
utlpg.sql
andprvtpgb.plb
scripts in the Oracle database$ORACLE_HOME/rdbms/admin
directory in the following order:SQL> @$ORACLE_HOME/rdbms/admin/utlpg.sql SQL> @$ORACLE_HOME/rdbms/admin/prvtpgb.plb
-
-
Install the Heterogeneous Services (HS) catalogs.
-
If necessary, use SQL*Plus to connect to Oracle database as the
SYS
user. -
Enter the following command:
SQL> DESCRIBE HS_FDS_CLASS
The
DESCRIBE
statement produces output on your screen. If theDESCRIBE
statement indicates success, then heterogeneous services catalogs have been created on Oracle database and you can proceed to Step 2.If the DESCRIBE statement does not indicate success, then you must create Heterogeneous Services catalogs, and you must follow Step 4.c:
-
If it is necessary to create the Heterogeneous Services catalog, then enter the following command:
SQL> @$ORACLE_HOME/rdbms/admin/caths.sql
-
-
Create a public database link to access the Oracle Database Gateway for APPC:
Use SQL*Plus to connect to the Oracle database as the
SYSTEM
user. You can use the following SQL*Plus sample whether the Oracle database and the gateway are on the same system or on different systems. In the following sample,pgasrv
is thetns_name_entry
that will be assigned to the gateway when you modify thetnsnames.ora
file later.SQL> CREATE PUBLIC DATABASE LINK PGA USING 'PGASRV'
-
Create the gateway administrator user (
PGAADMIN
) and install the PG DD.-
Use SQL*Plus to connect to Oracle database as the
SYSTEM
user. -
From SQL*Plus, run the
pgacr8au.sql
script in the$ORACLE_HOME/dg4appc/admin
directory. This script creates thePGAADMIN
user ID.The initial password defined for
PGAADMIN
isPGAADMIN
. Use theALTER USER
command to change the password. For further information about password issues, refer to the Oracle Database SQL Language Reference.SQL> @$ORACLE_HOME/dg4appc/admin/pgacr8au.sql
-
Use SQL*Plus to connect to the Oracle database as
PGAADMIN
. -
From SQL*Plus, run the
pgddcr8.sql
script in the$ORACLE_HOME/dg4appc/admin
directory. This script installs the PG DD.SQL> @$ORACLE_HOME/dg4appc/admin/pgddcr8.sql
-
From SQL*Plus, connect to the Oracle database as the
SYS
user. -
Grant execute privileges on
DBMS_PIPE
toPGAADMIN
:SQL> GRANT EXECUTE ON DBMS_PIPE TO PGAADMIN
-
-
Ensure that the
pg4tcpmap
package has been installed on your Oracle database. Follow Steps a through c to test for proper installation ofpg4tcpmap
.Refer to Output for the pg4tcpmap Tool in Gateway Initialization Parameters for TCP/IP Communication Protocol for a sample of the output from the
pg4tcpmap
tool, and refer to Chapter 6 of the Oracle Database Gateway for APPC User's Guide for details about the commands needed to run the tool.-
Use SQL*Plus to connect to Oracle database as the
SYSTEM
user. -
Enter the following command:
SQL> select owner, table_name from dba_tables where table_name = 'PGA_TCP_IMSC', and owner = 'PGAADMIN'; SQL> column owner format a 10 SQL> column index_name format a 18 SQL> column table_name format a 14 SQL> select owner, index_name, table_name from dba_indexes where index_name = 'PGA_TCP_IMSC_IND';
Each
SELECT
statement must produce one row. The following output is the result of the firstSELECT
statement:TABLE_NAME OWNER ------------------------------ ------------------------------ PGA_TCP_IMSC PGAADMIN
The following output is the result of the second
SELECT
statement:OWNER INDEX_NAME TABLE_NAME UNIQUENESS ---------- ------------------ -------------- --------- PGAADMIN PGA_TCP_IMSC_IND PGA_TCP_IMSC UNIQUE
If the
SELECT
statements produce the preceding output on your screen, then you can skip to Step 8. If theSELECT
statement produces no output or more than one row, then the result is not the same as the output described above, and it is necessary for you to perform Step 1. -
From SQL*Plus, run the
pgaimsc.sql
script in the Oracle database$ORACLE_HOME/dg4appc/admin
directory:SQL> @$ORACLE_HOME/dg4appc/admin/pgaimsc.sql
-
-
Install the TIP trace access PL/SQL routines. These routines require that the
DBMS_PIPE
standard PL/SQL package is installed and thatPGAADMIN
has execute privileges on it. For more information onDBMS_PIPE
, refer to the Oracle Database PL/SQL Packages and Types Reference.-
If necessary, use SQL*Plus to connect to the Oracle database as user
PGAADMIN
. -
From SQL*Plus, run the
pgatiptr.sql
script in the$ORACLE_HOME/dg4appc/admin
directory. This script creates PL/SQL routines that can be called to read and purge trace information created by PGAU-generated TIP specifications. It also creates public synonyms for these routines. The script prompts you for the necessary user IDs and passwords.SQL> @$ORACLE_HOME/dg4appc/admin/pgatiptr.sql
-
-
Install the
GPGLOCAL
package. This package is required for compilation and execution of all PGAU-generated TIP specifications. TIP developers should be granted execute privileges onGPGLOCAL
(refer to Optional Configuration Steps to Permit Multiple Users).-
From SQL*Plus, run the
gpglocal.pkh
script in the$ORACLE_HOME/dg4appc/admin
directory. This script compiles theGPGLOCAL
package specification.SQL> @$ORACLE_HOME/dg4appc/admin/gpglocal.pkh
-
From SQL*Plus, run the
gpglocal.pkb
script in the$ORACLE_HOME/dg4appc/admin
directory. This script compiles theGPGLOCAL
package body.SQL> @$ORACLE_HOME/dg4appc/admin/gpglocal.pkb
Note:
Recompile TIPs when changing communication protocol from SNA to TCP/IP:
If you have existing TIPs that were generated previously on a gateway using the SNA communication package protocol and you want to utilize the new TCP/IP feature, then the TIPs have to be regenerated by PGAU with certain mandatory
NLS_LANGUAGE
and Side Profile Settings. Specify the correct ASCII character set in theDEFINE TRANSACTION
command.This is because the gateway assumes that the correct user exit in IMS Connect is being used, which would translate between the correct ASCII and EBCDIC character sets.
Upgrading or Migrating the Oracle Database from Previous Gateways
Follow these instructions only if you have a previous version of the Oracle Database Gateway for APPC installed on your system and need to configure it for 12c Release 2 (12.2) of the gateway.
-
Upgrade your Oracle Database Gateway for APPC to current version levels as follows:
-
Use SQL*Plus to connect to Oracle database as the
SYS
user. -
Install the
UTL_RAW
package body. From SQL*Plus, run theprvtrawb.plb
script from the$ORACLE_HOME/rdbms/admin
directory. This script upgrades theUTL_RAW
package body.SQL> @$ORACLE_HOME/rdbms/admin/prvtrawb.plb
-
Install the
UTL_PG
package body. From SQL*Plus, run theprvtpgb.plb
script from the$ORACLE_HOME/rdbms/admin
directory. This script upgrades theUTL_PG
package body.SQL> @$ORACLE_HOME/rdbms/admin/prvtpgb.plb
The
prvtrawb.plb
andprvtpgb.plb
scripts should complete successfully. If they fail because specifications do not exist or were invalidated, then consider reinstalling the package specifications as directed in the following section.
-
If You Must Reinstall Package Specifications
If the UTL_RAW
or UTL_PG
package has been invalidated or deinstalled, then the prvtrawb.plb
and prvtpgb.plb
scripts might not complete successfully. You may have to reinstall the package specifications.
If you do reinstall the package specifications, then any dependent objects (such as existing user TIPs and client applications) are invalidated and subsequently need to be recompiled. The impact of this is a one-time performance delay while recompilation of the TIPs and dependent client applications proceeds.
Note:
Before proceeding with reinstallation of the package scripts, ensure that you are in the $ORACLE_HOME/dg4appc/admin
directory.
TIPs were split into separate specification and body files in release 3.3 to avoid cascaded recompilations in later releases.
- Step 1 Run the Following Scripts Before Proceeding with the PGAU Upgrade
-
From SQL*Plus, run the
utlraw.sql
script:-
If necessary, use SQL*Plus to connect to the Oracle database as the
SYS
user. -
From SQL*Plus, run the
utlraw.sql
andutlpg.sql
scripts in the Oracle database$ORACLE_HOME/rdbms/admin
directory, in the following order, to upgrade their respective package specifications:SQL> @$ORACLE_HOME/rdbms/admin/utlraw.sql SQL> @$ORACLE_HOME/rdbms/admin/utlpg.sql
-
- Step 2 Repeat Installation of UTL_RAW and UTL_PG Package Body
-
After the scripts have run, repeat Steps b and c in "Upgrading or Migrating the Oracle Database from Previous Gateways". Then, proceed to the section titled "Upgrading PGAU from Previous Gateway Releases".
Note:
TIPs and dependent client applications must be recompiled after reinstallation of the package specifications. Refer to the "Compiling a TIP" section in Chapter 3 of the Oracle Database Gateway for APPC User's Guide for information about compiling TIPs.
Optional Configuration Steps to Permit Multiple Users
The following configuration steps are optional. Perform these steps if you want to allow users other than PGAADMIN
to perform PG DD operations using PGAU.
-
Create public synonyms for the PG DD to allow other users to access the tables:
-
Use SQL*Plus to connect to Oracle database as the
SYSTEM
user. -
From SQL*Plus, run the
pgddcr8s.sql
script in the$ORACLE_HOME/dg4appc/admin
directory. This script creates public synonyms for the PG DD.SQL> @$ORACLE_HOME/dg4appc/admin/pgddcr8.sql
-
-
Create roles for accessing the PG DD, performing definitions of transactions, and generating TIP specifications. The
PGAADMIN
user can grant these roles to other users as necessary.-
Use SQL*Plus to connect to Oracle database as user
PGAADMIN
. -
From SQL*Plus, run the
pgddcr8r.sql
script in the$ORACLE_HOME/dg4appc/admin
directory. This script creates two roles,PGDDDEF
andPGDDGEN
. ThePGDDDEF
role providesSELECT
,INSERT
,UPDATE
, andDELETE
privileges against some of the PG DD tables, andSELECT
privileges against others, and allows execution of the PGAUDEFINE
,GENERATE
,REDEFINE
,REPORT
, andUNDEFINE
statements. ThePGDDGEN
role provides select privileges against the PG DD tables and allows execution of the PGAUGENERATE
andREPORT
statements only.SQL> @$ORACLE_HOME/dg4appc/admin/pgddcr8r.sql
-
-
Grant access to PGA required packages.
TIP developers require access to the following PL/SQL packages, which are shipped with Oracle database:
Explicit grants to run these packages must be made to TIP developers.
These grants can be private as in the following example:
$ sqlplus SYS/ pw@database_specification_string SQL> GRANT EXECUTE ON UTL_RAW TO tip_developer; SQL> GRANT EXECUTE ON UTL_PG TO tip_developer; SQL> GRANT EXECUTE ON DBMS_PIPE TO tip_developer; SQL> CONNECT PGAADMIN/ pw@database_specification_string SQL> GRANT EXECUTE ON PGAADMIN.PURGE_TRACE TO tip_developer; SQL> GRANT EXECUTE ON PGAADMIN.READ_TRACE TO tip_developer; SQL> GRANT EXECUTE ON PGAADMIN.GPGLOCAL TO tip_developer; SQL> EXIT
Alternatively, these grants can be public as in the following example:
$ sqlplus SYS/pw@ database_specification_string SQL> GRANT EXECUTE ON UTL_RAW TO PUBLIC; SQL> GRANT EXECUTE ON UTL_PG TO PUBLIC; SQL> GRANT EXECUTE ON DBMS_PIPE to PUBLIC; SQL> CONNECT PGAADMIN/ pw@database_specification_string SQL> GRANT EXECUTE ON PGAADMIN.PURGE_TRACE TO PUBLIC; SQL> GRANT EXECUTE ON PGAADMIN.READ_TRACE TO PUBLIC; SQL> GRANT EXECUTE ON PGAADMIN.GPGLOCAL TO PUBLIC; SQL> EXIT
You can use either private or public grants. Both are sufficient for using PGA. Public grants are easier and can be performed now. If you use private grants, then they must be given each time a new TIP developer user ID is created.
SQL scripts for performing these grants are provided in the
$ORACLE_HOME/dg4appc/admin
directory. Thepgddapub.sql
script performs these grants for public access to the packages. Thepgddadev.sql
script performs the grants for private access to the packages by a single TIP developer. If you are going to use private grants, then you must run thepgddadev.sql
script once for each TIP developer user ID:-
Use SQL*Plus to connect to Oracle database as
PGAADMIN
. -
From SQL*Plus, run the appropriate script (
pgddapub.sql
orpgddadev.sql
) from the$ORACLE_HOME/dg4appc/admin
directory. The script performs the necessary grants as described earlier. You are prompted for the required user IDs, passwords, and database specification strings. If you are using private grants, then repeat this step for each user ID requiring access to the packages.If you are using private grants, then repeat this step for each user ID requiring access to the packages.
SQL> @$ORACLE_HOME/dg4appc/admin/pgddapub.sql
or
SQL> @$ORACLE_HOME/dg4appc/admin/pgddadev.sql
-
If you are upgrading from a previous release of the gateway when the communication protocol was SNA, to the current gateway using TCP/IP, and if you want to upgrade your existing TIPs with new function and maintenance, then regenerate existing TIP specifications using the PGAU
GENERATE
statement.Note:
The PGAU has been enhanced to automatically upgrade existing PG DD entries with a new attribute when a PGAU
GENERATE
command is executed. To support this enhancement, add a new privilege to thePGDDGEN
role. To do this as thePGAADMIN
user, use SQL*Plus to connect to the Oracle database installation where the PG DD is stored. Then issue the following SQL command:SQL> GRANT INSERT ON PGA_DATA_VALUES TO PGDDGEN
-
Start PGAU from the directory path where the PGAU control files are generated and where TIPs are stored:
$ pgau PGAU> CONNECT PGAADMIN/pgaadmin@database_specification_string PGAU> GENERATE tranname PGAU> EXIT
For more information about the
GENERATE
command, refer to the PGAUGENERATE
command section in Chapter 2 of the Oracle Database Gateway for APPC User's Guide.Note that it is not necessary to define the PG DD entries again.
-
-
Start SQL*Plus in the same directory path where the newly-generated TIP specifications are stored.
$ sqlplus tip_owner/pw@database_specification_string SQL> @tipname.pkh SQL> @tipname.pkb SQL> exit
PGAU
GENERATE
produces the TIP in two output files: a specification and a body. You must compile both, first the specification and then the body.For more information about the
GENERATE
command, refer to the PGAUGENERATE
command section in Chapter 2, of the Oracle Database Gateway for APPC User's Guide.
Configuring TCP/IP for the Gateway
You must now configure the TCP/IP for IMS Connect communication package profiles for TCP/IP connections.
Configure the profiles to define the TCP/IP conversations with the OLTP.
When you have finished configuring your communications package, return to the following section "Configuring the Gateway",.
Loading the PGA_TCP_IMSC Table
Gateway users who want to employ the TCP/IP protocol do so by using the pg4tcpmap
tool.
The pg4tcpmap
tool is located on the gateway. Its function is to map the Side Profile Name to TCP/IP and IMS Connect attributes. You must run this tool before executing the PL/SQL gateway statements (such as $ORACLE_HOME/dg4appc/demo/IMS/pgaims.sql
).
In PGAINIT
TIP, for example, the user must specify a Side Profile Name. The SNA protocol recognizes and utilizes the parameter. In this release of the gateway, the pg4tcpmap
tool uses the original PGAINIT
TIP format to map the relevant SNA parameters to TCP/IP. The pg4tcpmap
tool inserts the values of these parameters into a table called PGA_TCP_IMSC
.
Before executing pg4tcpmap
, you must specify the ORACLE_HOME
, Oracle SID, and modify init
sid.
ora
. Refer to Gateway Initialization Parameters for TCP/IP Communication Protocol in this guide and Chapter 6 in the Oracle Database Gateway for APPC User's Guide for complete information about the pg4tcpmap
commands.
Chapter 6 of the Oracle Database Gateway for APPC User's Guide contains a list of the pg4tcpmap
commands and instructions for using them, as well as an example of the table. Refer to Chapter 8, "Troubleshooting" in the Oracle Database Gateway for APPC User's Guide for information about the trace file for the executed pg4tcpmap
tool.
To operate this tool, execute the following command:
$ $ORACLE_HOME/bin/pg4tcpmap
Refer to Output for the pg4tcpmap Tool for a sample of the pg4tcpmap
output.
Verifying the Gateway Installation and OLTP Configuration
To verify the gateway installation and the OLTP configuration, perform the following procedures after installing the gateway.
Note:
If your database link name is not "PGA," modify the demonstration .sql
files to give them the particular database link name that you created in Step 5 of Configuring Oracle Database: First-Time Installation. You must modify the following .sql
files:
-
pgavsn.sql
-
pgaecho.sql
-
pgaims.sql
Verifying the OLTP Configuration
Use the following procedure to verify your OLTP configuration.
Note:
If you have not completed the file transfers detailed in Preparing to Configure a Gateway Installation/Upgrade, then complete them now before proceeding to the next step.
IMS/TM Verification
Perform the following steps to verify the IMS/TM configuration. Be certain that you have installed and configured the IMS Connect and that it is up and running before you begin this procedure. Refer to the IBM IMS Connect Guide and Reference for information about how to perform the installation and configuration tasks.
Note:
TIPs must be recompiled when changing communication protocol to TCP/IP.
TCP/IP only: If you have existing TIPs that were generated previously on a gateway using the SNA communication package protocol and you want to utilize the new TCP/IP feature, then the TIPs will have to be regenerated by PGAU with mandatory NLS_LANGUAGE
and Side Profile Settings. Specify the appropriate ASCII character set in the DEFINE TRANSACTION
command.
This is because the gateway assumes that the appropriate user exit in IMS Connect is being used, which would translate between the appropriate ASCII and EBCDIC character sets.
==> Congratulations, your gateway is communicating with IMS/TM <==
Your IMS/TM installation verification is now complete.
Performing Postinstallation Procedures
The following are optional steps that you can perform as necessary. Installation of the sample applications for your OLTP is recommended to help you to fully understand how the gateway works and how it interfaces with your OLTP.
Installing Sample Applications
Your Oracle Database Gateway for APPC featuring TCP/IP for IMS Connect contains sample PL/SQL procedures and OLTP transaction programs that demonstrate the gateway's capabilities.
Note:
When you call a gateway that uses TCP/IP as the communication protocol, and you use EBCDIC as the language in the control files, then you must change the language from EBCDIC to ASCII. Some examples of control files that might be in EBCDIC language are ivtno.ctl
and ivtnv.ctl
.
For more information, refer to the $ORACLE_HOME/dg4appc/demo/IMS/ivtno.ctl
and $ORACLE_HOME/dg4appc/demo/IMS/ivtnv.ctl
files.
Samples are provided for IMS/TM:
-
IMS inquiry using
IVTNO
andIVTNV
sample transactions
Additional samples are added to the distribution media in newer releases of the product. Wherever possible, the sample applications use the sample databases provided with the database products.
For this release, the entire documentation about installing and using the sample applications is available in:
$ORACLE_HOME/dg4appc/demo/IMS/sample_IMS_applications.txt