Oracle Transparent Gateway User Guide

Oracle® Transparent Gateway for DRDA
Installation and User’s Guide
10g Release 2 (10.2) for Microsoft Windows
B16218-02
December 2005
Oracle Transparent Gateway for DRDA Installation and User's Guide, 10g Release 2 (10.2) for Microsoft Windows
B16218-02
Primary Author: Maitreyee Chaliha
Contributing Author: Peter A Castro
The Programs (which include both the software and documentation) contain proprietary information; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or decompilation of the Programs, except to the extent required to obtain interoperability with other independently created software or as specified by law, is prohibited.
The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. This document is not warranted to be error-free. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose.
If the Programs are delivered to the United States Government or anyone licensing or using the Programs on behalf of the United States Government, the following notice is applicable:
U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial computer software" or "commercial technical data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the Programs, including documentation and technical data, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement, and, to the extent applicable, the additional rights set forth in FAR 52.227-19, Commercial Computer Software--Restricted Rights (June 1987). Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065
The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redundancy and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and we disclaim liability for any damages caused by such use of the Programs.
Oracle, JD Edwards, PeopleSoft, and Retek are registered trademarks of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.
The Programs may provide links to Web sites and access to content, products, and services from third parties. Oracle is not responsible for the availability of, or any content provided on, third-party Web sites. You bear all risks associated with the use of such content. If you choose to purchase any products or services from a third party, the relationship is directly between you and the third party. Oracle is not responsible for: (a) the quality of third-party products or services; or (b) fulfilling any of the terms of the agreement with the third party, including delivery of products or services and warranty obligations related to purchased products or services. Oracle is not responsible for any loss or damage of any sort that you may incur from dealing with any third party.

Contents

Preface ............................................................................................................................................................... xv
Audience..................................................................................................................................................... xv
Documentation Accessibility................................................................................................................... xv
Related Documents ................................................................................................................................... xvi
Conventions ............................................................................................................................................... xvi
SQL*Plus Prompts.................................................................................................................................... xvii
DOS Prompts ............................................................................................................................................ xvii
Storage Measurements ............................................................................................................................ xvii
Directory Names....................................................................................................................................... xvii
1 Introduction
1.1 Introduction to the Oracle Transparent Gateway.................................................................. 1-1
1.1.1 Protection of Current Investment...................................................................................... 1-2
1.2 Release 10g Gateways................................................................................................................. 1-2
1.2.1 Advantages of the Gateway............................................................................................... 1-2
1.3 Gateway Capabilities.................................................................................................................. 1-2
1.3.1 Transparency at All Levels................................................................................................. 1-3
1.3.2 Extended Database Services............................................................................................... 1-3
1.3.3 Extended Advanced Networking, Internet and Intranet Support ............................... 1-4
1.3.4 Dynamic Dictionary Mapping ...................................................................................... 1-4
1.3.5 SQL......................................................................................................................................... 1-5
1.3.6 Data Definition Language ................................................................................................ 1-5
1.3.7 Data Control Language ..................................................................................................... 1-5
1.3.8 Passthrough and Native DB2 SQL ................................................................................... 1-5
1.3.9 Stored Procedures ............................................................................................................... 1-5
1.3.9.1 Oracle Stored Procedures............................................................................................ 1-5
1.3.9.2 Native DB2 Stored Procedures .................................................................................. 1-5
1.3.10 Languages ............................................................................................................................ 1-5
1.3.11 Oracle Database Server Technology and Tools .............................................................. 1-6
1.3.12 SQL*Plus ............................................................................................................................. 1-6
1.3.13 Two-Phase Commit and Multisite Transactions............................................................. 1-6
1.3.14 Site Autonomy .................................................................................................................. 1-6
iii
1.3.15 Migration and Coexistence................................................................................................. 1-6
1.3.16 Security.................................................................................................................................. 1-6
1.4 Terms ............................................................................................................................................ 1-7
1.5 Architecture .............................................................................................................................. 1-7
1.6 Implementation........................................................................................................................... 1-8
1.7 How the Gateway Works........................................................................................................... 1-9
1.7.1 SQL Differences.................................................................................................................... 1-9
1.8 Oracle Tools and the Gateway.................................................................................................. 1-9
1.8.1 SQL*Plus ............................................................................................................................ 1-10
1.9 Features ................................................................................................................................. 1-10
1.9.1 Heterogeneous Services Architecture ........................................................................ 1-10
1.9.2 Performance Enhancements ........................................................................................ 1-10
1.9.3 Fetch Reblocking ........................................................................................................... 1-10
1.9.4 Oracle Database 10g Passthrough Supported............................................................... 1-10
1.9.5 Retrieving Result Sets Through Passthrough ......................................................... 1-10
1.9.6 Support for TCP/IP ........................................................................................................ 1-11
1.9.7 Native Semantics .......................................................................................................... 1-11
1.9.8 Columns Supported in a Result Set ............................................................................... 1-11
1.9.9 EXPLAIN_PLAN Improvement ............................................................................... 1-11
1.9.10 Heterogeneous Database Integration ........................................................................ 1-11
1.9.11 Minimum Impact on Existing Systems.......................................................................... 1-11
1.9.12 Large Base of Data Access ............................................................................................. 1-11
1.9.13 Application Portability .................................................................................................. 1-11
1.9.14 Remote Data Access ................................................................................................... 1-11
1.9.15 Support for Distributed Applications ........................................................................ 1-12
1.9.16 Application Development and End User Tools ........................................................... 1-12
1.9.17 Password Encryption Utility........................................................................................... 1-13
1.9.18 Support for DB2/OS390 V6, V7, and V8 Stored Procedures...................................... 1-13
1.9.19 Codepage Map Facility.................................................................................................... 1-13
1.9.20 IBM DB2 Universal Database Support .......................................................................... 1-13
1.9.21 IBM DB2 Version 5.1 ASCII Tables ............................................................................... 1-13
1.9.22 Read-Only Support .......................................................................................................... 1-13
1.9.23 Support for Graphic and Multibyte Data...................................................................... 1-13
1.9.24 Support for DB2/UDB on Intel Hardware ................................................................... 1-13
1.9.25 Data Dictionary Support for DB2/UDB........................................................................ 1-13
2 Release Information
2.1 Product Set................................................................................................................................... 2-1
2.2 Changes and Enhancements ..................................................................................................... 2-1
2.3 Bugs Fixed in 10g Release 2 (10.2) ............................................................................................ 2-1
2.4 Known Problems......................................................................................................................... 2-3
2.5 Known Restrictions..................................................................................................................... 2-3
2.5.1 DB2 Considerations............................................................................................................. 2-3
2.5.2 SQL Limitations ................................................................................................................... 2-5
3 System Requirements
3.1 Hardware Requirements............................................................................................................ 3-1
iv
3.1.1 Processor ............................................................................................................................... 3-1
3.1.2 Memory................................................................................................................................. 3-1
3.1.3 Network Attachment .......................................................................................................... 3-2
3.1.4 Disk Space............................................................................................................................. 3-2
3.2 Software Requirements ............................................................................................................. 3-2
3.2.1 Operating System ................................................................................................................ 3-2
3.2.2 DRDA Databases ................................................................................................................. 3-2
3.2.3 Communications.................................................................................................................. 3-3
3.2.4 Oracle Database server........................................................................................................ 3-3
3.2.5 Oracle Networking Products ............................................................................................. 3-3
3.3 Documentation Requirements .................................................................................................. 3-3
4 Installing the Gateway
4.1 Introduction................................................................................................................................. 4-1
4.2 Before You Begin......................................................................................................................... 4-1
4.3 Checklist for Gateway Installation ....................................................................................... 4-2
4.4 Installation Overview................................................................................................................. 4-2
4.5 Preinstallation.............................................................................................................................. 4-2
4.6 Installing the Gateway from the Installation Media.............................................................. 4-2
4.6.1 Step 1: Log on to the host .................................................................................................. 4-2
4.6.2 Step 2: Load the CD-ROM into the CD-ROM Drive...................................................... 4-2
4.6.3 Step 3: Start the Oracle Universal Installer on Microsoft Windows............................ 4-3
4.6.4 Step 4: Step through the Oracle Universal Installer....................................................... 4-3
4.6.5 Step 5: Verify Installation Success.................................................................................... 4-3
4.7 Installation Complete ................................................................................................................. 4-3
4.7.1 Removing the Gateway....................................................................................................... 4-4
5 Configuring the DRDA Server
5.1 Checklists for Configuring the DRDA Server......................................................................... 5-1
5.1.1 DB2/OS390........................................................................................................................... 5-1
5.1.2 DB2/400 ................................................................................................................................ 5-1
5.1.3 DB2/UDB (Universal Database)........................................................................................ 5-2
5.1.4 DB2/VM................................................................................................................................ 5-2
5.2 DB2/OS390 ........................................................................................................................... 5-2
5.2.1 Step 1: Configure the Communications Server .............................................................. 5-2
5.2.2 Step 2: Define the user ID that owns the package.......................................................... 5-2
5.2.3 Step 3: Define the recovery user ID.................................................................................. 5-3
5.2.4 Step 4: Determine DRDA location name for DB2 instance........................................... 5-3
5.2.5 Step 5: Configure DB2 Distributed Data Facility for Gateway .................................... 5-3
5.3 DB2/400 ...................................................................................................................................... 5-3
5.3.1 Step 1: Configure the Communications Server .............................................................. 5-3
5.3.2 Step 2: Define the user ID that owns the package.......................................................... 5-4
5.3.3 Step 3: Define the recovery user ID.................................................................................. 5-4
5.3.4 Step 4: Determine DRDA location name for DB2/400 instance .................................. 5-4
5.4 DB2/UDB (Universal Database) ............................................................................................. 5-4
5.4.1 Step 1: Configure the SNA Communications Server..................................................... 5-4
v
5.4.2 Step 2: Define the user ID that owns the package.......................................................... 5-5
5.4.3 Step 3: Define the recovery user ID.................................................................................. 5-5
5.4.4 Step 4: Determine DRDA location name for DB2/UDB instance................................ 5-5
5.5 DB2/VM ................................................................................................................................... 5-5
5.5.1 Step 1: Configure the Communications Server .............................................................. 5-6
5.5.2 Step 2: Define the user ID that owns the package.......................................................... 5-6
5.5.3 Step 3: Define the recovery user ID.................................................................................. 5-6
5.5.4 Step 4: Determine DRDA location name for DB2/VM instance.................................. 5-6
6 Configuring Microsoft SNA Server or Host Integration Server
6.1 Before You Begin......................................................................................................................... 6-1
6.2 Steps for Configuring the Communications Interfaces......................................................... 6-1
6.3 Creating SNA Server Profiles for the Gateway .................................................................. 6-2
6.3.1 Independent Versus Dependent LUs .............................................................................. 6-2
6.4 Creating SNA Definitions for the Gateway ......................................................................... 6-2
6.4.1 Sample SNA Server Definitions ........................................................................................ 6-2
6.4.2 Definition Types................................................................................................................... 6-3
6.4.3 SNA Server Definitions....................................................................................................... 6-3
6.4.3.1 Server Selection ........................................................................................................... 6-4
6.4.3.2 Service Properties ......................................................................................................... 6-5
6.4.3.3 Link Service Definition .............................................................................................. 6-5
6.4.3.4 Connection Definition ................................................................................................ 6-7
6.4.3.5 Local LU Definition ................................................................................................ 6-9
6.4.3.6 Mode Definition ................................................................................................... 6-11
6.4.3.7 Remote LU Definition ......................................................................................... 6-13
6.4.3.8 CPI-C Symbolic Destination Names ..................................................................... 6-14
6.5 Testing the Connection ......................................................................................................... 6-15
6.6 Using SNA Session Security Validation ........................................................................... 6-16
6.7 SNA Conversation Security.................................................................................................... 6-16
6.7.1 SNA Security Option SECURITY=PROGRAM............................................................ 6-17
6.7.2 SNA Security Option SECURITY=SAME ..................................................................... 6-17
7 Configuring IBM Communication Server
7.1 Before You Begin......................................................................................................................... 7-1
7.2 Checklist for Configuring the Communications Interfaces.................................................. 7-1
7.3 Creating IBM Communication Server Profiles for the Gateway ....................................... 7-1
7.3.1 Independent Versus Dependent LUs ......................................................................... 7-2
7.3.2 Creating SNA Definitions for the Gateway .................................................................. 7-2
7.3.2.1 Sample IBM Communication Server Definitions .................................................... 7-2
7.4 Definition Types.......................................................................................................................... 7-3
7.4.1 IBM Communication Server Definitions.......................................................................... 7-3
7.4.1.1 Creating the Configuration ...................................................................................... 7-3
7.4.1.2 Defining the Node........................................................................................................ 7-4
7.5 Testing the Connection ......................................................................................................... 7-17
7.6 Using SNA Session Security Validation ........................................................................... 7-18
7.7 SNA Conversation Security.................................................................................................... 7-18
7.7.1 SNA Security Option SECURITY=PROGRAM............................................................ 7-19
vi
7.7.2 SNA Security Option SECURITY=SAME ..................................................................... 7-19
8 Configuring TCP/IP
8.1 Before You Begin......................................................................................................................... 8-1
8.1.1 Port Number......................................................................................................................... 8-1
8.2 Configuring TCP/IP .................................................................................................................. 8-1
9 Oracle Net
9.1 Checklists for Oracle Net ........................................................................................................ 9-1
9.1.1 Configuring Oracle Net ...................................................................................................... 9-1
9.1.2 Advanced Security Encryption ......................................................................................... 9-1
9.1.2.1 Setting Up Advanced Security Encryption for Test ................................................ 9-1
9.1.2.2 Testing Advanced Security Encryptions................................................................... 9-1
9.2 Oracle Net and SQL*Net Introduction ................................................................................... 9-2
9.3 Oracle Net Overview ............................................................................................................... 9-2
9.3.1 Distributed Processing........................................................................................................ 9-2
9.3.2 Distributed Database........................................................................................................... 9-2
9.3.3 Terminology for Oracle Net............................................................................................... 9-2
9.4 Configuring Oracle Net ............................................................................................................. 9-3
9.4.1 Step 1: Modify the listener.ora file ................................................................................... 9-3
9.4.2 Step 2: Modify the tnsnames.ora file................................................................................ 9-3
9.5 Advanced Security Encryption................................................................................................. 9-4
9.6 Setting Up Advanced Security Encryption for Test............................................................... 9-4
9.6.1 Step 1: Set Advanced Security Encryption Parameters for the Gateway ................... 9-4
9.6.2 Step 2: Set Advanced Security Encryption Parameters................................................. 9-5
9.7 Testing Advanced Security Encryptions................................................................................. 9-5
9.7.1 Step 1: Connect the Gateway and Oracle the Integrating Server................................. 9-5
9.7.2 Step 2: Reset Configuration Parameters on the Gateway ............................................. 9-5
10 Configuring the Gateway
10.1 Configuration Checklist .................................................................................................... 10-1
10.2 Choosing a Gateway System Identifier (SID) ...................................................................... 10-2
10.2.1 Enter the SID on the Worksheet ..................................................................................... 10-3
10.3 Gateway Configuration........................................................................................................... 10-3
10.4 Configuring the Host............................................................................................................... 10-3
10.4.1 Step 1: Copy the gateway initialization ....................................................................... 10-3
10.4.2 Step 2: Determine settings for gateway initialization parameters............................ 10-3
10.4.2.1 Required Parameters................................................................................................. 10-4
10.4.2.2 Optional Parameters ................................................................................................. 10-4
10.4.3 Step 3: Tailor the initsid.ora File..................................................................................... 10-4
10.4.4 Binding the DRDA Gateway Package ........................................................................... 10-5
10.4.5 Binding Packages on DB2/Universal Database (DB2/UDB) ................................. 10-5
10.5 DRDA Gateway Package Considerations ............................................................................ 10-6
10.5.1 Before Binding the DRDA Gateway Package............................................................... 10-6
10.5.1.1 Step 1: Check all DRDA parameter settings......................................................... 10-6
10.5.1.2 Step 2: If using DB2/UDB, then create ORACLE2PC table ............................... 10-7
vii
10.5.2 Sample SQL scripts .......................................................................................................... 10-7
10.5.2.1 Step 1: Run Data Dictionary scripts ...................................................................... 10-7
10.5.2.2 Step 1a: Upgrading from a previous gateway version ...................................... 10-7
10.5.2.3 Step 1b: Creating the Data Dictionary tables and views .................................... 10-7
10.5.2.4 Step 2: DB2/UDB or other server........................................................................... 10-7
10.5.2.5 Step 2a: If server is DB2/UDB, then grant authority to package ..................... 10-8
10.5.2.6 Step 2b: If server is not DB2/UDB, then create the ORACLE2PC table .......... 10-8
10.6 Backup and Recovery of Gateway Configuration............................................................... 10-8
10.7 Configuring the Oracle Integrating Server ....................................................................... 10-8
10.7.1 Step 1: Create a database link......................................................................................... 10-8
10.7.2 Step 2: Create synonyms and views.............................................................................. 10-8
10.8 Accessing the Gateway from Other Oracle Servers .......................................................... 10-8
10.9 Accessing Other DRDA Servers ..................................................................................... 10-9
10.10 Gateway Installation and Configuration Complete............................................................ 10-9
11 Using the Gateway
11.1 Processing a Database Link.................................................................................................... 11-1
11.1.1 Creating Database Links ................................................................................................. 11-1
11.1.2 Guidelines for Database Links........................................................................................ 11-2
11.1.3 Dropping Database Links................................................................................................ 11-2
11.1.4 Examining Available Database Links............................................................................ 11-2
11.1.5 Limiting the Number of Active Database Links .......................................................... 11-2
11.2 Accessing the Gateway ........................................................................................................... 11-3
11.2.1 Step 1: Log in to the Oracle integrating server............................................................ 11-3
11.2.2 Step 2: Create a database link to the DRDA database................................................ 11-3
11.2.3 Step 3: Retrieve data from the DRDA database .......................................................... 11-3
11.3 Accessing AS/400 File Members........................................................................................... 11-3
11.4 Using the Synonym Feature................................................................................................... 11-3
11.5 Performing Distributed Queries............................................................................................ 11-4
11.5.1 Example of a Distributed Query..................................................................................... 11-4
11.5.2 Two-Phase Commit Processing .................................................................................... 11-5
11.5.3 Distributed DRDA Transactions .................................................................................... 11-5
11.6 Read-Only Gateway ................................................................................................................ 11-5
11.7 Replicating in a Heterogeneous Environment ................................................................. 11-6
11.7.1 Oracle Database 10g Server Triggers ............................................................................. 11-6
11.7.2 Oracle Snapshots ........................................................................................................... 11-6
11.8 Copying Data from the Oracle Server to the DRDA Server.............................................. 11-6
11.9 Copying Data from the DRDA Server to the Oracle Server .............................................. 11-6
11.10 Tracing SQL Statements ......................................................................................................... 11-7
12 Developing Applications
12.1 Gateway Appearance to Application Programs.................................................................. 12-1
12.1.1 Fetch Reblocking............................................................................................................... 12-2
12.2 Using Oracle Stored Procedures with the Gateway .......................................................... 12-2
12.3 Using DRDA Server Stored Procedures with the Gateway ........................................... 12-3
12.3.1 Oracle Application and DRDA Server Stored Procedure Completion .................... 12-4
12.3.2 Procedural Feature Considerations with DB2 ............................................................. 12-5
viii
12.4 Database Link Behavior .......................................................................................................... 12-5
12.5 Oracle Server SQL Construct Processing ............................................................................. 12-6
12.5.1 Compatible SQL Functions ............................................................................................. 12-6
12.5.2 Translated SQL Functions ............................................................................................... 12-6
12.5.3 Compensated SQL Functions.......................................................................................... 12-6
12.5.4 Native Semantic SQL Functions..................................................................................... 12-7
12.5.5 DB2/OS390 SQL Compatibility...................................................................................... 12-7
12.5.6 DB2/Universal Database SQL Compatibility............................................................... 12-9
12.5.7 DB2/400 SQL Compatibility......................................................................................... 12-12
12.5.8 DB2/VM SQL Compatibility ........................................................................................ 12-15
12.6 Native Semantics.................................................................................................................... 12-18
12.6.1 SQL Functions That Can Be Enabled........................................................................... 12-18
12.6.2 SQL Functions That Can Be Disabled.......................................................................... 12-19
12.6.3 SQL Set Operators and Clauses.................................................................................... 12-19
12.7 DRDA Data Type to Oracle Data Type Conversion......................................................... 12-20
12.7.1 Performing Character String Operations ................................................................ 12-21
12.7.2 Converting Character String data types ................................................................ 12-21
12.7.3 Performing Graphic String Operations ...................................................................... 12-21
12.7.4 Performing Date and Time Operations ................................................................... 12-22
12.7.4.1 Processing TIME and TIMESTAMP Data............................................................ 12-22
12.7.4.2 Processing DATE Data............................................................................................ 12-22
12.7.4.3 Performing Date Arithmetic .................................................................................. 12-23
12.7.5 Dates ............................................................................................................................... 12-23
12.7.6 HS_NLS_DATE_FORMAT Support ........................................................................ 12-24
12.7.7 Oracle TO_DATE Function ........................................................................................ 12-24
12.7.8 Performing Numeric Data Type Operations.............................................................. 12-25
12.7.9 Mapping the COUNT Function.................................................................................... 12-25
12.7.10 Performing Zoned Decimal Operations...................................................................... 12-25
12.8 Passing Native SQL Statements through the Gateway ................................................ 12-25
12.8.1 Processing DDL Statements through Passthrough.................................................... 12-26
12.8.2 Using the DBMS_HS_PASSTHROUGH.EXECUTE_IMMEDIATE Function .... 12-26
12.8.2.1 Examples................................................................................................................... 12-27
12.8.3 Retrieving Result Sets Through Passthrough............................................................. 12-27
12.8.3.1 Example .............................................................................................................. 12-27
12.9 Oracle Data Dictionary Emulation on a DRDA Server .................................................... 12-28
12.9.1 Using the Gateway Data Dictionary............................................................................ 12-28
12.9.2 Using the DRDA Catalog............................................................................................... 12-28
12.10 Defining the Number of DRDA Cursors............................................................................ 12-28
13 Security Considerations
13.1 Security Overview ................................................................................................................... 13-1
13.2 Authenticating Application Logons...................................................................................... 13-1
13.3 Defining and Controlling Database Links............................................................................ 13-2
13.3.1 Link Accessibility.............................................................................................................. 13-2
13.3.2 Links and CONNECT Clauses........................................................................................ 13-2
13.4 TCP/IP Security .................................................................................................................. 13-3
13.5 Processing Inbound Connections .......................................................................................... 13-3
ix
13.5.1 User ID Mapping .............................................................................................................. 13-3
13.5.1.1 DB2/OS390 ............................................................................................................ 13-3
13.5.1.2 DB2/VM ................................................................................................................ 13-4
13.5.1.3 DB2/400 .................................................................................................................. 13-4
13.5.1.4 DB2/Universal Database.......................................................................................... 13-4
13.6 Passwords in the Gateway Initialization File ...................................................................... 13-5
14 Migration and Coexistence with Existing Gateways
14.1 Migrating Existing V4, V8, or V9 Gateway Instances to New Release ............................ 14-1
14.1.1 Step 1: Install the new Release ...................................................................................... 14-1
14.1.2 Step 2: Transferring initsid.gtwboot Gateway Boot Initialization parameters. ..... 14-1
14.1.3 Step 3: Transferring initsid.ora gateway initialization file parameters. .................. 14-2
14.2 Backout Considerations When Migrating to New Releases.............................................. 14-2
14.3 New and Changed Parameters When Migrating to Release 10........................................ 14-2
14.3.1 New Parameters................................................................................................................ 14-2
14.3.1.1 New Gateway Initialization File Parameters......................................................... 14-2
14.3.2 Parameters That Have Been Changed in Usage........................................................... 14-3
14.3.3 Parameters That Have Been Renamed .......................................................................... 14-3
14.3.4 Obsolete Parameters......................................................................................................... 14-3
14.4 DRDA Server Considerations ................................................................................................ 14-4
14.5 Oracle Net Considerations...................................................................................................... 14-4
15 Error Messages, Diagnosis, and Reporting
15.1 Interpreting Gateway Error Messages.................................................................................. 15-1
15.1.1 Errors Detected by the Oracle Integrating Server........................................................ 15-1
15.1.2 Errors Detected by the Gateway..................................................................................... 15-2
15.1.3 Errors Detected in the DRDA Software......................................................................... 15-2
15.1.4 Communication Errors .................................................................................................... 15-2
15.1.5 Errors Detected by the Server Database........................................................................ 15-3
15.2 Mapped Errors ......................................................................................................................... 15-3
15.3 Gateway Error Codes ............................................................................................................. 15-4
15.4 SQL Tracing and the Gateway .............................................................................................. 15-5
15.4.1 SQL Tracing in the Oracle Database .............................................................................. 15-5
15.4.2 SQL Tracing in the Gateway ........................................................................................... 15-5
A Oracle DB2 Data Dictionary Views
A.1 Supported Views........................................................................................................................ A-1
A.2 Data Dictionary View Tables.................................................................................................... A-2
A.2.1 ALL_CATALOG ................................................................................................................ A-2
A.2.2 ALL_COL_COMMENTS .................................................................................................. A-2
A.2.3 ALL_CONS_COLUMNS .................................................................................................. A-2
A.2.4 ALL_CONSTRAINTS ....................................................................................................... A-3
A.2.5 ALL_INDEXES ................................................................................................................... A-3
A.2.6 ALL_IND_COLUMNS....................................................................................................... A-5
A.2.7 ALL_OBJECTS .................................................................................................................... A-5
A.2.8 ALL_SYNONYMS ............................................................................................................. A-6
x
A.2.9 ALL_TABLES ..................................................................................................................... A-6
A.2.10 ALL_TAB_COLUMNS ...................................................................................................... A-7
A.2.11 ALL_TAB_COMMENTS .................................................................................................. A-8
A.2.12 ALL_USERS ........................................................................................................................ A-9
A.2.13 ALL_VIEWS ....................................................................................................................... A-9
A.2.14 COLUMN_PRIVILEGES ................................................................................................... A-9
A.2.15 DICTIONARY ................................................................................................................... A-10
A.2.16 DUAL ................................................................................................................................. A-10
A.2.17 TABLE_PRIVILEGES ...................................................................................................... A-10
A.2.18 USER_CATALOG ............................................................................................................ A-10
A.2.19 USER_COL_COMMENTS .............................................................................................. A-10
A.2.20 USER_CONSTRAINTS ................................................................................................... A-11
A.2.21 USER_CONS_COLUMNS .............................................................................................. A-11
A.2.22 USER_INDEXES ............................................................................................................... A-11
A.2.23 USER_OBJECTS ............................................................................................................... A-13
A.2.24 USER_SYNONYMS ......................................................................................................... A-13
A.2.25 USER_TABLES ................................................................................................................. A-14
A.2.26 USER_TAB_COLUMNS ................................................................................................. A-15
A.2.27 USER_TAB_COMMENTS .............................................................................................. A-16
A.2.28 USER_USERS..................................................................................................................... A-16
A.2.29 USER_VIEWS .................................................................................................................... A-17
B Sample Files
B.1 Sample gateway initialization file ........................................................................................... B-1
B.2 Sample Oracle Net tnsnames.ora File ..................................................................................... B-2
B.3 Sample Oracle Net listener.ora File......................................................................................... B-2
C DRDA-Specific Parameters
C.1 Modifying the Gateway Initialization File............................................................................. C-1
C.2 Setting Parameters in the Gateway Initialization File .......................................................... C-1
C.3 Syntax and Usage....................................................................................................................... C-1
C.4 Gateway Initialization File Parameters................................................................................... C-2
C.4.1 DRDA_CACHE_TABLE_DESC ....................................................................................... C-2
C.4.2 DRDA_CAPABILITY......................................................................................................... C-2
C.4.3 DRDA_CODEPAGE_MAP ............................................................................................... C-2
C.4.4 DRDA_COMM_BUFLEN.................................................................................................. C-2
C.4.5 DRDA_CONNECT_PARM (SNA format) ................................................................. C-3
C.4.6 DRDA_CONNECT_PARM (TCP/IP format) .......................................................... C-3
C.4.7 DRDA_CMSRC_CM_IMMEDIATE ............................................................................. C-3
C.4.8 DRDA_DEFAULT_CCSID ........................................................................................... C-3
C.4.9 DRDA_DESCRIBE_TABLE ......................................................................................... C-4
C.4.10 DRDA_DISABLE_CALL ............................................................................................. C-4
C.4.11 DRDA_FLUSH_CACHE .............................................................................................. C-4
C.4.12 DRDA_GRAPHIC_PAD_SIZE ..................................................................................... C-4
C.4.13 DRDA_GRAPHIC_LIT_CHECK ................................................................................ C-5
C.4.14 DRDA_GRAPHIC_TO_MBCS .................................................................................... C-5
xi
C.4.15 DRDA_GRAPHIC_CHAR_SIZE...................................................................................... C-5
C.4.16 DRDA_ISOLATION_LEVEL ...................................................................................... C-5
C.4.17 DRDA_LOCAL_NODE_NAME ................................................................................. C-6
C.4.18 DRDA_MBCS_TO_GRAPHIC .................................................................................... C-6
C.4.19 DRDA_OPTIMIZE_QUERY ........................................................................................ C-6
C.4.20 DRDA_PACKAGE_COLLID ...................................................................................... C-7
C.4.21 DRDA_PACKAGE_CONSTOKEN ............................................................................ C-7
C.4.22 DRDA_PACKAGE_NAME ......................................................................................... C-7
C.4.23 DRDA_PACKAGE_OWNER ...................................................................................... C-7
C.4.24 DRDA_PACKAGE_SECTIONS .................................................................................. C-8
C.4.25 DRDA_READ_ONLY .................................................................................................. C-8
C.4.26 DRDA_RECOVERY_PASSWORD ............................................................................. C-8
C.4.27 DRDA_RECOVERY_USERID ..................................................................................... C-8
C.4.28 DRDA_REMOTE_DB_NAME .................................................................................... C-9
C.4.29 DRDA_SECURITY_TYPE ............................................................................................ C-9
C.4.30 FDS_CLASS ................................................................................................................... C-9
C.4.31 FDS_CLASS_VERSION ............................................................................................... C-9
C.4.32 FDS_INSTANCE ......................................................................................................... C-10
C.4.33 HS_FDS_FETCH_ROWS ............................................................................................ C-10
C.4.34 HS_LANGUAGE ......................................................................................................... C-10
C.4.35 HS_NLS_NCHAR ......................................................................................................... C-10
C.4.36 LOG_DESTINATION .................................................................................................. C-11
C.4.37 ORA_MAX_DATE ........................................................................................................ C-11
C.4.38 ORA_NLS10 .................................................................................................................. C-11
C.4.39 ORACLE_DRDA_TCTL ............................................................................................ C-11
C.4.40 ORACLE_DRDA_TRACE ........................................................................................... C-11
C.4.41 TRACE_LEVEL ........................................................................................................... C-12
D National Language Support
D.1 Overview of NLS Interactions.................................................................................................. D-1
D.2 Client and Oracle Integrating Server Configuration ............................................................ D-3
D.3 Gateway Language Interaction with DRDA Server ............................................................ D-4
D.3.1 Gateway Configuration ..................................................................................................... D-4
D.3.2 NLS Parameters in the Gateway Initialization File........................................................ D-4
D.3.2.1 HS_LANGUAGE.............................................................................................................. D-5
D.3.2.2 HS_NLS_NCHAR ....................................................................................................... D-5
D.3.2.3 HS_NLS_DATE_FORMAT............................................................................................. D-5
D.3.2.4 HS_NLS_DATE_LANGUAGE ........................................................................................ D-5
D.4 Gateway Codepage Map Facility ...................................................................................... D-5
D.5 Multibyte and Double-Byte Support in the Gateway........................................................... D-8
D.6 Message Availability ............................................................................................................... D-10
D.7 Example of NLS Configuration.............................................................................................. D-10
xii
E Configuration Worksheet
F Quick Reference to Oracle SQL Functions
G Sample Applications
G.1 DB2INS .................................................................................................................................. G-1
G.2 ORAIND .............................................................................................................................. G-2
Index
xiii
xiv

Audience

Preface

The Oracle Transparent Gateway for DRDA for Microsoft Windows provides users with transparent access to DRDA databases as if they were Oracle databases.
This guide is intended for anyone responsible for installing, configuring, and administering the gateway, and also for application developers.
Read this guide if you are responsible for tasks such as:
Installing and configuring the Oracle Transparent Gateway for DRDA
Setting up gateway security
Diagnosing gateway errors
Using the gateway to access tables in DRDA databases
Writing applications that access DRDA databases through the gateway
Configuring the SNA server product
You must understand the fundamentals of transparent gateways and the Microsoft Windows operating system before using this guide to install or administer the gateway.

Documentation Accessibility

Our goal is to make Oracle products, services, and supporting documentation accessible, with good usability, to the disabled community. To that end, our documentation includes features that make information available to users of assistive technology. This documentation is available in HTML format, and contains markup to facilitate access by the disabled community. Accessibility standards will continue to evolve over time, and Oracle is actively engaged with other market-leading technology vendors to address technical obstacles so that our documentation can be accessible to all of our customers. For more information, visit the Oracle Accessibility Program Web site at
http://www.oracle.com/accessibility/
Accessibility of Code Examples in Documentation
Screen readers may not always correctly read the code examples in this document. The conventions for writing code require that closing braces should appear on an otherwise empty line; however, some screen readers may not always read a line of text that consists solely of a bracket or brace.
xv
Accessibility of Links to External Web Sites in Documentation
This documentation may contain links to Web sites of other companies or organizations that Oracle does not own or control. Oracle neither evaluates nor makes any representations regarding the accessibility of these Web sites.
TTY Access to Oracle Support Services
Oracle provides dedicated Text Telephone (TTY) access to Oracle Support Services within the United States of America 24 hours a day, seven days a week. For TTY support, call 800.446.2398.

Related Documents

The Oracle Transparent Gateway for DRDA Installation and User's Guide for Microsoft Windows is included as part of your product. Also included is:
Oracle Database Heterogeneous Connectivity Administrator's Guide
This guide contains information common to all heterogeneous gateways, including important information on functions, parameters, and error messages.
Oracle Database Administrator's Guide
Oracle Database Concepts
Oracle Database Error Messages
Oracle Database Performance Tuning Guide

Conventions

Oracle Database Security Guide
Oracle Database Heterogeneous Connectivity Administrator's Guide
In this manual, "Windows" refers to any Microsoft Windows operating system. In examples, an implied carriage return occurs at the end of each line, unless otherwise
noted. You must press the Return key at the end of a line of input. Examples of input and output for the gateway and the Oracle environment are shown
in a special font:
> mkdir D:\ORACLE\your_name
All output is shown as it actually appears. For input, refer to the following list. The first part of each line represents the conventions used in this manual, and the second part describes their meanings:
... Horizontal ellipsis points in statements or commands mean that parts of the statement or command (that are not directly related to the example) have been omitted. Vertical ellipsis points in an example also mean that information that is not directly related to the example has been omitted.
italic font indicates that a word or phrase of your choice must be substituted for the term in italic font, such as your actual member name or directory name.
xvi
boldface text Boldface type in text indicates a term that is defined in the text. < > Angle brackets enclose user-supplied names. { } Curly braces indicate that one of the enclosed arguments is required. Do not enter
the braces themselves.
[ ] Square brackets indicate that the enclosed arguments are optional. You can choose one or none. Do not enter the brackets themselves.
| Vertical lines separate choices. Other punctuation, such as commas, quotes, or the pipe symbol (|), must be entered as
shown unless otherwise specified. Directory names, file IDs, and so on, appear in examples. When these names appear in text, they may be highlighted in bold. The use of italics indicates that those portions of a file ID that appear in italics can vary.

SQL*Plus Prompts

The SQL*Plus prompt, SQL>, appears in SQL statements and SQL*Plus command examples. Enter your response at the prompt. Do not enter the text of the prompt, "SQL>", in your response.

DOS Prompts

The DOS prompt, >, appears in DOS command examples. Enter your response at the prompt. Do not enter the text of the prompt, ">", in your response. A dollar sign ($) is part of some DOS directory names and should not be confused as a prompt character.

Storage Measurements

Storage measurements use the following abbreviations:
KB, for kilobyte, which equals 1,024 bytes
MB, for megabyte, which equals 1,048,576 bytes
GB, for gigabyte, which equals 1,073,741,824 bytes

Directory Names

Throughout this document, there are references to the directories in which product-related files reside. ORACLE_HOME is used to represent the Oracle home directory. This is the default location for Oracle products. If you have installed into a location other than ORACLE_HOME, replace all references to ORACLE_HOME with the drive and path specification you have used.
xvii
xviii
1

Introduction

The Oracle Transparent Gateway for DRDA enables you to:
Integrate heterogeneous database management systems so that they appear as a
single homogeneous database system
Read and write data from Oracle applications to data in DB2/OS390, DB2/400,
DB2 Universal Database, DB2/VM, and IBM SQL/DS on VM databases in addition to any Oracle database server data.
Read this chapter for information about the architecture, uses, and features of the Oracle Transparent Gateway for DRDA. It contains the following sections:
Introduction to the Oracle Transparent Gateway
Release 10g Gateways
Gateway Capabilities
Term s
Architecture
Implementation
How the Gateway Works
Oracle Tools and the Gateway
Features

1.1 Introduction to the Oracle Transparent Gateway

In today’s global economy, information is a company’s most valuable resource. Whether you need to analyze new markets, tailor your products to meet local demands, increase your ability to handle complex customer information, or streamline operations, your company requires instant access to current and complete information
Company growth and diversification often mean functioning with a collage of applications and geographically scattered data that may be using incompatible networks, platforms, and storage formats. Diverse application standards and storage formats can make integration of information difficult. Oracle offers integration technologies to overcome these technical barriers. Oracle Enterprise Integration Gateways simplify complex systems and remove obstacles to information, thereby providing your company the opportunity to focus on business.
Introduction 1-1
Release 10g Gateways

1.1.1 Protection of Current Investment

Oracle Transparent Gateway for DRDA gives your company the ability to develop its information systems without forfeiting its investments in current data and applications. The gateway gives you access to the Oracle and DB2 data with a single set of applications while you continue to use existing IBM applications to access your DB2 data. You can also use more productive database tools and move to a distributed database technology without giving up access to the current data.
If you choose to migrate to Oracle Database technology and productivity, then the gateway enables you to control the pace of your migration. As you transfer applications from your previous technology to the Oracle Database, you can use the gateway to move the DB2 data into Oracle databases.

1.2 Release 10g Gateways

Oracle Database 10g provides the foundation for the next generation of the Oracle Enterprise Integration Gateways Release 10g, which will deliver enhanced integration capabilities by exploiting Oracle Database 10g Heterogeneous Services. Heterogeneous Services is a component of the Oracle Database 10g server. The Oracle Database 10g server provides the common architecture for future generations of the gateways. For detailed information on Oracle Heterogeneous Services, refer to Oracle Database
Heterogeneous Connectivity Administrator's Guide.
The version 10 gateways are even more tightly integrated with the Oracle Database 10g server than previous versions, enabling improved performance and enhanced functionality while still providing transparent integration of Oracle and non-Oracle data. For example, connection initialization information is available in the local Oracle Database 10g server, reducing the number of round trips and the amount of data sent over the network. SQL processing is also faster, because statements that are run by an application are parsed and translated once and can then be reused by multiple applications.
Release 10g gateways leverage any enhancements in the Oracle Database 10g server, and you can quickly extend those benefits to the non-Oracle data.

1.2.1 Advantages of the Gateway

Oracle Transparent Gateway for DRDA enables Oracle applications to access the DRDA Application Servers, such as DB2 for OS/390 (MVS), through Structured Query Language (SQL). The gateway and the Oracle Database 10g server together create the appearance that all data resides on a local Oracle Database 10g server, though data might be widely distributed. If data is moved from a DRDA Application Server database to an Oracle Database server, then no changes in application design or function are needed. The gateway handles all differences in both data types and SQL functions between the application and the database.

1.3 Gateway Capabilities

Oracle Transparent Gateway for DRDA gives you the power to integrate your heterogeneous systems into a single, seamless environment. This integration enables you to make full use of existing hardware and applications throughout your corporatewide environment. You can eliminate the need to rewrite applications for each configuration, and you can avoid the tedious, error-prone process of manual data transfer. Together with the Oracle tools, networking, and data server technology, the Oracle Transparent Gateway for DRDA sets a high standard for seamless, enterprise wide information access.
1-2 Oracle Transparent Gateway for DRDA Installation and User's Guide
Oracle Transparent Gateway for DRDA enables applications to read and update DB2 data and Oracle data as if all of the data were stored in a single database. As a result, users and application programmers are not required to know either the physical location or the storage characteristics of the data. This transparency not only permits you to integrate heterogeneous data seamlessly, but also simplifies your gateway implementation, application development, and maintenance.

1.3.1 Transparency at All Levels

The Oracle Transparent Gateway for DRDA gives you transparency at every level within your enterprise.
Location transparency
Users can access tables by name without needing to understand the physical location of the tables.
Network transparency
The gateways exploit Oracle Net technology to enable users to access data across multiple networks without concern for the network architecture or protocols. TCP/IP protocol is supported.
Operating system transparency
Gateway Capabilities
You can access data that is stored under multiple operating systems without being aware of the operating systems that hold the data.
Data storage transparency
Data can be accessed regardless of the database or file format.
Access method transparency
You can use a single dialect of SQL for any data store, eliminating the need to code for database-specific access methods or SQL implementations.

1.3.2 Extended Database Services

Following are some of the more sophisticated Oracle Database 10g server services that are available through the gateway.
SQL functions
Your application can access all of your data using Oracle SQL, which is rich in features. Advanced Oracle Database 10g server functions, such as outer joins, are available even if the target data stores do not support them in a native environment. The method by which the gateways are integrated with the Oracle Database 10g server ensures that the newest features of each database release are always available immediately to the gateway.
Distributed capabilities
Heterogeneous data can be integrated seamlessly because Oracle Database distributed capabilities, such as JOIN and UNION, can be applied to non-Oracle data without any special programming or mapping.
Distributed query optimization
The Oracle Database 10g server can use its advanced query optimization techniques to ensure that SQL statements are run efficiently against any of your data. The data distribution and storage characteristics of local and remote data are equally considered.
Introduction 1-3
Gateway Capabilities
Two-phase commit protection
The Oracle server two-phase commit mechanism provides consistency across data stores by ensuring that a transaction that spans data stores is still treated as a single unit of work. Changes are not committed (or permanently stored) in any data store unless the changes can be committed in all data stores that will be affected.
Stored procedures and database triggers
The same Oracle stored procedures and database triggers can be used to access all of the data, thereby ensuring uniform enforcement of business rules across the enterprise.

1.3.3 Extended Advanced Networking, Internet and Intranet Support

The gateway integration with the Oracle Database 10g server extends (to non-Oracle data) the benefits of the Oracle Internet software, and Oracle Net software and extends the benefits of the Oracle client/server and server/server connectivity software. These powerful features include:
Application server support
Any Internet or intranet application that can access data in Oracle database can also incorporate information from data stores that are accessible through the gateways. Web browsers can connect to Oracle database using any application server product that supports Oracle software.
Implicit protocol conversion
Oracle Database and Oracle Net can work together as a protocol converter, enabling applications to transparently access other data stores on platforms that do not support the network protocol of the client. An Oracle Database 10g server can use TCP/IP to communicate with the gateway and another data store.
Advanced Security
Non-Oracle data can be protected from unauthorized access or tampering during transmission to the client. This is done by using the hardware-independent and protocol-independent encryption and CHECKSUM services of Advanced Security.
Wireless communication
Oracle Mobile Agents, an industry-leading Oracle mobile technology, enables wireless communication to Oracle Database 10g servers or to any databases that are accessible through the gateways. This gives your field personnel direct access to enterprise data from mobile laptop computers.

1.3.4 Dynamic Dictionary Mapping

The simple setup of the gateway does not require any additional mapping. Before an application can access any information, the application must be told the structure of the data, such as the columns of a table and their lengths. Many products require administrators to manually define that information in a separate data dictionary stored in a hub. Applications then access the information using the hub dictionary instead of the native dictionaries of each database. This approach requires a great deal of manual configuration and maintenance on your part. As administrators, you must update the data dictionary in the hub whenever the structure of a remote table is changed.
1-4 Oracle Transparent Gateway for DRDA Installation and User's Guide
Inefficient duplication is not necessary with Oracle Transparent Gateway for DRDA. The gateway uses the existing native dictionaries of each database. The applications access data using the dictionaries that are designed specifically for each database, which means that no redundant dictionary ever needs to be created or maintained.

1.3.5 SQL

Oracle Transparent Gateways ease application development and maintenance by enabling you to access any data using a uniform set of SQL queries. Changes to the location, storage characteristics, or table structure do not require any changes to the applications. ANSI and ISO standard SQL are supported, along with powerful Oracle extensions.

1.3.6 Data Definition Language

Oracle applications can create tables in target data stores by using native data definition language (DDL) statements.

1.3.7 Data Control Language

You can run native data control language (DCL) statements from an Oracle environment, enabling central administration of user privileges and access levels for heterogeneous data stores.
Gateway Capabilities

1.3.8 Passthrough and Native DB2 SQL

Running of native DB2 SQL can be passed through the gateway for processing directly against DB2. This enables applications to send statements, such as a DB2 CREATE TABLE, to the gateway for running on a target DB2 system.

1.3.9 Stored Procedures

The gateway enables you to exploit both Oracle and non-Oracle stored procedures, leveraging your investments in a distributed, multi database environment. Oracle stored procedures can access multiple data stores easily, without any special coding for heterogeneous data access.
1.3.9.1 Oracle Stored Procedures
Oracle stored procedures enable you to access and update DB2 data by using centralized business rules that are stored in the Oracle Database 10g server. Using Oracle stored procedures can increase database performance by minimizing network traffic. Instead of sending individual SQL statements across the network, an application can send a single EXECUTE command to begin an entire PL/SQL routine.
1.3.9.2 Native DB2 Stored Procedures
The gateway can run DB2 stored procedures using standard Oracle PL/SQL. The Oracle application run the DB2 stored procedure as if it were an Oracle remote procedure.

1.3.10 Languages

Any application or tool that supports the Oracle Database 10g server can access over thirty different data sources through the Oracle gateways. A wide variety of open system tools from Oracle and third-party vendors can be used, even if the data is
Introduction 1-5
Gateway Capabilities
stored in legacy, proprietary formats. Hundreds of tools are supported, including ad hoc query tools, Web browsers, turnkey applications, and application development tools.

1.3.11 Oracle Database Server Technology and Tools

The gateway is integrated into the Oracle Database server technology, which provides global query optimization, transaction coordination for multisite transactions, support for all Oracle Net configurations, and so on. Tools and applications that support the Oracle Database server can be used to access heterogeneous data through the gateway.

1.3.12 SQL*Plus

You can use SQL*Plus for moving data between databases. This product gives you the ability to copy data from your department databases to corporate Oracle databases.

1.3.13 Two-Phase Commit and Multisite Transactions

The gateway can participate as a partner in multisite transactions and two-phase commit. How this occurs depends on the capabilities of the underlying data source, meaning that the gateway can be implemented as any one of the following:
A full two-phase commit partner
A commit point site
A single-site update partner
A read-only partner
The deciding factors for the implementation of the gateway are the locking and transaction-handling capabilities of the target database.
Oracle Transparent Gateway for DRDA, by default, is configured as a commit point site (that is, commit confirm protocol). Optionally, you can configure the gateway as read-only if you choose to enforce read-only capability through the gateway. Other protocols are not supported. Refer to "Read-Only Gateway" on page 11-5 in
Chapter 11, "Using the Gateway".

1.3.14 Site Autonomy

All Oracle Database server products, including gateways, supply site autonomy. For example, administration of a data source remains the responsibility of the original system administrator. Site autonomy also functions so that gateway products do not override the security measures that are established by the data source or the operating environment.

1.3.15 Migration and Coexistence

The integration of a data source through the gateway does not require any changes to be made to applications at the data source. The result is that the Oracle Database server technology is nonintrusive, providing coexistence and an easy migration path.

1.3.16 Security

The gateway does not bypass existing security mechanisms. Gateway security coexists with the security mechanisms that are already used in the operating environment of the data source.
1-6 Oracle Transparent Gateway for DRDA Installation and User's Guide

1.4 Terms

Architecture
Functionally, gateway security is identical to that of an Oracle Database server, as described in the Oracle Database Administrator's Guide. Oracle Database security is mapped to the data dictionary of the data source.
The terms that are used in this guide do not necessarily conform to IBM terminology. The following table presents several terms and their meanings as used within this guide:
Terms Meaning
DRDA data Any database data that is accessed through DRDA
DRDA database The collection of data that belongs to a DRDA Server
DRDA Server A database server that can be accessed through DRDA. IBM
terminology for a DRDA Server is a DRDA Application Server, or AS.
DRDA server type A specific database product or program that can act as a DRDA
Oracle integrating server Any Oracle Database 10g server instance that communicates
DB2 Universal Database A generic name for the UNIX-based implementations of DB2.

1.5 Architecture

The Oracle Transparent Gateway for DRDA works with the Oracle Database 10g server to shield most of the differences of the non-Oracle database from Oracle applications. This means that the Oracle applications can access the Oracle Database 10g server data and also can access the DRDA database data as if it were Oracle data located at the Oracle integrating server.
The architecture consists of the following main components:
Client
The client is an Oracle application or tool.
Oracle integrating server
server
with the Oracle Transparent Gateway for DRDA to distribute database access operations to a DRDA Server. The Oracle integrating server can also be used for non-gateway applications.
DB2/UDB is frequently used as an abbreviation for DB2 Universal Database.
The Oracle integrating server is an Oracle Database instance that is accessed by an Oracle Database 10g server with procedural and distributed options. Usually, the Oracle integrating server is installed on the same host as the gateway, but this is not a requirement. The Oracle integrating server and the gateway communicate in the normal Oracle server-to-server manner.
If the Oracle integrating server is not on the host where the gateway resides, then you must install the correct Oracle networking software on the platform where the server resides. For Oracle Database 10g, you must install Oracle Net on the Oracle Database 10g server system.
Oracle Transparent Gateway for DRDA
Introduction 1-7
Implementation
The gateway must be installed on hosts that are running the appropriate operating system.
If the Oracle integrating server is not on the same host, then you must also install Oracle Net so that the gateway and Oracle Database 10g server can communicate.
DRDA Server
The DRDA Server must be a DB2/OS390, DB2/400, DB2 Universal Database, or DB2 server for VM database on a system that is accessible to the host using either the SNA or TCP/IP protocol.
Multiple Oracle Database 10g servers can access the same gateway. A single host gateway installation can be configured to access more than one DRDA Server.
Figure 1–1 illustrates the gateway architecture that was just described.
Figure 1–1 The Gateway Architecture
Client

1.6 Implementation

When the gateway is installed on your host, it has some of the same components as an Oracle Database instance on Microsoft Windows. The gateway has the following components:
A base file directory, similar to the one that is associated with the
ORACLE_HOME environment variable of an Oracle Database instance
A gateway system identifier (SID), comparable to the ORACLE_SID of an Oracle
Database instance
Oracle Net to support communication between the Oracle integrating server and
the Oracle Transparent Gateway for DRDA
Oracle Net
or
Local
Connection
Oracle
Integrating
Server
Oracle Transparent Gateway for
DRDA
Oracle Transparent Gateway for
DRDA
SNA
TCP/IP
DARD Server
DARD Server
The gateway does not have:
Control, redo log, or database files
The full set of subdirectories and ancillary files that are associated with an
installed Oracle Database 10g server
Because the gateway does not have background processes and does not need a management utility such as Oracle Enterprise Manager, you do not need to start the gateway product. Each Oracle Database 10g server user session that accesses a particular gateway creates an independent process on the host. This process runs the gateway session and runs SNA or TCP/IP functions to communicate with a DRDA Server.
1-8 Oracle Transparent Gateway for DRDA Installation and User's Guide

1.7 How the Gateway Works

The gateway has no database functions of its own. Instead, it provides an interface by which an Oracle Database 10g server can direct part or all of a SQL operation to a DRDA database.
The gateway that is supporting the DRDA Server is identified to the Oracle integrating server by using a database link. The database link is the same construct that is used to identify other Oracle Database 10g server databases. Tables on the DRDA Server are referenced in SQL as:
table_name@dblink_name
or
owner.table_name@dblink_name
If you create synonyms or views in the Oracle integrating server database, then you can refer to tables on the DRDA Server by using simple names as though the table were local to the Oracle integrating server.
When the Oracle integrating server encounters a reference to a table that is on the DRDA Server, the applicable portion of the SQL statement is sent to the gateway for processing. Any host variables that are associated with the SQL statement are bound to the gateway and, therefore, to the DRDA Server.
Oracle Tools and the Gateway
The gateway is responsible for sending these SQL statements to the DRDA Server for processing and for fielding and is also responsible for returning responses. The responses are either data or messages. Any conversions between Oracle data types and DRDA data types are performed by the gateway. The Oracle integrating server and the application read and process only Oracle data types.

1.7.1 SQL Differences

Not all SQL implementations are the same. The Oracle Database 10g server supports a larger set of built-in functions than the databases that are currently accessed through the gateway. The Oracle integrating server and the gateway work together to convert SQL to a form that is compatible with the specific DRDA Server.
During this conversion, an Oracle Database 10g server function can be converted to a function that is recognizable to the specific DRDA Server. For example, the Oracle Database 10g server NVL function is converted to the DB2 VALUE function.
Alternatively, the Oracle integrating server withholds functions that are not executable by the DRDA Server, and it performs them after rows are fetched from the DRDA database. This processing generally applies to SELECT statements. The Oracle integrating server and the gateway cannot perform this kind of manipulation on UPDATE, INSERT, or DELETE statements because doing so changes transaction semantics.

1.8 Oracle Tools and the Gateway

Use the gateway to run applications, such as Oracle tools, that read and write data that is stored in DRDA databases.
Although the Oracle Transparent Gateway for DRDA provides no new application or development facilities, it extends the reach of existing Oracle tools to include data in non-Oracle databases that support DRDA.
Introduction 1-9
Features
Using the Oracle Transparent Gateway for DRDA with other Oracle products can greatly extend the capabilities of the standalone gateway. The following examples demonstrate how powerful the gateway is with other Oracle tools.

1.8.1 SQL*Plus

Use SQL*Plus and the Oracle Transparent Gateway for DRDA to create a distributed database system, providing an easy-to-use transfer facility for moving data between the distributed databases. One possible use is to distribute the data in your corporate Oracle Database to departmental DRDA databases. You can also distribute data in your corporate DRDA database to departmental Oracle Databases.

1.9 Features

Following is a list of important features that characterize this release of the gateway.

1.9.1 Heterogeneous Services Architecture

This release of the Oracle Transparent Gateway for DRDA uses the Oracle Heterogeneous Services component within the Oracle Database 10g server. Heterogeneous Services is the building block for the next generation of Oracle Enterprise Integration Gateways.
For detailed information about Heterogeneous Services, refer to the Oracle Database Heterogeneous Connectivity Administrator's Guide.

1.9.2 Performance Enhancements

Oracle Transparent Gateway for DRDA contains several internal performance enhancements. This product has shown major improvements in response time and CPU utilization for all relevant address spaces for a variety of workloads compared to version 9 gateways. The actual performance improvement at your site might vary, depending on your installation type and workload.

1.9.3 Fetch Reblocking

The array size of the application for SELECT is effective between the application and the Oracle integrating server. However, the array block size and the block fetch between the Oracle integrating server and the gateway are controlled by two Heterogeneous Services initialization parameters, HS_RPC_FETCH_SIZE and HS_RPC_FETCH_REBLOCKING. These parameters are specified in the gateway initialization file. Refer to the Oracle Database Heterogeneous Connectivity Administrator's Guide for more information.

1.9.4 Oracle Database 10g Passthrough Supported

You can use the Oracle Database 10g DBMS_HS_PASSTHROUGH.EXECUTE_IMMEDIATE feature to pass commands or statements (that are available in the DRDA database) through the gateway.

1.9.5 Retrieving Result Sets Through Passthrough

Oracle Transparent Gateway for DRDA provides a facility to retrieve result sets from a select SQL statement that is run with passthrough. Refer to "Retrieving Result Sets
Through Passthrough" on page 12-27 for additional information.
1-10 Oracle Transparent Gateway for DRDA Installation and User's Guide

1.9.6 Support for TCP/IP

This release of the gateway supports the TCP/IP communication protocol between the gateway and the DRDA Server. Refer to Chapter 8, "Configuring TCP/IP" for further information.

1.9.7 Native Semantics

This release of the gateway supports the ability to selectively enable or disable post-processing of various SQL functions by the DRDA Server. Refer to "Native
Semantics" on page 12-18 for further information.

1.9.8 Columns Supported in a Result Set

Oracle Transparent Gateway for DRDA supports up to 1000 columns in a result set.

1.9.9 EXPLAIN_PLAN Improvement

The EXPLAIN_PLAN table contains the actual SQL statements passed to the DRDA Server from the Oracle Database 10g server through the gateway.

1.9.10 Heterogeneous Database Integration

The gateway support for ANSI-standard SQL enables read/write access to DRDA databases. Even if your data exists on different platforms in different applications, new applications can use all data, regardless of location.
Features

1.9.11 Minimum Impact on Existing Systems

The gateway does not require installation of additional Oracle software on your OS/390 (MVS), AS/400, VM, UNIX or Microsoft Windows target system. The database interface that it uses is provided by IBM and is built into the DRDA database products and SNA or TCP/IP facilities that already exist on these platforms.
Configuring an IBM system for DRDA access typically consists of defining the SNA or TCP/IP resources involved and establishing access security definitions specific to the target database.

1.9.12 Large Base of Data Access

DRDA Application Server Function is supported by most IBM DB2 database products.

1.9.13 Application Portability

The ability of the gateway to interface with heterogeneous databases makes it possible to develop a single set of portable applications that can be used against both Oracle and IBM databases, and any other databases for which Oracle Corporation provides gateways.

1.9.14 Remote Data Access

Location flexibility is maximized because the gateway architecture permits network connections between each of the components. The application can use the Oracle client-server capability to connect to a remote Oracle integrating server through Oracle Net. The Oracle integrating server can connect to a remote gateway using a database
Introduction 1-11
Features
link. The gateway connects to DRDA Servers through SNA or TCP/IP network facilities.
The benefits of remote access are that it:
Provides a means to allocate the suitable resource to a given task
You can, for example, move application development off expensive processors and onto cost-efficient workstations or microcomputers.
Expands the number of available data sources
Without remote access, you are limited to the data that is available in the local environment. With remote access, your data sources are limited only by your networks.
Provides a means to tailor an application environment to a given user
For example, some users prefer a block-mode terminal environment, while others prefer a bit-mapped, graphics-driven terminal environment. Remote access can satisfy both because you are not constrained by the interface environment that is imposed by the location of your data.

1.9.15 Support for Distributed Applications

Because the gateway gives your application direct access to DRDA data, you eliminate the need to upload and download large quantities of database data to other processors. Instead, you can access data where it is, when you want it, without having to move the data between systems and thus risk unsynchronized and inconsistent data. Avoiding massive data replication can also reduce aggregate disk storage requirements over all of your systems.
However, if your system design requires moving data among the systems in a network, SQL*Plus and the gateway can simplify the data transfer. With a single SQL*Plus command, you can move entire sets of data from one node of the network to another and from one database to another.
You can pass commands and statements that are specific to your DRDA database through the gateway to be run by the DRDA database. For example, you can pass DB2/OS390 commands through the gateway for DB2 to run. You can also run stored procedures defined in non-Oracle databases.

1.9.16 Application Development and End User Tools

Through the gateway, Oracle extends the range of application development and user tools that you can use to access the IBM databases. These tools increase application development and user productivity by reducing prototype, development, and maintenance time. Current Oracle users do not have to learn a new set of tools to access data that is stored in DRDA databases. Instead, they can access Oracle and DRDA data with a single set of tools.
With the gateway and the application development tools that are available from Oracle, you can develop a single set of applications to access Oracle data and DRDA data. Users can use the decision support tools that are available from Oracle to access Oracle data and DRDA data. These tools can run on remote systems that are connected through Oracle Net to the Oracle integrating server.
When designing applications, keep in mind that the gateway is designed for retrieval and relatively light transaction loads. The gateway is not currently designed to be a heavy transaction processing system.
1-12 Oracle Transparent Gateway for DRDA Installation and User's Guide
Loading...
+ 210 hidden pages