Experiences Installing Oracle R3 (8.1.7) for OS/390 Overview of the new OSDI architecture Installation experiences with the new install process Particularly useful for first-time installers Kathryn Arrell Marc Connolly Dennis Dutcavitch Michel Gayraud Jim Gillespie Mike Gorman Steven Hwung Ken Panza ibm.com/redbooks International Technical Support Organization SG24-5973-00 Experiences Installing Oracle R3 (8.1.7) for OS/390 April 2001 Take Note! Before using this information and the product it supports, be sure to read the general information in Appendix B, “Special notices” on page 73. First Edition (April 2001) This edition applies to Oracle Release 3 (8.1.7) for OS/390 with OSDI, and OS/390 V2R7. Comments may be addressed to: IBM Corporation, International Technical Support Organization Dept. HYJ Mail Station P099 2455 South Road Poughkeepsie, NY 12601-5400 When you send information to IBM, you grant IBM a non-exclusive right to use or distribute the information in any way it believes appropriate without incurring any obligation to you. © Copyright International Business Machines Corporation 2001. All rights reserved. Note to U.S Government Users - Documentation related to restricted rights - Use, duplication or disclosure is subject to restrictions set forth in GSA ADP Schedule Contract with IBM Corp. Contents Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .v The team that wrote this redbook . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v Comments welcome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi Chapter 1. Overview of Oracle8i with OSDI . . . . . . . . . . . . . . . 1.1 Current architecture of Oracle8i with MPM . . . . . . . . . . . . . . 1.2 New architecture of Oracle8i with OSDI . . . . . . . . . . . . . . . . 1.2.1 Multiple address spaces . . . . . . . . . . . . . . . . . . . . . . . . 1.2.2 IBM Language Environment and Oracle8i . . . . . . . . . . . 1.2.3 UNIX Systems Services (USS) and Oracle8i . . . . . . . . . 1.2.4 Workload Manager and Oracle8i . . . . . . . . . . . . . . . . . . 1.3 Oracle Enterprise Manager (OEM) and Oracle8i with OSDI . 1.4 Reasons for the new architecture . . . . . . . . . . . . . . . . . . . . . 1.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . © Copyright IBM Corp. 2001 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 . .1 . .1 . .2 . .2 . .3 . .3 . .4 . .4 . .5 Chapter 2. Preparing to install Oracle 8.1.7 with OSDI . . . . . . . 2.1 Media and documentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 Steps to complete the installation . . . . . . . . . . . . . . . . . . . . . . 2.2.1 Stage 1 - Preinstallation preparation of the system . . . . . 2.2.2 Stage 2 - Installing the Oracle libraries . . . . . . . . . . . . . . 2.2.3 Stage 3 - Customization of the database . . . . . . . . . . . . . 2.2.4 Stage 4 - Prepare the system for creating the database . 2.2.5 Stage 5 - Complete the creation of the database . . . . . . . 2.2.6 Stage 6 - Finalizing the installation . . . . . . . . . . . . . . . . . 2.2.7 Documentation to follow . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Deciding on names of resources for the installation . . . . . . . . 2.3.1 Changing system library names to those you can update 2.4 Allocating an HFS for the UNIX System Services (USS) files . 2.4.1 Creating the directory for the mount point . . . . . . . . . . . . 2.4.2 Mounting the HFS File to the mount point . . . . . . . . . . . . 2.4.3 Changing the permissions of the HFS . . . . . . . . . . . . . . . 2.4.4 Naming convention for HFS . . . . . . . . . . . . . . . . . . . . . . 2.4.5 Alternative way to create an HFS . . . . . . . . . . . . . . . . . . 2.5 RACF setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Set program properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7 AFP-authorize the Oracle AUTHLOAD library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7 . .7 . .7 . .8 . .8 . .8 . .8 . .9 . .9 . .9 . .9 .10 .11 .11 .12 .12 .13 .13 .13 .14 .14 Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 3.1 Unload the Oracle installation JCL from the distribution tape . . . . 3.2 Create the ISPF libraries used by your installation . . . . . . . . . . . . 3.3 Execute ISPF and invoke the Oracle customization process . . . . . 3.4 Generate and run the customization job . . . . . . . . . . . . . . . . . . . . 3.5 Run the generated installation jobs . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Expand the USS files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.7 Oracle files after the installation . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8 Completion of stage 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 .18 .18 .19 .27 .28 .29 .30 .31 Chapter 4. Customizing the Oracle database . . . . . . . . . . . . . 4.1 Execute ISPF and invoke the Oracle customization process . 4.2 Generate and run the customization job . . . . . . . . . . . . . . . . 4.3 Run the generated installation jobs . . . . . . . . . . . . . . . . . . . . .. .. .. .. . . . . . . . . . . . . .33 .33 .41 .42 . . . . . . . . . . . . . . . . iii Chapter 5. Creating the database . . . . . . . . . . . . . . . . . . . . . . . 5.1 Preparing the system for database creation . . . . . . . . . . . . . . 5.2 Setting up a started procedure for Net8 . . . . . . . . . . . . . . . . . 5.3 Configuring the service group file . . . . . . . . . . . . . . . . . . . . . 5.3.1 Points to consider when setting up the address spaces . 5.4 Continuing running the generated job . . . . . . . . . . . . . . . . . . 5.5 Review the PARMLIB members . . . . . . . . . . . . . . . . . . . . . . . 5.6 VSAM files after stage 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. . . . . . . . . 43 43 43 43 44 45 45 47 Chapter 6. Installing the Intelligent Agent . . . . . . . . . . . . . . . . 6.1 Introduction to Intelligent Agents and OEM . . . . . . . . . . . . . . 6.1.1 Installation of the Intelligent Agent and Data Gatherer in 6.2 Configuring the Intelligent Agent and Data Gatherer . . . . . . . 6.2.1 Configuring tnsnames.ora . . . . . . . . . . . . . . . . . . . . . . . 6.2.2 Configuring listener.ora . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.3 Configuring snmp_rw.ora . . . . . . . . . . . . . . . . . . . . . . . . 6.2.4 Configuring oratab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 Starting the Intelligent Agent . . . . . . . . . . . . . . . . . . . . . . . . . ..... ..... USS . ..... ..... ..... ..... ..... ..... . . . . . . . . . .. .. .. .. .. .. .. .. .. . . . . . . . . . 49 49 49 51 51 53 54 55 55 Chapter 7. Operational considerations . . . . . . . . . . . . . . . . . 7.1 Commands to start and stop the database. . . . . . . . . . . . . . 7.2 JCL to start the database. . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 JCL to stop the database . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.4 JCL to start the database address space service . . . . . . . . . 7.5 JCL to start Net8 address space service . . . . . . . . . . . . . . . 7.6 Setting up SETSSI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.7 Changing the number of address spaces to add more users 7.8 Setting up access to remote databases . . . . . . . . . . . . . . . . 7.9 Creating a second instance . . . . . . . . . . . . . . . . . . . . . . . . . 7.10 Installing the Intelligent Agent . . . . . . . . . . . . . . . . . . . . . . 7.10.1 Hostname command . . . . . . . . . . . . . . . . . . . . . . . . . 7.11 Upgrading an Oracle8 database from MPM to OSDI . . . . . 7.12 Adding to the IEFSSN00 file . . . . . . . . . . . . . . . . . . . . . . . 7.13 Using a data set to execute the SETSSI command . . . . . . 7.14 Using a data set to issue a batch command . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . . . . . . . . . . . . . . . . 59 59 59 60 61 61 62 62 62 63 65 65 67 69 69 69 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Appendix A. Table for your values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Appendix B. Special notices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73 Appendix C. Related publications . . C.1 IBM Redbooks . . . . . . . . . . . . . . . . . C.2 IBM Redbooks collections . . . . . . . . C.3 Oracle Publications . . . . . . . . . . . . . C.4 Referenced Web sites . . . . . . . . . . . ....... ....... ....... ....... ....... ...... ...... ...... ...... ...... ....... ....... ....... ....... ....... ...... ...... ...... ...... ...... . . . . . . 75 . . . . . . 75 . . . . . . 75 . . . . . . 75 . . . . . . 76 How to get IBM Redbooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 IBM Redbooks fax order form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 IBM Redbooks review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81 iv Experiences Installing Oracle R3 (8.1.7) for OS/390 Preface This IBM Redbook will help you install Oracle8i Release 3 (8.1.7) for OS/390 with OSDI. It describes experiences with installation of the new OSDI version. It will be especially useful for those installing Oracle8i on OS/390 with OSDI for the first time. The book is based on experiences gained during installations at: • • • • The The The The IBM/Oracle EMEA Joint Solution Center, Montpellier, France IBM/Oracle International Competency Center, San Mateo, California IBM ITSO S/390 Center in Poughkeepsie, New York Oracle Advanced Technology Center, Reston, Virginia Note: While the name of UNIX System Services (USS) has been changed to OS/390 UNIX System Services and the short form is now OS/390 UNIX, this redbook still uses USS in order to accurately reflect Oracle dialogue and code. The team that wrote this redbook This redbook was produced by a team of specialists from around the world working at the International Technical Support Organization Poughkeepsie Center. Kathryn Arrell is a S/390 support specialist at the IBM/Oracle International Competency Center at IBM San Mateo. Previously she worked as an ERP specialist at the ITSO in Poughkeepsie, New York. Marc Connolly is an Oracle Senior Mainframe Sales Consultant, Server Solutions, Oracle Service Industries. Marc provides Oracle on OS/390 technical sales support for customers in Oracle’s Service Industries. Dennis Dutcavich is a software engineer with the S/390 division. He works in the ERP Business Segment and provides technical marketing support for Oracle Applications on OS/390. Michel Gayraud is an S/390 specialist with the EMEA Joint IBM/Oracle Solution Center in Montpellier, France. Jim Gillespie is a database administrator with 14 years of experience administering Oracle on the mainframe. Jim is currently consulting for Oramain Consulting Services, LLC. Mike Gorman is an Oracle Senior Mainframe Sales Consultant, Server Solutions, Oracle Service Industries. Mike provides Oracle on OS/390 technical sales support for customers in Oracle’s Service Industries. Steven Hwung is an Oracle Specialist with IBM Global Services. He is presently on assignment with the IBM/Oracle International Competency Center. Ken Panza is a Mainframe Program Manager, Server Solutions, Oracle Service Industries. Ken is responsible for mainframe sales and marketing programs within Oracle’s Service Industries. Thanks to the following people for their contributions to this project: © Copyright IBM Corp. 2001 v Bob Haimowitz Vasilis Karras Alfred Schwab International Technical Support Organization, Poughkeepsie Center Pat Stroud Oracle Corporation Comments welcome Your comments are important to us! We want our Redbooks to be as helpful as possible. Please send us your comments about this or other Redbooks in one of the following ways: • Fax the evaluation form found in “IBM Redbooks review” on page 81 to the fax number shown on the form. • Use the online evaluation form found at ibm.com/redbooks • Send your comments in an Internet note to redbook@us.ibm.com vi Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 1. Overview of Oracle8i with OSDI Oracle has long had a commitment to the IBM mainframe environment. Beginning in 1986, every major release of Oracle has been delivered on the mainframe, and Oracle’s most current releases are available on OS/390. Oracle announced a major enhancement to support Oracle for OS/390 in September 2000. It is called Oracle8i Release 3 (8.1.7) on OS/390 with OSDI. (OSDI - Operating System Dependent Interface). OSDI is not a change to the Oracle database, but a significant improvement in how Oracle interfaces with OS/390. OSDI is a completely new architecture for Oracle products on OS/390. This chapter introduces the new architecture and describes how OSDI exploits OS/390 features. 1.1 Current architecture of Oracle8i with MPM Oracle’s current architecture for OS/390 consists of Oracle generic code running on top of an operating system-specific layer. For the Oracle database, the OS/390-specific layer is called MPM; for Net8, this layer is called TNS. OS/390 cross memory services are used to communicate among the Oracle address spaces. This architecture was established sometime before 1986, and over the years MPM and TNS have been enhanced and stretched to keep pace with OS/390. It was no longer practical to continue to enhance the existing architecture. 1.2 New architecture of Oracle8i with OSDI OSDI is an entirely new architecture for running Oracle on OS/390, and it completely replaces the existing MPM and TNS structures. OSDI does not affect the generic Oracle database engine, but only how it is supported on OS/390. OSDI allows Oracle to use the full features and functions of OS/390. It can now exploit such features as Language Environment, Workload Manager, and UNIX Systems Services. OSDI provides a common management layer for all Oracle instances and address spaces. It is implemented as a formal OS/390 subsystem and runs in OS/390 common system storage, as shown in Figure 1 on page 2. Management of OSDI is via OS/390 operator commands. OSDI security is implemented using the OS/390 System Authorization Facility (SAF). © Copyright IBM Corp. 2001 1 OS/390 OSDI db instance 3 db instance 2 database instance 1 (Dynamic Subsystem) Net8 Net8 Services Named Services Oracle Product OSDI AS1 ASn Is a dynamic subsystem Manages many DB and Net 8 services Services defined in parm file Starts/Stops services Manages Connections and Security Multiple address spaces Figure 1. Overview of OSDI architecture 1.2.1 Multiple address spaces Previously, with the MPM architecture, each Oracle address space contained a copy of the operating system-specific code. With OSDI, only one copy of the Oracle operating system-specific code is required, and this copy controls all the Oracle and Net8 address spaces. IBM’s OS/390 supports 31-bit virtual addressing, which limits the size of the address space and the Oracle instance to 2 gigabytes, and which has constrained the number of users an Oracle instance could support. UNIX and Intel systems generally support 32-bit addressing, allowing 4 GB address spaces, and 64-bit systems support much larger address spaces. One of the most exciting new features that OSDI brings to OS/390 is the ability to eliminate this constraint by allowing a single Oracle instance and therefore all Oracle users to occupy multiple OS/390 address spaces. When multiple address spaces are used, client sessions are distributed more or less uniformly across these address spaces. This process is transparent to the Oracle clients. Effectively exploiting the new functions in OS/390, eliminating the constraints imposed by 31-bit virtual addressing, and using features available in Oracle8i dramatically improves the performance and manageability of Oracle on OS/390. 1.2.2 IBM Language Environment and Oracle8i Fifteen years ago, IBM did not provide a C compiler or library for S/390. Oracle included a C compiler and library as part of their original distribution. Later Oracle converted to use an IBM-supplied C compiler, but continued to use Oracle-developed C libraries. 2 Experiences Installing Oracle R3 (8.1.7) for OS/390 The Oracle database is now completely converted to the IBM Language Environment (LE) and uses the IBM-supported compilers and libraries, enabling it to exploit new S/390 features and functions. LE provides a sophisticated test and development environment, and Oracle uses this environment to improve the quality, performance, scalability, and serviceability of Oracle code on OS/390. IBM’s LE supports a function called downward compatibility. This function allows applications developed on the latest release of OS/390 to be compiled to be downward compatible with older releases of OS/390. Oracle uses the downward compatibility feature to support older OS/390 releases. 1.2.3 UNIX Systems Services (USS) and Oracle8i There is some confusion about Oracle’s use of UNIX System Services (USS). The Oracle database runs as a native OS/390 subsystem, and does not run under UNIX System Services. But Oracle uses USS for their internal test and development environment and for some Oracle utilities. Oracle’s test and development environment is based on UNIX. Previously, many of these tests had to be ported to VM to support Oracle’s OS/390 development efforts. With USS, the standard Oracle test environment is now run on OS/390. Using USS has cut at least six months from Oracle’s OS/390 development schedule, and allows Oracle to deliver an Oracle database for OS/390 on the same schedule as the UNIX versions. Oracle has language precompilers available for C, COBOL, PL/1 and other common mainframe languages. These precompilers allow Oracle SQL to be included in traditional mainframe applications. But as more customers began porting UNIX applications to USS, there was a need to support these precompilers under USS. The Oracle C/C++ precompiler is now available for use under USS. Oracle will also support, as required, other utilities and functions under USS, such as import, export and SQL*loader. 1.2.4 Workload Manager and Oracle8i Workload Manager (WLM) automatically manages a mainframe’s workload based on performance criteria assigned to each type of work. Oracle for OS/390 with OSDI exploits WLM. Currently Oracle classifies workloads based on incoming Net8 clients. This means that different types of users can be identified and WLM can control the system resources assigned to these users. An important use of WLM is to manage the batch work submitted by the applications concurrent manager. Heavy batch work can consume resources and degrade performance for online users. With WLM, Oracle can now control the resources available to batch work and insure that online users get the cycles they need. Or batch work can be given higher priority to insure it completes on time during the batch window. These are just Oracle’s first steps towards exploiting WLM. Future releases will further enhance the use of WLM. Chapter 1. Overview of Oracle8i with OSDI 3 Installations process different types of work with different completion and resource requirements. Every installation wants to make the best use of its resources, maintain the highest possible throughput, and achieve the best possible system responsiveness. Workload management makes this possible. With workload management, you can define performance goals and assign a business importance to each goal. You define the goals for work in business terms, and the system decides how much resource, such as CPU and storage, should be given to it to meet that goal. WLM will constantly monitor the system and adapt processing to meet the established goals. 1.3 Oracle Enterprise Manager (OEM) and Oracle8i with OSDI Oracle Enterprise Manager (OEM) provides a comprehensive framework to manage the total Oracle environment. OEM is built on Oracle’s three-tier Internet computing model using intelligent agents, browser-based consoles, and a middle-tier management server. The Intelligent Agent for OS/390 is a product running in USS that performs scheduling, monitoring, and maintenance activities for Oracle instances on OS/390. It acts as an interface to the OEM toolset. The intelligent agents respond to requests and are controlled by the middle-tier management server. The middle-tier management server is the central control point and repository for the total Oracle environment, and it can be used to manage all databases in the enterprise, regardless of the platform. The OEM console is a browser-based client that provides a graphical view of the entire Oracle network and environment. 1.4 Reasons for the new architecture Here are some of the improvements that customers asked to see in Oracle’s OS/390 products: • Oracle previously committed to deliver new versions of the Oracle database on OS/390 within six months of its release on UNIX. OS/390 customers told us that that was not good enough. They are running Oracle on many different platforms, and need to have the same versions and releases available across all their installed platforms. With the announcement of Oracle for OS/390 with OSDI, Oracle announced synchronous delivery of Oracle on OS/390 with the UNIX versions. • There have been questions about Oracle’s commitment to the OS/390 mainframe. Skeptics ask, “Oracle is a UNIX company, why would they bother supporting mainframes?” Many large customers are heavy users of mainframes, and Oracle can’t ignore an environment that claims to host 70% of the world’s mission critical data. The announcement of Oracle on OS/390 with OSDI is a major technical and financial commitment by Oracle to the mainframe. • OS/390 is a very sophisticated, but proprietary, operating system. Customers have questioned Oracle’s ability to support and exploit the unique features of OS/390. But over the past several years, IBM has extended OS/390 to allow open systems vendors, such as Oracle, easier access to the power of OS/390. 4 Experiences Installing Oracle R3 (8.1.7) for OS/390 Oracle for OS/390 with OSDI truly exploits the power and capability of IBM’s OS/390 operating system. Oracle had the full cooperation of IBM’s OS/390 development organization during the development of OSDI, and Oracle exploits more features and functions of OS/390 than any other vendor. • With customers moving to e-business, the requirements for systems management, high availability, and scalability become ever more important. Oracle for OS/390 with OSDI significantly improves these capabilities for the mainframe. 1.5 Summary Oracle for OS/390 with OSDI delivers a totally new architecture for running Oracle on OS/390. This new architecture provides the mainframe environment with much better scalability, better systems management, better performance and improved availability. Some of these advantages come from the features and functions delivered by Oracle. Some are the result of Oracle taking advantage of the capabilities provided by OS/390. Yet others are the result of designing a new architecture using the latest development tools and methodologies, instead of improving 15-year old code. OSDI provides a firm foundation for future developments on OS/390. It makes it easier to exploit changes in OS/390 and S/390, and it allows much faster implementation of new Oracle releases on OS/390. Oracle provides a complete Internet platform for e-business applications, and with OSDI, the mainframe continues to be a fully supported platform in Oracle’s 3-tier Internet computing architecture. Although OSDI is a new architecture for running Oracle on OS/390, it does not change the functionality of Oracle on OS/390. The Oracle database engine on OS/390 is still the same code base that runs on Intel and UNIX servers. Oracle functionally is the same product regardless of operating systems, and applications and data are easily moved among different platform architectures. Oracle allows you to build platform-independent applications. Applications can be developed and piloted on one platform, and deployed on another. As server technology changes, it is easy to move Oracle applications to take advantage of these changes. OSDI provides an architectural foundation for continuing development on the OS/390 platform. It shows Oracle’s commitment to supporting e-business on the mainframe. OSDI allows greater scalability and exploits many of the new features and functions available on OS/390. The ability to support a single Oracle instance across multiple OS/390 address spaces allows many more users on OS/390 than was possible before OSDI. Chapter 1. Overview of Oracle8i with OSDI 5 6 Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 2. Preparing to install Oracle 8.1.7 with OSDI This chapter describes the steps we took to prepare our system for an installation of Oracle8i Release 3 (8.1.7) with OSDI for OS/390. The areas covered are: • Obtaining the media and documentation • Understanding the steps to complete a successful installation of a database instance • Deciding on the names to use • Allocating an HFS • Setting up RACF user IDs • Defining the program property (PPT) entries • APF- authorizing AUTHLOAD 2.1 Media and documentation We ordered the media for Oracle8i with OSDI from the CD-ROM pack from http:store.oracle.com, by selecting Database, CD Packs, Oracle Enterprise Server, Oracle8i for MVS. We received 10 tapes, six for the MPM version and four for the OSDI version (OS0010, OS0026,OS0042,OS0058), along with the CD-ROMs containing the generic documentation and the Oracle8i Client code. To obtain the OSDI documentation, we logged on to Metalink, selected Technical library (left column), Product documentation, Oracle Enterprise Server, MVS, then downloaded the following manuals: Oracle8i Oracle8i Oracle8i Oracle8i for for for for OS/390 OS/390 OS/390 OS/390 with with with with OSDI, OSDI, OSDI, OSDI, Installation Guide, A85481-1 Users Guide, A85483-1 System Administrators Guide, A85482-1 Messages Guide, A85817-1 The documentation is also available on Metalink at: http:www.oracle.com/support 2.2 Steps to complete the installation There are four major tasks (later broken into six installation stages) that must be completed for a successful installation of an Oracle8i database on OS/390 with OSDI: 1. Installing all the Oracle 8.1.7 libraries (stage 1 and 2) This is described in Chapter 3 of Oracle8i for OS/390 with OSDI, Installation Guide, A85481-1. Our experiences are described in Chapter 3, “Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390” on page 17. 2. Customizing the database instance (stage 3, 4, and 5) This is described in Chapters 2 and 3 of Oracle8i for OS/390 with OSDI, System Administrators Guide, A85482-1. Our experiences are described in Chapter 4, “Customizing the Oracle database” on page 33 and Chapter 5, “Creating the database” on page 43. Chapter 2. Preparing to install Oracle 8.1.7 with OSDI 7 3. Setting up Net8 connectivity (included in stage 4) This is described in Chapter 10 of Oracle8i for OS/390 with OSDI, System Administrators Guide, A85482-1. Our experience is described in “Setting up a started procedure for Net8” on page 43. 4. Setting up the operational environment (stage 6) Our experiences are described in Chapter 7, “Operational considerations” on page 59. 2.2.1 Stage 1 - Preinstallation preparation of the system We took the following steps to prepare the system for the installation: 1. Decide on all the names we would use during the installation for example, service group (SSN), services (database, Net8, data sets first and second-level qualifiers). 2. Set up HFS for USS files. 3. Prepare the security rules (Net8, database, any started procedures). 4. Define the PPT. 5. AFP-authorize the AUTHLOAD library. Note: We did not even start stage 1 until we had confirmed that all the system maintenance recommended in Oracle8i for OS/390 with OSDI, Installation Guide, A85481-1, had been applied. 2.2.2 Stage 2 - Installing the Oracle libraries The number of installation steps will vary depending on your selection of Oracle products. The main ones for stage 2 are: 1. 2. 3. 4. 5. 6. 7. Unload the initial job from the Oracle Installation tape. Set up the Oracle ISPF libraries. Execute the product installation dialogue. Generate the installation job. Run the installation job (ORIJA01). Run the generated installation jobs. Install USS products. 2.2.3 Stage 3 - Customization of the database The stage 3 steps are: 1. Execute the database customization dialogue. 2. Generate the customization job. 3. Run the installation jobs (ORDJA01, ssnJB00, ssnJC00, where ssn is the subsystem name). 2.2.4 Stage 4 - Prepare the system for creating the database The stage 4 steps are: 1. Define the services. 2. Create the NET8 PROCLIB member. 3. Issue the SETSSI command and start the services. 8 Experiences Installing Oracle R3 (8.1.7) for OS/390 2.2.5 Stage 5 - Complete the creation of the database The stage 5 steps are: 1. Run the job to create the database and catalog. 2. Run the additional jobs. 2.2.6 Stage 6 - Finalizing the installation The stage 6 steps are: 1. Set up standard procedures to stop and start the database. 2. Set up Net8 so the OS/390 system could be a client to other databases (if needed). 3. Install the Intelligent Agent. Each of the stages is described in detail in the following chapters. When the system preparation work was completed, we were able to complete the installation in about one day. 2.2.7 Documentation to follow We took time to familiarize ourselves with the Oracle documentation. This redbook does not cover all the material that is in the Oracle documentation - it is meant to document our experiences. Table 1 is a guide to how the material in this book is organized. Table 1. Book organization guide Stage 1 Installation Activity Chapter in Oracle Documentation Choosing names 2 in Installation Guide Set up HFS Chapter in Redbook 2 2 Set up RACF 2 in Installation Guide 2 Defining PPT 2 in Installation Guide 2 AFP-authorize AUTHLOAD 2 in Installation Guide 2 2 Installing Oracle libraries 3 in Installation Guide 3 3 Customizing database instance 3 in SysAdmin Guide 4 4 Define services 2 in SysAdmin Guide 5 Define address spaces 2 in SysAdmin Guide 5 5 Create the database instance 3 in SysAdmin Guide 5 6 Start and stop the database 5 in SysAdmin Guide 6 2.3 Deciding on names of resources for the installation It is important to be prepared with the names of the resources that you will need in the installation process. We created Table 2 on page 10 to facilitate the process. Chapter 2. Preparing to install Oracle 8.1.7 with OSDI 9 Note: As of OS/390 V2R9, the PDSE for AUTHLOAD and the HFS for USS do not need to be on SMS-mounted volumes. You can allocate directly on DASD. This change is available via PTFs for early releases. In our case, we were using OS/390 V2R7 without the PTFs, so we still used SMS-managed volumes for AUTHLOAD and our HFS for USS. You may not have all the values needed at this point, but we found that listing the values made the installation jobs easier by ensuring that the correct entries were made in the installation process. 2.3.1 Changing system library names to those you can update The installation process involves making updates to SYS1.LINKLIB and SYS1.PROCLIB. In our case, we did not have authority to write to these data sets and so we used SYS3.LINKLIB and SYS2.H70.PROCLIB. The installation process allows you to point to another PROCLIB and LINKLIB. These changes are made to screen ORPTIP25 as shown in “Specifying the proclib to use” on page 25. Remember, on the same screen, to specify a suffix for the procedures that will be inserted into PROCLIB, or you will overwrite any previous entries. We used 1K as our suffix. Table 2. Our values for resources 10 Resource Value we used Comment RACF User IDs IBMU03 OSD1DEN, OSD1NET2 Our regular RACF user ID with OMVS access and started procedure names. DASD for Oracle libraries ORA026, ORA027 For our test installation we only used two packs - you should spread your files over more volumes for a production instance unless you are using ESS or RVA. HFS OMVS.USER.ORAUSS The data set name we allocated for our HFS for the USS directory. We found we needed 700 cylinders total to hold both the temporary and expanded files. Mount point /orauss We had done a mkdir orauss in USS. SMS Group H70SC H70SC was defined as our storage class. Suffix 1K Suffix for members in PROCLIB. Proclib SYS2.H70.PROCLIB We did not have access to SYS1.PROCLIB. Linklib SYS3.LINKLIB We did not have access to SYS1.LINKLIB UNIT=TAPE 3490 UNIT=TAPE did not work in our environment. We needed to specify 3490. Database name OSD1 SID. Service IDs OSDI001,OSDINET, OSD1 Service names for database, Net8 and service group. HLQ for Oracle library files OSD8I.ORA817 Names used for Oracle library data sets. Experiences Installing Oracle R3 (8.1.7) for OS/390 Resource Value we used Comment Oracle products to install All but the Access Managers Determine which of the Oracle products to install. They are listed in Figure 12 on page 23. VSAM qualifiers OSD1.DBF We used the instance name and DBF to show they were VSAM files for this database instance Number of address space 1 This was a test system Number of sessions per address space 1024 We used the default 2.4 Allocating an HFS for the UNIX System Services (USS) files If you will be installing the USS products, you must first create a file system (HFS) so that you will have a directory to use to install these products. This section describes two methods to create a directory in USS. You create the HFS using TSO, by executing the following steps: • Choose ISPF option 6, then issue the ish command. The ish command gets you to the ishell so you can access USS files. • Press F10 to put the cursor on the action bar (top of screen). • Tab to File_systems, then press Enter. • Enter 2 for new on the pull-down menu. We entered the information shown in Figure 2 to create one HFS file. Production Library File system name omvs.user.orauss Primary cylinders 700 Secondary cylinders 50 Storage class H70SC Management class H70MC Data class H70DC Figure 2. Allocation of the HFS file Note: The storage class, management class, and data class are the ones we set up for our system. Check with your OS/390 systems programmer for the ones to use. Our /tmp directory was not very large, so we planned to put both the temporary files and the expanded files in the 700 cylinders. In fact, the temporary files took about 210,000 1K blocks and the expanded file about 300,000 1K blocks, 2.4.1 Creating the directory for the mount point Mount points are directories over which an HFS is mounted. An HFS cannot be accessed through OS/390 USS unless it has been mounted. The member Chapter 2. Preparing to install Oracle 8.1.7 with OSDI 11 BPXPRM00 in SYS1.PARMLIB can be used to automatically mount the HFS files at IPL time. To put this session into OS/390 USS, logon as IBMU03, select ISPF option 6, and type omvs. Then create a directory for the mount point, using the following commands: cd / mkdir orauss 2.4.2 Mounting the HFS File to the mount point An HFS file cannot be accessed through OS/390 USS unless it has been associated with the mount point. To do so, the HFS files must have been allocated and the directory for the mount point created. As previously mentioned, member BPXPRM00 in SYS1.PARMLIB can be used to automatically mount at IPL time. On the other hand, the HFS files can be manually mounted via TSO. To mount HFS files manually: 1. Choose ISPF option 6, then issue the ish command. 2. Press F10 to go to the action bar. 3. Tab to File_systems, press Enter. 4. Choose 3 for mount on the pull-down menu. We entered the following information to mount our HFS file: Mount Point File system name File system type New owner /orauss OMVS.USER.ORAUSS HFS IBMU03 2.4.3 Changing the permissions of the HFS Once you have mounted the HFS, you must change the attribute so that others will have read/write access to it. To do this: 1. Choose ISPF option 6, then issue the ish command. 2. Press F10 to go to the action bar. 3. Tab to directory, press Enter. 4. Choose 3 for Attributes on the pull-down menu. 5. Change the permissions to 755 to allow write access. Display File Attributes Pathname : /orauss File type . . Permissions . File size . . File owner . . Group owner . Last modified Last changed . Last accessed Created . . . 12 . . . . . . . . . . . . . . . . . . Experiences Installing Oracle R3 (8.1.7) for OS/390 : : : : : : : : : More: Directory 755 8192 SHWUNG(1001) OEDFLTG(996) 12/06/2000 10:30 GMT 12/06/2000 10:30 GMT 12/16/2000 04:22 GMT 08/24/2000 15:13 GMT + Link count . . . . : 24 Set UID bit . . . : 0 6. Use PF3 to save and exit. 2.4.4 Naming convention for HFS Later, when we set up several subsystems on the same LPAR, we realized that it was easier to manage the many HFS systems if we used a naming convention that allowed us to relate the HFS to the subsystem. So, in our case, we should have used HFSOSD1 instead of ORAUSS. 2.4.5 Alternative way to create an HFS Use IEFBR14 to create the temp and HFS and mount them: //jobcard //CRFS EXEC PGM=IEFBR14 //ORAUSS DD DSN=OMVS.USER.ORAUSS, // DISP=(NEW,KEEP,DELETE), // STORCLAS=H70SC, // DSNTYPE=HFS, // SPACE=(CYL,(700,50,1)) //* The HFS will need to be made permanent by listing it in SYS1.PARMLIB(BPXPRM00): MOUNT FILESYSTEM('OMVS.USER.ORAUSS') MOUNTPOINT('/orauss') TYPE(HFS) MODE(RDWR) 2.5 RACF setup Several user IDs must be set up in RACF so that the correct authority is available in the installation process. We had RACF entries for: • IBMU03 - the user ID we used for the installation • OSD1DEN - the started procedure name for the database service • OSD1NET1 - the started procedure name for the Net8 service The Oracle documentation discusses creating a new, user-defined resource class for authorization checking because the authority that was controlled, using Oracle's MPM-based version with the PRIVUSER parameter in MPMPARM, is now controlled using the RACF FACILITY class. However, if you want to decentralize administration of DBA privileges, you may want to use a resource class other than the FACILITY class. Later we had to add, as RACF user IDs, the names of our procedures to start and stop the database. Note: Some planning and testing should be done to ensure that security meets your standards and is protecting access to the database as required. However, for the first installation of Oracle8i with OSDI, we found it best to keep it simple and then make changes in small steps to implement and test the required security. Chapter 2. Preparing to install Oracle 8.1.7 with OSDI 13 2.6 Set program properties The database and network service region programs must run non-swappable and non-cancellable and should not be subject to time limits. In addition, the database code runs in protect key 7. To enable this we added the following entries to the SCHEDnn member in SYS1.PARMLIB: PPT PGMNAME(ORARASC) NOCANCEL KEY(7) NOSWAP SYST PPT PGMNAME(ORANET8) NOCANCEL NOSWAP SYST /* /* /* /* /* /* /* /* /* PROGRAM NAME NOT CANCELABLE PROTECTION KEY PROGRAM IS NOT SWAPABLE SYSTEM TASK, NOT TIMED PROGRAM NAME NOT CANCELABLE PROGRAM IS NOT SWAPABLE SYSTEM TASK, NOT TIMED */ */ */ */ */ */ */ */ */ This is documented in the Installation manual, page 2-6. You don't need an IPL to do this because you can use the command: SET SCH=nn where nn is the designation of your SCHEDnn member, to cause the system to reread the PPT definition. 2.7 AFP-authorize the Oracle AUTHLOAD library The next preinstallation step is to authorize the Oracle AUTHLOAD library. You first specify the data set name and volume of the library, and then activate this authorization. You again have the choice of accomplishing this dynamically, as shown in Figure 4, or by IPLing your system. Note: With Oracle8 and Oracle8i the APF library must be a PDSE data set. Until recently this had to be on a DFSMS-managed storage, so you must have at least one volume of SMS-managed storage. If you have more than one volume in your stogroup, you will not know which volume the AUTHLOAD file will reside on, so just specify SMS. Add this line to your PROG00 member in SYS1.PARMLIB. EDIT ****** 000100 - -003000 ****** SYS1.PARMLIB(PROG00) - 01.15 Columns 00001 00072 ***************************** Top of Data ****************************** APF FORMAT(DYNAMIC) - - - - - - - - - - - - - - - - 40 Line(s) not Displayed APF ADD DSNAME(OSDI8.ORA817.AUTHLOAD) SMS **************************** Bottom of Data **************************** Figure 3. Add AUTHLOAD to PROG00 Then, in SDSF issue the command: COMMAND INPUT ===> /set prog=00 RESPONSE=ORACLE1 CSV410I APF FORMAT IS NOW DYNAMIC Figure 4. APF-Authorize an Oracle library dynamically 14 Experiences Installing Oracle R3 (8.1.7) for OS/390 Make sure you have the dynamic APF-authorization set in your IEASYSxx PARMLIB member so that the Oracle library stays authorized after the next IPL. You do this by adding an entry to PROG=xx in your IEASYSxx PARMLIB member. We are now ready for the installation of the Oracle libraries. Chapter 2. Preparing to install Oracle 8.1.7 with OSDI 15 16 Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 Oracle8i Release 3 (8.1.7) is available in two editions: MPM, which is based on the architecture used in previous versions of Oracle for OS/390; and the newly architected version called Operating System Dependant Interface (OSDI). This chapter describes the various steps needed and the experiences encountered during stage 2 of the installation of the Oracle8i 8.1.7 (OSDI version) database on OS/390. We followed the steps for installation without SMP/E given in Chapter 3 in Oracle8i Enterprise Edition with OSDI Installation Guide Release 3 (8.1.7) for OS/390, A85481-01. To perform this installation, we assume that you are familiar with OS/390, JCL, and TSO; that you can work with ISPF; and that you know SDSF and basic OS/390 operator commands. We further assume that you have a running OS/390 system and a DASD volume for the installation. The number of installation steps will vary, depending on your selection of Oracle products. The main ones for stage 2 are: 1. Unload the initial job from the Oracle Installation tape. 2. Set up the Oracle ISPF libraries. 3. Execute the product installation and customization dialogue. 4. Generate the installation job. 5. Run the installation job (ORIJA01). 6. Run the generated installation jobs. 7. Install the USS products. High-level qualifiers for data set names Note that we used OSD8I.ORA817 and OSD1.DBF as our HLQs. We used OSD8I as the high-level qualifier for our data sets, with ORA817 as the second-level qualifier. References to OSD8I.ORA817 are specific to our installation. For the VSAM files we used OSD1.DBF as the high-level qualifiers. You may choose different names. Names for the high-level qualifier should be one to seven characters and begin with a letter. Use only four characters if you want to equate it to the subsystem name. A good naming strategy is to put the Oracle executables under one high-level qualifier (hlq), and the database files (VSAM files) under a second hlq. The executables can be shared between instances and are release-sensitive. The database files are instance-specific. Considering this, you might put the executables in OSD8I.ORA817.library (members) and put the data files in OSD1.DBF.SYSTEM (the data file name). The installation panels provide this flexibility. See Appendix D in Oracle8i Enterprise Edition for OS/390 Installation Guide Release 3 (8.1.7) for OS/390, A86037-01, for futher information on choosing data set name qualifiers for your Oracle files. © Copyright IBM Corp. 2001 17 3.1 Unload the Oracle installation JCL from the distribution tape Loading the Oracle installation JCL from the distribution tape creates your installation library, reads one data set off the installation tape, and stores it as the first member in this library under the default name OSPIJA00. We used the JCL shown in Figure 5 to retrieve the first member of the installation library. In our system, the expiration date for the tape of 98000 was not allowed so we changed to 99365 to be able to read the tape. We installed the installation library on disk ORA027. EDIT ORACLE.TAPE.JCL(TAPEREAD) - 01.03 Columns 00001 Command ===> Scroll ===> //ORATAPE JOB (999,POK),'ORACLE TAPE READ',NOTIFY=&SYSUID, // CLASS=A,MSGCLASS=T,TIME=1439, / MSGLEVEL=(1,1) //S1 EXEC PGM=IEBCOPY //SYSPRINT DD SYSOUT=A //SYSUT1 DD UNIT=3490,VOL=SER=OS0010,DISP=OLD,DSN=OORX00A.F1 //SYSUT2 DD DSN=OSD8I.ORA817.INSTLIB, // UNIT=3390,VOL=SER=ORA027, // SPACE=(27920,(600,100,20)), // DCB=(LRECL=80,RECFM=FB,BLKSIZE=27920), // DISP=(NEW,CATLG,DELETE) //SYSIN DD * COPY INDD=SYSUT1,OUTDD=SYSUT2 SELECT MEMBER=(OSPIJA00) /* Figure 5. JCL to Load the First Job from the Tape 3.2 Create the ISPF libraries used by your installation You have to edit the previously created sample job (member OSPIJA00 in OSD8I.ORA817.INSTLIB) before you submit it for execution: • The JOB card information probably will not conform to your installation. • Choose an appropriate INDEX parameter; this will be the high-level qualifier of all Oracle data sets. • Tape unit and volume serial number have to be set (TPUNIT, TPVOL); this is your installation input tape. • DASD unit and volume serial number have to be set (PDASD, PDVOL); this is the volume on which Oracle allocates its data set. • The device type for allocation of the temporary data set (TDASD) has to be specified. • The DCBxxxx parameter points to your current ISPF libraries. Oracle will create its own ISPF libraries with the same DCB characteristics as the corresponding ISPF libraries on your system. You can issue the following TSO command from the TSO command line to determine the correct allocations: LISTALC STATUS 18 Experiences Installing Oracle R3 (8.1.7) for OS/390 If you do not want to have all Oracle data sets in your master catalog, you should first do the following: • Define a USERCATALOG for Oracle. • Define an ALIAS (using your first or only part of the INDEX parameter) that points to the new catalog. After editing, our OSPIJA00 member looked as shown in Figure 6: EDIT ****** 000001 000002 000003 000004 000005 000006 000007 000008 000009 000010 000011 000012 000013 000014 - -****** OSD8I.ORA817.INSTLIB(OSPIJA00) - 01.00 Columns 00001 00072 ***************************** Top of Data ****************************** //OSD1CLIS JOB (0000,ORA),'ORAIPO INSTALLATION', // REGION=1024K,NOTIFY=IBMU03, // CLASS=A,MSGCLASS=X //ORAISPF PROC INDEX='OSD8I.ORA817', // TPUNIT=3490, // TPVOL=OS0007, // PDASD=3390, // PDVOL=ORA027, // TDASD=SYSDA, // DCBPLIB='ISP.SISPPENU', // DCBSLIB='ISP.SISPSENU', // DCBMLIB='ISP.SISPMENU', // DCBCLIB='ISP.SISPCLIB' //* - - - - - - - - - - - - - - - - 97 Line(s) not Displayed **************************** Bottom of Data **************************** Figure 6. JCL to install the customization dialog After this job finishes successfully, you can invoke the Oracle installation dialog. This job has created the installation dialog as member ORIPO01 in OSD8I.ORA817.ISPCLIB. 3.3 Execute ISPF and invoke the Oracle customization process While the database can be installed with SMP/E, there is no real advantage to using SMP/E. Normal maintenance is not installed with SMP/E. Maintenance is generally installed by concatenating modules, replacing modules or applying ZAPs (program fixes) provided by Oracle. You invoke the installation dialog as shown in Figure 7 on page 20: Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 19 Menu List Mode Functions Utilities Help ------------------------------------------------------------------------------ISPF Command Shell Enter TSO or Workstation commands below: ===> exec 'OSD8I.ORA817.ISPCLIB(ORIPO01)' Please enter the first and second level data set name qualifiers for the ISPF data sets you have copied from the tape. Example: If your ISPF Clist data set name is ORA1.ORAPROD.ISPCLIB, then you would enter ORA1.ORAPROD without quotes or an ending period. OSD8I.ORA817 You entered OSD8I.ORA817 as the data set prefix for your ISPF files. If this is correct enter C to continue, otherwise you will have to reenter this information: C Is this going to be an SMP/E install? Please answer Y or N. N Figure 7. The Oracle installation dialog Enter S as shown in Figure 8 to select Oracle8 Server and add the high-level qualifiers for the target data sets. OR@PRIM --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --- Row 1 to 1 of 1 ORACLE PRODUCT INSTALL MENU USERID - IBMU03 DATE - 00/10/18 OPTION ===> SELECT PRODUCT SET TIME - 09:50 Select only one product set to install, make your selection by placing any non-blank character next to it. You must enter a different first and second level qualifier(s) for each selected product set that appears on this panel. Product Set Target Dataset Description Name Qualifiers ------------------------------------------------------------------------------S Oracle8i Server OSD8I.ORA817 ******************************* Bottom of data ******************************** Figure 8. Selecting a product set 20 Experiences Installing Oracle R3 (8.1.7) for OS/390 When you run ORIPO01 you create an Oracle ISPF data set environment profile library, tso_userid.ORISPF.ISPFPROF. There are some interesting things kept here: • High-level qualifier for data sets • An indicator of whether this was an SMP/E install If so, all other installs are forced to be the same. • The volume IDs of the tapes that need to be mounted • The level of the database (for example, version 8) If you want to restart from the very beginning, you may have to modify or delete this file. Eventually you arrive at the Oracle primary option menu, as shown in Figure 9. Select option 1, Define Oracle Products Installation Parameters on this menu. Display Filter View Print Options Help ------------------------------------------------------------------------------SDSF SYSLOG 919.101 MVS8 MVS8 11/01/2000 LINE 138,516 COLUMNS 51 130 . . . . . . . . . . . . . . . . . . . . . . . . . . . OR@INST --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------OPTION ===> ORACLE PRIMARY OPTION MENU USERID - IBMU03 DATE - 00/11/01 TIME - 11:50 1 Define Oracle Products Installation Parameters TERMINAL - 3278 2 Generate Installation Job "********" 3 Define New Oracle Database Parameters 4 Generate Database Job "********" 5 Reset all Product and Language selections. X Exit ORACLE Install Dialog facility. Enter END command to terminate ORACLE Install Dialog facility. F1=HELP F2=SPLIT F3=END F4=RETURN F5=RFIND F6=RCHANGE Figure 9. Oracle Primary Option Menu After selecting 1, the following series of screens show the entries we made for our system. We proceeded sequentially through the screens. Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 21 Installation parameters We went through the parameters in sequential order. ORPRIM0 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------OPTION ===> DEFINE INSTALLATION PARAMETERS USERID - IBMU03 DATE - 00/11/01 Press ENTER to proceed sequentially. TIME - 11:52 0 1 2 3 4 5 6 7 8 9 Enter SMP/E Environment variables. Modify tape unit and library index. Select Oracle product(s) to be installed. Select National Language Support modules to be installed. INSTLIB/ISPSLIB file tailoring information. Define JOB card for installation jobs. Define data sets for PROCs, CLISTs, Linklist and temporary disk unit. Review/modify space specifications for major libraries. Specify VOLSER for other libraries. Define USS products installation parameters Enter END command to return to Primary Option Menu Figure 10. Installation parameters Specifying the Non-VSAM file names We checked that the HLQ and SLQ were correct, then entered C to continue. ORPTIP00 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===> C MODIFY TAPE UNIT & LIBRARY INDEX USERID IBMU03 DATE - 00/11/01 Enter C to continue. Re-enter parameters to change. 1 ORACLE DISTRIBUTION LIBRARY: TAPE UNIT NAME ===> 3490 User's Tape Generic Unit Name TAPE VOLUME SERIAL ===> OS0010,OS0026,OS0042,OS0058 2 ORACLE NONVSAM LIBRARY INDEX: (AUTHLOAD, CMDLOAD, PARMLIB, SRCLIB, SQLLIB) HIGH LEVEL QUALIFIER ===> OSD8I SECOND LEVEL QUALIFIER ===> ORA817 Figure 11. Parameters for hlq 22 Experiences Installing Oracle R3 (8.1.7) for OS/390 Selecting the products to install We selected all the products exept for the Access Managers, then entered C to continue. ORPRODS --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --- Row 1 to 8 of 8 COMMAND ===> C SELECT ORACLE PRODUCT(S) FOR INSTALLATION SCROLL ===> USERID - IBMU03 Enter S to select a product, otherwise leave it blank. DATE - 00/11/01IBM Enter C to continue. Press END to return the previous panel. TIME - 10:06 Select Product S S S S S S s s s Oracle8i Server Access Manager for CICS Access Manager for IMS/TM Oracle Precompilers Net8 Oracle Reports SQL*Plus interMedia Text (requires USS) Oracle Ent. Mgr Agent (USS product) USS Net8 utilities USS Server Utilities (SQL*Plus) Figure 12. Selecting Oracle products to install Selecting the language You will be presented with a screen listing all the supported languages. English(US) is the default – just enter C to continue and press Enter and make no selection below. ORLANG --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION -- Row 1 to 12 of 27 COMMAND ===> C SELECT LANGUAGE MESSAGE MODULES TO INSTALL SCROLL ===> PAGE Enter S to select a language, otherwise leave it blank Enter C to continue. Press END to return to previous panel USERID - IBMU03 DATE - 00/11/16 English(US) is the default - just enter C above and no selection below. Select Language - Arabic Messages Brazilian Messages Catalan Messages Chinese (Simplified) Messages Chinese (Traditional) Messages Czech Messages Danish Messages Dutch Messages Finnish Messages French Messages German Messages Greek Messages Figure 13. Language choices Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 23 Verifying the INSTLIB name When we intalled a second time, we had not erased the two profile files and the INSTLIB was pointing to our first library name. We had to restart with the correct profile, or we could have changed the name. Enter C to continue. ORPTIP15 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===>C INSTLIB/ISPSLIB FILE TAILORING INFORMATION USERID - IBMU03 DATE - 00/11/01 Enter C to continue. Re-enter parameters to change. 1 ORACLE ISPSLIB (SKELETON) LIBRARY MEMBER: SKELETON LIBRARY MEMBER ===> NEWSKEL Untailored Input JCL Configuration Skeleton Member Name 2 ORACLE INSTALLATION LIBRARY: (INSTLIB) INSTLIB DATASET NAME INSTLIB MEMBER NAME VOLUME SERIAL DEVICE TYPE ===> OSD8I.ORA817.INSTLIB ===> ORPIJA01 Tailored JCL Configuration Member ===> (If Not Cataloged) ===> DATASET DISPOSITION ===> SHR REPLACE LIKE-NAMED INSTLIB MEMBER (NEW or SHR) DISP=SHR ===> NO (YES or NO) Specifiying the model job card ORPTIP20 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===> C DEFINE JOB CARDS FOR INSTALL JOBS USERID- IBMU03 DATE - 00/11/011 Enter C to continue. Re-enter parameters to change. 1 DEFINE ORACLE INSTALLATION JOB STATEMENT INFORMATION: ===> ===> ===> ===> ===> ===> ===> ===> 24 //OSD1NS1 // //* //* //* JOB (0000,OR),'ORACLE INSTALL',CLASS=A, MSGCLASS=X,PRTY=15,MSGLEVEL=(1,1),NOTIFY=IBMU03 Experiences Installing Oracle R3 (8.1.7) for OS/390 Specifying the proclib to use If you are creating several Oracle instances in the same LPAR and are using the same SYS1.PROCLIB, you must change the ORACLE JCL PROCEDURE SUFFIX to a unique identifier or you will overwrite other procedures used by other instances. We could not access SYS1.LINKLIB and SYS1.PROCLIB so we changed the entries to our user LINKLIB and PROCLIB. ORPTIP25 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===> C DEFINE PROCS, CLISTS, & TEMPORARY SPACE USERID - IBMU03 DATE - 00/11/01 Enter C to continue. Re-enter parameters to change. 1 DEFINE ORACLE PROCEDURE AND CLIST TARGET LIBRARIES: PROCLIB LIBRARY ===> SYS1.H70.PROCLIB ORACLE JCL PROCEDURE SUFFIX ===> 1k TSO CLIST LIBRARY 2 ===> OSD8I.ORA817.ISPCLIB DEFINE ORACLE LINKLIST LIBRARY: LINKLIB LIBRARY ===> SYS3.LINKLIB Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 25 Specifying the VOLSER and UNIT entries The AUTHLOAD file must be on SMS-managed DASD. Our stogroup was H70SC. We chose not to use SMS-managed DASD for the other files, so we had to specify the VOLSER and UNIT values. ORDSN --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION ------- Row 1 from 20 COMMAND ===> C REVIEW/MODIFY SPACE SPECS - MAJOR LIBS SCROLL ===> PAGE COMMAND: Enter C to continue Type over the input fields to change the dataset attributes ----------------------------------------------------------------------------DSNAME VOLSER UNIT SPACE ---------------------------------------------------TYPE LRECL RECFM PRI SEC BLKSIZE DIRBLK -----------------------------------------------------------------------------AUTHLOAD ------ SYSDA TRK 0 U 3960 790 27998 0 MGMTCLAS: STORCLAS: h70sc DATACLAS: CMDLOAD ORA027 3390 TRK 0 U 4329 864 27998 18 MGMTCLAS: STORCLAS: DATACLAS: MESG ORA027 3390 TRK 0 U 866 168 27998 576 MGMTCLAS: STORCLAS: DATACLAS: SQL ORA027 3390 TRK 256 VB 753 151 4096 96 MGMTCLAS: STORCLAS: DATACLAS: SRCLIB ORA027 3390 TRK 80 FB 101 22 27920 24 MGMTCLAS: STORCLAS: DATACLAS: USSTAR ORA027 3390 TRK 32756 VB 4308 860 32760 12 Specifying the volume for other libraries Note that we used only one volume for all our files because it was a test system. For a production system, you would want to spread these over several volumes. ORDSNO --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===> C SPECIFY VOLSER FOR OTHER LIBRARIES SCROLL ===> PAGE USERID - IBMU03 Enter C to continue DATE= - 00/11/01 Type over on input fields to change VOLUME SERIAL ===> ORA027 Resident Library Volume Name DEVICE TYPE ===> 3390 Device Type MGMTCLAS: 26 Experiences Installing Oracle R3 (8.1.7) for OS/390 STORCLAS: DATACLAS: Specifying USS product options We entered the directory path for the HFS we had created. We were concerned that our /tmp directory was not large enough since we chose to put the temporary installation files in the Oracle Home directory. COMMAND ===> C DEFINE USS PRODUCTS USERID INSTALLATION PARAMETERS Enter C to continue. - IBMU03 DATE - 00/11/01 1 Unix System Services directory path for Oracle Home: ===> /orauss 2 Unix System Services directory path for temporary files: Note: This directory should exist prior to completing the USS Product installation. ===> /orauss At this point press PF4 to return to the Oracle Primary Menu Option unless you wish to review or change your choices. ORINIP60 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===> USERID - IBMU03 DATE - 00/11/01 This completes the Primary ORACLE products definition process. Enter 'PF4' to return to ORACLE Primary Option Menu Enter 'PF3' to backup and review the selections made 3.4 Generate and run the customization job After you complete the installation parameter settings and have returned to the Oracle Primary Option Menu, select option 2, Generate Installation Job, as shown in Figure 14 on page 28. Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 27 OR@INST --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------OPTION ===> 2 ORACLE PRIMARY OPTION MENU USERID - IBMU03 DATE - 00/11/01 TIME - 13:02 1 Define Oracle Products Installation Parameters TERMINAL - 3278 2 Generate Installation Job "ORIJA01" 3 Define New Oracle Database Parameters 4 Generate Database Job "********" 5 Reset all Product and Language selections. X Exit ORACLE Install Dialog facility. Enter END command to terminate ORACLE Install Dialog facility. Figure 14. Generate an installation job This process puts member ORIJA01 into your installation library. You have to run this customization job. It will put a series of installation jobs into your installation library. In addition, it creates the members that will be copied to the Oracle parameter library by the installation. This is the output that will appear: ORACLE PRIMARY PRODUCTS INSTALLATION JOB STREAM GENERATION OFT101I PHASE-I - VERIFY ORACLE INSTALLATION OPTION PARAMETERS. OFT102I ORACLE INSTALLATION LIBRARY ALLOCATED, LIBRARY = 'OSD8I.ORA817.INSTLIB' SHR. OFT104I PHASE-II - GENERATE ORACLE INSTALLATION JOB STREAM MEMBER. LIBRARY = 'OSD8I.ORA817.INSTLIB'. MEMBER = 'ORIJA01'. OFT105I ISPSLIB FTINCL MEMBER(INSSKEL) PROCESSING COMPLETED. COMPLETION CODE 0. OFT106I ORACLE INSTALLATION JOB STREAM MEMBER CREATED. LIBRARY = 'OSD8I.ORA817.INSTLIB'. MEMBER = 'ORIJA01'. COMPLETION CODE 0. OFT107I GENERATION PROCESS COMPLETED. COMPLETION CODE 0. *** 3.5 Run the generated installation jobs This is the series of jobs we had to submit. This list of jobs will vary based on the install options you select. Submit the customization job that is in OSD8I.ORA817.INSTLIB: 28 Experiences Installing Oracle R3 (8.1.7) for OS/390 ORIJA01 This creates the jobs in OSD8I.ORA817.INSTLIB Submit the following series of installation jobs: ORIJB00 Allocates and loads runtime libraries from tape. This job uses the four tapes and takes awhile to complete. On one system, we had to change the following: • The expdate on the tape from 98000 to 99365 to be able to execute this job. • The job card to be able to execute the jobs. • We were missing the UNIT=SYSDA or UNIT = 3390 and the Vol ume = Ser parameter on the PARMLIB DD card. This was because we were not using SMS. • The UNIT=TAPE parameter to UNIT=3490 on the XXARMSG DD card, because TAPE was not defined in our system: //* 28 //XXARMSG DD DSN=ORAR00A.F2, // DISP=OLD,UNIT=3490, // VOL=(,RETAIN,SER=(OS0010,OS0026,OS0042,OS0058)), // LABEL=(9,SL,EXPDT=99365),UNIT=(TAPE,1) 29 //XXB7MSG DD DSN=ORB700A.F2, ORIJC00 Copies modules to LINKLIB. • We had to change SYS1.LINKLIB to SYS3.LINKLIB because we did not have write access to the master LINKLIB. To activate this we had to issue the command F LLA,REFRESH. • In one case, the REGION=1M parameter had to be increased or changed to 0M to be allowed to take all the memory required to run this job. ORIJD00 Copies members to PARMLIB and procedures to PROCLIB. Ensure you have included a suffix xx in the customization process or you could overwrite existing procedures if this is not the first installlation. Note: We only had 2 members in PARMLIB. The other members, such as initora, are copied to PARMLIB in stage 4. ORIJE00 ORIJF00 ORIJG00 ORIJH00 ORIJU01 Copies Copies Copies Copies Copies procedure ORASQL8xx to your Oracle proclib. Oracle precompiler procedures to your Oracle proclib. PARMLIB membesr for interMedia text. PARMLIB members for Oracle Reports. the USS scripts and tar files. Note: The number of jobs you have to run will depend on the products you selected in the customization. You may have job ORIJH00 as well. 3.6 Expand the USS files Then, to expand the USS files, we logged onto OMVS and issued the following commands: Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 29 cd /orauss ./ussinst.sh ORACLE_HOME already exists Are you sure you want to install to this directory. Enter YES or NO (<default:NO>): YES This expands all the USS files from the tar files. If you did not use /tmp, you can erase the uss* tar and sh files when this step is completed. 3.7 Oracle files after the installation The file names shown in Figure 15 are the non-VSAM files we had on our DASD after the installation was complete: OSD8I.ORA817.AUTHLOAD OSD8I.ORA817.CMDLOAD OSD8I.ORA817.CMDLOADE OSD8I.ORA817.CTX.PKH OSD8I.ORA817.DOC OSD8I.ORA817.H OSD8I.ORA817.INSTLIB OSD8I.ORA817.ISPCLIB OSD8I.ORA817.ISPMLIB OSD8I.ORA817.ISPPLIB OSD8I.ORA817.ISPSLIB OSD8I.ORA817.ISPTLIB OSD8I.ORA817.MACLIB OSD8I.ORA817.MESG OSD8I.ORA817.PARMLIB OSD8I.ORA817.REPORTS.DE.RES OSD8I.ORA817.REPORTS.PRT OSD8I.ORA817.REPORTS.RES OSD8I.ORA817.REPORTS.REX OSD8I.ORA817.SQL OSD8I.ORA817.SQLLIB OSD8I.ORA817.SRCLIB OSD8I.ORA817.USSTAR Figure 15. Non-VSAM files on our DASD at install completion These were the files we had in the USS directory: bin bytecode customize.sh dummy.sh javavm jdbc jis ldap lib network nlsrtl nlsrtl3 ocommon oemagent oracore oracore3 plsql precomp rdbms slax sqlj sqlplus svrmgr ussinst.sh Figure 16. FIles in /orauss directory 30 Experiences Installing Oracle R3 (8.1.7) for OS/390 ussitext.sh ussitext.tar ussnet.sh ussnet.tar ussocom.sh ussocom.tar ussoema.sh ussoema.tar ussrdbms.sh ussrdbms.tar ussutils.sh ussutils.tar 3.8 Completion of stage 2 At this point, we had completed the instructions in Chapter 3 of the Installation Manual and proceeded to configure the database service by following the instructions in Chapter 3 in Oracle 8i Enterprise Edition for OS/390 with OSDI System Administration Guide, A85482-1. Chapter 3. Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390 31 32 Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 4. Customizing the Oracle database This chapter describes the various steps needed and the experiences encountered during stage 4 - the customization of the Oracle database on OS/390. We followed the steps given in Chapter 3 in Oracle8i Enterprise Edition for OS/390 Systems Administration Guide Release 3 (8.1.7) for OS/390, A85482-01. Before starting this stage of the installation process, we had: • Installed the Oracle libraries from the tape. • Made OSD8I.ORA817.AUTHLOAD an APF-authorized library. For this stage, the number of installation steps will vary, depending on your selection of Oracle products. The main ones are: • Execute the installation dialogue. • Edit the start-up procedures and Parmlib members. • Issue the SETSSI command. • Create the Oracle database. • Run the following installation jobs: – Load Java – Load SQL*Plus help data – Load the demo tables (Scott/Tiger) – Install Oracle Spatial Data – Install interMedia – Install/update Reports The only verification is the install programs. The traditional VJA jobs are no longer there. 4.1 Execute ISPF and invoke the Oracle customization process Because this is a continuation of the installation begun in Chapter 3, “Installing the Oracle8i 8.1.7 (OSDI) libraries on OS/390” on page 17, it is important that you use the same user ID to do this stage of the installation. If not, refer to the section on Configuring a Database Service Using ISPF panels in Chapter 3 of the Oracle8i Enterprise Edition for OS/390 Systems Administration Guide Release 3 (8.1.7) for OS/390, A85482-01, to ensure that you are using the correct profile. You invoke the installation dialog by entering the TSO commands: ===> exec 'OSD8I.ORA817.ISPCLIB(ORIPO01)' When you run ORIPO01 you create an Oracle ISPF data set environment profile library, tso_userid.ORISPF.ISPFPROF. This is our IBMU03.ORISPF.O00APROF: USRINDEX OSDI8.ORA817 USRSMPE N PRODINX OSDI8.ORA817 OTDVOL OS0010,OS0026,OS0042,OS0058 HEADING --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------- © Copyright IBM Corp. 2001 33 ORIPROF O00A INSTSEL RDBMS NAME ORACLE EOFILE It includes: • A high-level qualifier for data sets • An indicator of whether this was an SMP/E install (if so, all other installs are forced to be the same) • The volume IDs of the tapes that need to be mounted • The level of the database (for example, Version 8) If you want to restart from the very beginning, you may have to modify or delete this file. Select the product set Enter S as shown in Figure 19 to select Oracle8i Server. OR@PRIM --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --- Row 1 to 1 of 1 ORACLE PRODUCT INSTALL MENU USERID - IBMU03 DATE - 00/11/10 OPTION ===> SELECT PRODUCT SET TIME - 17:33 Select only one product set to install, make your selection by placing any non-blank character next to it. You must enter a different first and second level qualifier(s) for each selected product set that appears on this panel. Product Set Target Data set Description Name Qualifiers ------------------------------------------------------------------------------s Oracle8i Server OSD8I.ORA817 ******************************* Bottom of data ******************************** Figure 17. Select the product set Enter S; pressing Enter takes you to the Oracle Primary Option Menu, as shown in Figure 18 on page 35. Select option 3, Define new ORACLE Database Parameters on this menu. Primary option menu In stage one we executed functions 1 and 2 in this panel. Now we execute functions 3 and 4 in stage 4. After selecting 3, the following series of screens show the entries we made for our system. We proceeded sequentially through the screens. 34 Experiences Installing Oracle R3 (8.1.7) for OS/390 OR@INST --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------OPTION ===> 3 ORACLE PRIMARY OPTION MENU USERID - IBMU03 DATE - 00/11/10 TIME - 17:34 1 Define Oracle Products Installation Parameters TERMINAL - 3278 2 Generate Installation Job "ORIJA0T" 3 Define New Oracle Database Parameters 4 Generate Database Job "********" 5 Reset all Product and Language selections. X Exit ORACLE Install Dialog facility. Enter END command to terminate ORACLE Install Dialog facility. Figure 18. Primary Option Menu Defining database parameters To define the new database parameters, we again pressed Enter to proceed sequentially through the panels. ORNEWDB --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------OPTION ===> DEFINE NEW DATABASE PARAMETERS USERID - IBMU03 DATE - 00/11/1 Press ENTER to proceed sequentially. TIME - 17:35 1 2 3 4 5 6 Define Oracle database name and VSAM Qualifiers. Specify Database Region Parameters. Specify the Database, Control, and Redo Log Files. Specify the File Processing Parameters. INSTLIB/ISPSLIB file tailoring information. Define JOB card for new database customization jobs. Enter END command to return to Primary Option Menu. Figure 19. New database parameters Specifying the VSAM file names Note: You must fill in the second-level qualifier for the VSAM files even though the dialog will not force you to do so. We specified DBF as the second-level qualifier. Chapter 4. Customizing the Oracle database 35 ORDBIP10 ----------- NEW DATABASE CUSTOMIZATION ----------COMMAND ===> C DEFINE DATABASE NAME & USERID - IBMU03 VSAM DATA SET NAME QUALIFIERS DATE - 00/11/10 Enter C to continue. 1 ORACLE DATABASE NAME ===> 2 ORACLE DATABASE SERVICE ID OSD1 ===> OSDI001 3 ORACLE VSAM QUALIFIERS: (for DB, CONTROL, and REDO LOG files) HIGH LEVEL QUALIFIER ===> SECOND LEVEL QUALIFIER ===> OSD1 DBF Enter END command to return. Specify database region parameters We used the defaults. ORDBIP15 ----------- NEW DATABASE CUSTOMIZATION ----------COMMAND ===> c SPECIFY DATABASE REGION PARAMETERS USERID DATE Enter C to continue. - IBMU03 - 00/11/10 1 Maximum Number of Address Spaces ===> 1 2 Initial Number of Address Spaces ===> 1 3 Maximum Number of Sessions per Address Space ===> 1024 4 Initial Size of the C Stack ===> 128 K Enter END command to return. Specifying the VOLSER and UNIT entries We chose not to use SMS-managed DASD for the other files, so we had to specify the VOLSER and UNIT values. 36 Experiences Installing Oracle R3 (8.1.7) for OS/390 ORDBIP20 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION -- Row 1 to 3 of 4 COMMAND ===> DEFINE DATABASE FILE INFORMATION SCROLL == => PAGE Enter C to continue. Enter A to add an additional database. Ax where x is number of DB files to add. Enter D beside any row to be deleted. ---DB residence--Primary Optional Device Primary Secondary volume volume type space space ORA027 3390 40000 0 Tablespace Data set SYSTEM OSD1.DBF.SYSTEM.DB1 USERID DATE - IBMU03 - 00/11/10 Units TRK/REC/CYL REC ORA027 3390 Tablespace ROLLBACK 16000 0 Data set OSD1.DBF.ROLLBACK.DB2 REC ORA027 3390 Tablespace DRSYS 10000 0 Data set OSD1.DBF.CONTEXT.DB3 REC Specifying the Volume for Other Libraries Note that we used only one volume for all our files since it was a test system. For a production system, you would want to spread these over several volumes. ORDBIP20 --------- ORACLE PRODUCTS FOR OS/390 INSTAL COMMAND ===> DEFINE DATABASE FILE INFORMATION VOLUME REQUIRED. SCROLL == => PAGE Enter C to continue. Enter A to add an additional database. Ax where x is number of DB files to add. Enter D beside any row to be deleted. USERID DATE ---DB residence--Primary Optional Device Primary Secondary volume volume type space space ORA027 3390 4000 0 Tablespace Data set USER4 OSD1.DBF.USER4.DB4 - IBMU03 - 00/11/10 Units TRK/REC/CYL REC Specifying other file information The control files should be placed on separtate volumes. Chapter 4. Customizing the Oracle database 37 ORDBIP25 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --- Row 1 to 3 of 3 COMMAND ===> DEFINE ORACLE CONTROL FILE INFORMATION SCROLL == => PAGE Enter C to continue. Enter A to add an additional control file. Ax where x is number of files to add. Enter D beside any row to be deleted. USERID DATE - IBMU03 - 00/11/10 Please note that you should have one snapshot control file and at least 2 control files and that each file should reside on a unique volume. Residence Primary Secondary volume space space Units name (in Units) (in Units) ORA027 2000 500 REC Control File name OSD1.DBF.CONTROL2 ORA026 2000 500 REC Control File name OSD1.DBF.CONTROL1 ORA027 2000 500 REC Control File name OSD1.DBF.SNAPCF ******************************* Bottom of data ******************************** Specifying the redo log file information The redo logs should be placed on separate volumes. For a production environment, you should ensure that you have three log files and that they do not reside on the same physical volume. You can add an additional REDO LOG file by using the A option. ORDBIP30 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --- Row 1 to 2 of 2 COMMAND ===> c DEFINE ORACLE REDO LOG INFORMATION SCROLL == => PAGE Enter C to continue. Enter A to add an additional REDO LOG file. Ax where x is number of files to add. Enter D beside any row to be deleted. USERID DATE - IBMU03 - 00/11/10 Residence volume Device Primary Secondary Units name type space space(REC/TRK/CYL) ORA027 3390 4000 0 REC REDO LOG file name OSD1.DBF.LOG2 ORA026 3390 4000 0 REC REDO LOG file name OSD1.DBF.LOG1 ******************************* Bottom of data ******************************** 38 Experiences Installing Oracle R3 (8.1.7) for OS/390 File processing parameters ORDBIP35 --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------COMMAND ===> C SPECIFY FILE PROCESSING PARAMETERS (FPS) USERID - IBMU03 DATE - 00/11/10 Enter C to continue. Re-enter parameters to change. DEFAULT FILE GROUP PARAMETERS: PRIMARY SPACE ===> 10 K MODEL DATA SET ===> OSD1.DBF.SNAPC VOLUME ===> ORA027 SMS CLASSES (MAY NOT BE USED IN COMBINATION WITH MODEL) DATA CLASS MANAGEMENT CLASS STORAGE CLASS ===> ===> ===> Enter END command to return. his is screen. Specifying the INSTLIB tailoring information We did not make any changes on this panel. ORDBIP40 COMMAND ===> C INSTLIB/ISPSLIB FILE TAILORING INFORMATION USERID - IBMU03 DATE - 00/11/10 Enter C to continue. Re-enter parameters to change. 1 ORACLE ISPSLIB (SKELETON) LIBRARY MEMBER: SKELETON LIBRARY MEMBER ===> DBSKEL Untailored Input JCL Configuration Skeleton Member Name 2 ORACLE INSTALLATION LIBRARY: (INSTLIB) INSTLIB DATA SET NAME INSTLIB MEMBER NAME VOLUME SERIAL DEVICE TYPE ===> OSD8I.ORA817.INSTLIB ===> ORDJA01 Tailored JCL Configuration Member ===> (If Not Cataloged) ===> DATA SET DISPOSITION ===> SHR REPLACE LIKE-NAMED INSTLIB MEMBER (NEW or SHR) DISP=SHR ===> NO (YES or NO) Enter END command to return. Chapter 4. Customizing the Oracle database 39 Specifying the job card information ORDBIP50 COMMAND ===> DEFINE JOB CARDS FOR DATABASE JOBS USERID DATE - IBMU03 - 00/11/10 Enter C to continue. Re-enter parameters to change. 1 DEFINE ORACLE INSTALLATION JOB STATEMENT INFORMATION: ===> ===> ===> ===> ===> ===> ===> ===> //IBMT03 JOB (0000,OR),'ORACLE INSTALL',CLASS=A, // MSGCLASS=X,PRTY=15,MSGLEVEL=(1,1),NOTIFY=IBMU03 //* //* //* Completing the product definition process ORDBIP90 COMMAND ===> USERID DATE - IBMU03 - 00/11/10 This completes the ORACL Database definition process. Enter 'PF4' to return to ORACLE Primary Option Menu Enter 'PF3' to backup and review the selections made At this point press PF4 to return to the Oracle Primary Option Menu unless you wish to review or change your choices. 40 Experiences Installing Oracle R3 (8.1.7) for OS/390 OR@INST --------- ORACLE PRODUCTS FOR OS/390 INSTALLATION --------OPTION ===> 4 ORACLE PRIMARY OPTION MENU USERID - IBMU03 DATE - 00/11/10 TIME - 17:44 1 Define Oracle Products Installation Parameters TERMINAL - 3278 2 Generate Installation Job "ORIJA0T" 3 Define New Oracle Database Parameters 4 Generate Database Job "ORDJA01" 5 Reset all Product and Language selections. X Exit ORACLE Install Dialog facility. Enter END command to terminate ORACLE Install Dialog facility. Figure 20. Oracle Primary Option Menu upon completion of function 3 4.2 Generate and run the customization job After you complete the installation parameter settings and have returned to the Oracle Primary Option Menu, specify option 4, Generate Database Job “ORDJA01”, as shown in Figure 20. This process puts member ORDJA01 into your installation library. This is the output that will appear: ORACLE NEW DATABASE CUSTOMIZATION JOB STREAM GENERATION OFT101I PHASE-I - VERIFY ORACLE INSTALLATION OPTION PARAMETERS. OFT102I ORACLE INSTALLATION LIBRARY ALLOCATED, LIBRARY = 'OSD8I.ORA817.INSTLIB' SHR. OFT104I PHASE-II - GENERATE NEW DATABASE CUSTOMIZATION JOB STREAM MEMBER. LIBRARY = 'OSD8I.ORA817.INSTLIB'. MEMBER = 'ORDJA01'. OFT105I ISPSLIB FTINCL MEMBER(DBSKEL) PROCESSING COMPLETED. COMPLETION CODE 0. OFT106I ORACLE NEW DATABASE JOB STREAM MEMBER CREATED. LIBRARY = 'OSD8I.ORA817.INSTLIB'. MEMBER = 'ORDJA01'. COMPLETION CODE 0. OFT107I GENERATION PROCESS COMPLETED. COMPLETION CODE 0. *** At this point, press Enter to exit the Oracle installation dialogue. Chapter 4. Customizing the Oracle database 41 4.3 Run the generated installation jobs This is the series of jobs we had to submit. This list of jobs will vary based on the install options you select. Submit the customization job that is in OSD8I.ORA817.INSTLIB: ORDJA01 Creates more jobs in OSD8I.ORA817.INSTLIB Submit the following series of installation jobs: OSD1JB00 Defines the database, control and redo log files and the alert log. We found the UNIT and VOL=SER parameters were missing in the ALERT DD card since we were not using SMS. OSD1JC00 Adds customized parameters to the Oracle Parmlib library. Our entries that were generated are shown in “Review the PARMLIB members” on page 45. At this point, we were ready to create the database instance, but more setup was required as described in Chapter 5, “Creating the database” on page 43. 42 Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 5. Creating the database These are the steps we did in stage 5 of our installation process. 5.1 Preparing the system for database creation You have completed all the steps in Chapter 2, “Preparing to install Oracle 8.1.7 with OSDI” on page 7. You must have: • AUTHLOAD as an APF- authorized library • Defined the PPT entries Now we had to: • Set up a started procedure for Net8. • Define the service group and services for the database and Net8. • Execute the SSI command. 5.2 Setting up a started procedure for Net8 No sample procedure is provided for Net8, so we created the member OSD1NET1in SYS2.H70.PROCLIB. Remember to have OSD1NET1 defined as a RACF user ID or ensure that all started procedures are associated with a user ID that has a RACF entry. /OSD1NET1 PROC //* //*------------------------------------------------------------------* //* PROC DESCRIPTION: ORACLE NET8 SERVICE PROCEDURE * //*------------------------------------------------------------------* //* MODIFICATIONS REQUIRED: * //* - CHANGE ORACLE.V816OSDI HIGH LEVEL QUALIFIERS TO QUALIFIERS * //* APPROPRIATE FOR YOUR SITE. * //*------------------------------------------------------------------* //NET8 EXEC PGM=ORANET8,REGION=0M //STEPLIB DD DSN=OSDI8.ORA817.AUTHLOAD,DISP=SHR //NET8LOG DD SYSOUT=X 5.3 Configuring the service group file We copied the member OSD1SVC and created a service group member to set up the address spaces. Chapter 5. Creating the database 43 BROWSE OSDI1.ORA817.PARMLIB(OSD1SVCG) Command ===> ********************************* Top of Data *** INIT (ORASSI, OSD1) DEFINE SERVICEGROUP OSD1 DESC (‘Service group’) MODE(local) DEFINE SERVICE OSDI001 DESC('Oracle OSD1 Database') TYPE(ORA8) PROC(OSD1DEN) MAXAS(10) PARM('OSDI8.ORA817.PARMLIB(OSD1PARM)') SID(OSD1) START OSDI001 DEFINE SERVICE OSDINET DESC('Oracle Net8 ') TYPE(NET8) PROC(OSD1NET) PARM('HPNS PORT(1577)') SID(NET1) START OSDINET Note: Including the start commands in this member is optional. They can be issued manually as console commands: To activate the address spaces we issued the following: SETSSI ADD,S=OSD1,I=ORASSINI,P=’OSDI8.ORA817.PARMLIB(OSD1SVG)’ We had made the jobnames OSD1DEN and OSD1NET RACF user IDs so they would have the priviledges necessary for execution. Note: MAXAS is the parameter that determines the maximum number of address spaces that this service can use. If you need to increase it, an IPL will be required or you will have to use a new name for your service. If you expect to grow your use of the Oracle instance, you should set this number to a larger number, such as 50, to avoid an IPL in the future. The INIT_ADR_SPACES parameter in OSDIPARM in SYS1.PARMLIB specifies the number of address spaces to be initialized at the startup of the database. This should be lower because it will impact the use of memory. It can be changed dynamically. 5.3.1 Points to consider when setting up the address spaces The OSDI version of Oracle8i can support multiple address spaces to allow improved scalability. For our installation, we assumed it was for a small pilot or test instance so we used only one address space in our examples. Because address space IDs cannot be reused until an IPL, we would soon run out of address spaces if we used a large number in our test system, where we would expect to start and stop the instance many times. This is an important point to monitor since you do not want the Oracle instance to fail due to a lack of memory, because recovery could be complicated. So start with one address space. Then, to increase the number you must change the INIT_ADR_SPACES(1) parameter in OSDIPARM and also ensure that the RSVNONR parameter in IEASYSxx member of SYS1.PARMLIB has specified a large number. However, the larger the number, the more memory will be reserved for address spaces. 44 Experiences Installing Oracle R3 (8.1.7) for OS/390 So this factor is a delicate balance to manage. 5.4 Continuing running the generated job Now that all the system preparation was done, we were ready to create the database and complete the installation by running the following jobs: OSD1JD00 Creates new database and database dictionary. Do not submit until you have initialized your OSDI subsystem by issuing the SETSSI command. The output of the job went to OSDI.ALERT. OSD1JD01 Sets up the database for running Java. OSD1JE00 Sets up SQL*Plus help data. OSD1JF00 Sets up documentation and demo tables. If you have chosen any of the following you will have more jobs to run: OSD1JG00 For spatial data OSD1JH00 For interMedia text OSD1JI00 For Oracle Reports OSD1J102 For Oracle Reports 6.0 verification Note: Be sure to check the output of these jobs. Since the listings are long, you could search for the strings rror and arning, which will find all instances of error, Error, warning and Warning and avoid having to search with lowercase and uppercase. This completed the new database customization process. 5.5 Review the PARMLIB members The initial PARMLIB members are shown in Figure 21 through Figure 24 on page 47. Chapter 5. Creating the database 45 BROWSE OSD8I.ORA817.PARMLIB( OSD1INIT) Command ===> ********************************* Top of Data *** CONTROL_FILES = ' OSD1.DBF.CONTROL2' CONTROL_FILES = ' OSD1.DBF.CONTROL1' SHARED_POOL_SIZE = 52428800 JAVA_POOL_SIZE = 20971520 DB_BLOCK_BUFFERS = 500 DB_BLOCK_MAX_DIRTY_TARGET = 0 DB_FILES = 256 DB_NAME = OSD1 LOG_BUFFER = 65536 LOG_CHECKPOINT_INTERVAL = 3000 OPEN_CURSORS = 120 ROLLBACK_SEGMENTS = (S1,S2,S3,S4) TRANSACTIONS = 55 SESSIONS = 55 PROCESSES = 50 DML_LOCKS = 220 COMPATIBLE = 8.1.0 TEXT_ENABLE = FALSE Figure 21. Oracle PARMLIB: database initialization OSD1INIT parameter BROWSE OSD8I.ORA817.PARMLIB( OSD1PARM) Command ===> ********************************* Top of Data *** SERVER_LOADMOD(ORACLE) INIT_ADR_SPACES(1) MAX_SESSIONS(1024) INIT_STACK_SIZE(128K) Figure 22. Oracle PARMLIB: OSD1PARM member The OSD1SVC member is not used. We used it as the model for our service group member, which we created. BROWSE OSD8I.ORA817.PARMLIB( OSD1SVC) Command ===> ********************************* Top of Data *** DEFINE SERVICE OSDI001 DESC('Oracle OSD1 Database') TYPE(ORA8) PROC(ORAOSD1) MAXAS(1) PARM('OSD8I.ORA817.PARMLIB(OSD1PARM)') SID(OSD1) START OSDI001 Figure 23. Oracle PARMLIB:SVC member 46 Experiences Installing Oracle R3 (8.1.7) for OS/390 OSDDIONE.ORA817.PARMLIB( OSD1FPS) - 01.00 d ===> FILE_GROUP(DFLT) DEFAULT_SPACE(10) MODEL(OSD1.DBF.SNAPCF) VOLUMES(ORA027) **************************** Bottom of Data * Figure 24. Oracle PARMLIB: fIle group parameter 5.6 VSAM files after stage 2 These are the VSAM files we had after completing the customization of the database. OSD1.DBF.CONTEXT.DB3 OSD1.DBF.CONTEXT.DB3.DATA OSD1.DBF.CONTROL1 OSD1.DBF.CONTROL1.DATA OSD1.DBF.CONTROL2 OSD1.DBF.CONTROL2.DATA OSD1.DBF.LOG1 OSD1.DBF.LOG1.DATA OSD1.DBF.LOG2 OSD1.DBF.LOG2.DATA OSD1.DBF.OSD1ALRT OSD1.DBF.ROLLBACK.DB2 OSD1.DBF.ROLLBACK.DB2.DATA OSD1.DBF.SNAPCF OSD1.DBF.SNAPCF.DATA OSD1.DBF.SYSTEM.DB1 OSD1.DBF.SYSTEM.DB1.DATA OSD1.DBF.USER4.DB4 OSD1.DBF.USER4.DB4.DATA Figure 25. VSAM files on our DASD at install completion Note: The ALRT file is not a VSAM file. At this point, we had completed a successful installation of the Oracle instance OSD1. We then installed the Intelligent Agent. Chapter 7, “Operational considerations” on page 59 provides hints and tips on setting up an operational process. Chapter 5. Creating the database 47 48 Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 6. Installing the Intelligent Agent The purpose of this chapter is to document our experience installing and configuring the Oracle Intelligent Agent on OS/390 Release 2.7 using UNIX System Services. There are two documents available for the installation and configuration processes. If would be useful, although not necessary, to print these documents. They are available in PDF format, which can be printed, or in HTML format. The generic document on the Intelligent Agent is available on the CD or from Metalink. The OS/390 document is available on Metalink only. Both formats can be viewed from a browser. The documents are: • Oracle for OS/390 OSDI System Administration Guide, A85482 • Oracle Intelligent Agent Users Guide, A67825. This is a generic guide for Intelligent Agent information and can be useful when configuring the Intelligent Agent. 6.1 Introduction to Intelligent Agents and OEM Intelligent Agents are autonomous because they function without requiring that the Oracle Enterprise Manager console or Management Server be running. The primary communications path from the Oracle Management Server to the database instance is through the Intelligent Agent, the agent that services and Oracle instances can run when the database is down. This allows the Intelligent Agent to start and shut down instances. It can also perform administrative tasks and run applications without direct intervention from the DBA. It can detect errors and issue predetermined corrective actions to resolve the problem. All job and event messages are queued, enabling the work to take place when the OMS is not active. 6.1.1 Installation of the Intelligent Agent and Data Gatherer in USS The installation process is simple and does not take much time. If you have done this before with an MPM version of the database, be careful, as things have changed a bit. These changes will be pointed out in this chapter. During the database installation, job ORIJU01 was run to install scripts and TAR files in USS. The ussinst.sh shell script was also run at that time. It installed all the utilities and USS functions selected during the installation. As a result of running this a shell script, customize.sh, was placed in the $ORACLE_HOME/bin directory. The customize.sh shell script is used to install the Oracle Intelligent Agent. Before you run the customize.sh script, check your .profile to insurethat you have a valid ORACLE_HOME, or you can enter the following command from USS: echo $ORACLE_HOME When we did this, the response was correct. It was: /orauss which was the same value we entered on the install panel ORINIP50 during the database installation. © Copyright IBM Corp. 2001 49 We ran the customize.sh script and answered yes to the oem prompt. The information requested was entered at the prompt: Customize: Now it is time to set up support for the OEM Backup Utility. Do you want to continue [ Y / N(default) ] ? ===> Y At the next prompt we took the default ( enter): Customize: (OEM Backup Utility) Please specify the dataset high-level qualifiers for your Oracle8 for OS/390 database [ OSDI8.ORA817 ] ? The next prompt asked if all the necessary environmental variables should be added to the user’s .profile. We answered yes. Do you like those Y N(default) O - changes to be applied to your .profile file apply to .profile of current user do not apply the changes apply to other file (if it exists, to append, if not, create the file to use it later). ===> Y After our .profile was updated, it contained the following information: *************************LINES DELETED********************************** # ====================================================================== # End of c89/cc/c++ customization section # ====================================================================== #sets for Oracle environment export ORACLE_HOME=/orauss export TWO_TASK=OSDX # the following lines generated during # customization of Intelligent Agent export export export export export export export export export export export export export PATH=$PATH:/orauss/bin: ORANLS=/orauss/ocommon/nls/admin/data ORA_NLS=$ORANLS ORA_NLS33=$ORANLS TNS_ADMIN=$ORACLE_HOME/network/admin NET_ADMIN=$TNS_ADMIN ORATAB=$TNS_ADMIN/oratab LIBPATH=$LIBPATH:/orauss/lib MVS_ORA_HOME=OSDI8.ORA817 MVS_CMD_HOME=OSDI8.ORA817.CMDLOAD MVS_SQL_HOME=OSDI8.ORA817.SQL MVS_TMP_HOME=OSDI8.ORA817.TEMP MVS_REX_HOME=OSDI8.ORA817.REXX ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## ##agent## Figure 26. Example of a USS profile updated for the Intelligent Agent The customize.sh script copied the following four files into the $ORACLE_HOME/network/admin directory: • tnsnames.ora • oratab 50 Experiences Installing Oracle R3 (8.1.7) for OS/390 • snmp_rw.ora • listener.ora This version is different in that two files, db_s390.ora and snmp_mcs.ora, are no longer used. If during the customizing process any of the files become unusable, you can get clean copies from the directory $ORALE_HOME/network/admin/sample. During our installation, the files listed above were not copied from the sample directory. we needed to use the cp command to do the copy manually. We opened a TAR on this problem. At the time of this writing, the TAR was not resolved. 6.2 Configuring the Intelligent Agent and Data Gatherer All the configuration steps are completed in USS.The first file we configured was tnsnames.ora. There are some differences from earlier versions. The OSDI version uses Net8 drivers for communications as opposed to SQL*Net, which was used in MPM versions. In the past, to set up the cross-memory drivers for local database access, the connect string looked like the following: sqlplus system/manager@W:osdi001 where @W selected the cross-memory drivers. This was true for SQL*Plus in USS and for SQL*Plus run from the TSO command line. If you did not include @W, the communications path was through TCP/IP and SQL*Net. This could cause unnecessary overhead and potential performance problems. With SQL*Net not running, you would not be able to connect to the database and would receive the message NO TNS LISTENER. 6.2.1 Configuring tnsnames.ora To be consistent with Oracle on other platforms, a new entry must be made in the tnsnames.ora file that identifies a database service for cross-memory services. The reasons for this are not clearly documented in the Oracle Enterprise Manager Intelligent Agent and Data Gatherer chapter in the Oracle8i Enterprise Edition with OSDI System Administration Guide. It is, however, well documented in the Oracle8i Enterprise Edition with OSDI OS/390 Users Guide. We changed the tnsnames.ora entries to the following: OSDX = (description = (address=(protocol=XM)(subsys=OSD1)(service=OSDI001)) ) OSDI001 = (description= (address_list = (address=(protocol=tcp)(host=MVS80)(port=1577))) (connect_data = (sid=OSD1)) ) The first entry, OSDX, is used to access the database locally through cross memory services. The protocol entry must be XM for cross memory services. The host parameter in our case is MVS80. Either of the following two commands can be used to determine your hostname. The first is hometest, which is supplied by OS/390. Chapter 6. Installing the Intelligent Agent 51 Running hometest from the TSO command line should produce output that looks similar to the following: Running IBM MVS TCP/IP CS V2R7 TCP/IP Configuration Tester The TCP/IP system parameter file used will be "SYS1.TCPPARMS(TCPDATA)". *** The FTP configuration parameter file used will be "SYS1.TCPPARMS(FTPDATA)". TCP Host Name is: MVS80.SPC.IBM.COM Using Name Server to Resolve MVS80.SPC.IBM.COM Jobname of Caller: IBMU10 TCP Host Name: MVS80 Domain Origin: SPC.IBM.COM Jobname of TCP/IP: TCPIP Communicate Via: UDP OpenTimeOut: 5 MaxRetrys: 1 NSPort: 53 NameServer Jobname: NAMESRV NSInternetAddress(.1.) := 9.97.32.1 Data Set Prefix used: TCPIP Resolving Name: MVS80.SPC.IBM.COM Result from InitResolver: OK Building Name Server Query: * * * * * Beginning of Message * * * * * *****************************LINES DELETED********************************* Query Id: 1 Flags: 0000 0001 0000 0000 *** * * * Hometest Successful* * * *** Figure 27. Output of the hometest command You only need to use the hostname, MVS80 in our case. You do not need to use the domain name, SPC.IBM.COM . Or you can use the hostname command. It will return one line containing your hostname. The source code and instructions to implement hostname in USS can be found at: http://www.s390.ibm.com/products/oe/bpxaltoy.htm The subsys parameter we used was OSD1, which is what we named our OSDI subsystem, and the service is the database service name. With these entries we connected to the database with cross memory services using the following connect string: sqlplus system/manager@osdx Oracle has a specific search order to resolve the service name, OSDX in this case, to select the correct database, and then provide the connection to it. The first place Oracle looks is in the .profile and the TWO_TASK variable. If an entry is found there, then Oracle will try to resolve that from an entry in tnsnames.ora, otherwise it searches tnsnames.ora directly for the entry. What this means is that if the variable TWO_TASK looks like this: 52 Experiences Installing Oracle R3 (8.1.7) for OS/390 export TWO_TASK=OSDX then the OSDI001 database can be accessed by entering SQL*Plus: sqlplus system/manager Because TWO_TASK is set to OSDX, Oracle will find the OSDX entry in tnsnames.ora and connect to that database service. The OSDI001 entry is used to access the database through TCP/IP and TNS. While this is mostly to connect to databases off this platform, this entry is needed for the Intelligent Agent because it must have a TCP/IP connection to the database. There are two other entries in tnsnames.ora that are important to the Intelligent Agent and how it is accessed from the Oracle Enterprise Manager. Those are the dbnsnmp1 and dbsnmp2 entries. The only change we needed to make was to the hostname. Our entries were: dbsnmp1=(description=(address=(protocol=tcp)(host=MVS80)(port=1748))) dbsnmp2=(description=(address=(protocol=tcp)(host=MVS80)(port=1754))) The dbsnmp entries are used by TNS to listen for incoming requests. This is why there must be a TCP/IP entry in tnsnames.ora even though the Intelligent Agent is on the same platform as the database. It might be thought that a cross memory connection would be used, but not for the Intelligent Agent. TCP/IP is used so as to be consistent across platforms. Ports 1748 and 1754 are registered and granted to Oracle by the Internet Assigned Number Authority (INANA). Do not change these port addresses. Port 1748 listens for incoming requests and is used in the discovery services. Changing this port will cause auto-discovery to not work. Port 1754 is used by the agent to accept RPCs. If this port is changed, the OEM Console will not be able to detect the Intelligent Agent. 6.2.2 Configuring listener.ora The entries in this file are straightforward. We used this to identify our hostname and the port number of the database listener. We then created a listener list of all the databases we were planning to connect to with this listener. The last entries we made were to specify where the trace and log files should go. This is generally the ORACLE_HOME/network/admin/trace directory. Our listener.ora was configured as shown in Figure 28 on page 54. Chapter 6. Installing the Intelligent Agent 53 ### # OE390 listener ### # # This is the definition of the listener named LISTENER. # Instead of dummy lines containing % sign enter actual database # parameters. For instance, if your database name is ABCD and it # is configured for port 1812, add the following line: # # (ADDRESS=(PROTOCOL=TCP)(HOST=ABCD)(PORT=1812)) # LISTENER= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=MVS80)(PORT=1577)) ) # # # # # # This is the list specify one line Enter the actual the database SID of SIDs for listener LISTENER. You should for each SID that this listener will serve. path name in place of %ORACLE_HOME% and in place of %DB%. # configured for OSD1 - 12/05/00 djd SID_LIST_LISTENER= (SID_LIST= (SID_DESC=(ORACLE_HOME=/orauss) (SID_NAME=OSD1)) ) STARTUP_WAIT_TIME_LISTENER=1 CONNECT_TIMEOUT_LISTENER=0 TRACE_LEVEL_LISTENER=0 TRACE_DIRECTORY_LISTENER=/orauss/network/admin/trace TRACE_FILE_LISTENER=lis.trc LOG_DIRECTORY_LISTENER=/orauss/network/admin/trace LOG_FILE_LISTENER=tns.log OPS_DOLLAR_LOGIN_ALLOWED=(OOOO) Figure 28. Listener.ora example The only other parameter worth noting is TRACE_LEVEL_LISTENER=0. If there are problems in getting anything in this area to work correctly, change this to TRACE_LEVEL_LISTENER=16 and a trace will be provided to help diagnose the problem. There are other levels of tracing, but 16 provides the most information and is generally what Oracle Support will ask to see. 6.2.3 Configuring snmp_rw.ora There are two files, snmp_rw.ora, which can be configured, and snmp_ro.ora, which is created from the snmp_rw.ora entries. Do not change entries in the snmp_ro.ora file. If a problem is suspected in this file, use the rm command to delete it. It will be recreated the next time the Intelligent Agent is started. There are only four entries to be concerned with: The location of the two trace and log files and the dbnsmp entries at the beginning of the file. Change only the host parameter. We did not change anything else in these entries. Figure 29 on page 55 shows what our snmp_rw.ora file looked like: 54 Experiences Installing Oracle R3 (8.1.7) for OS/390 dbsnmp.address=(address=(protocol=tcp)(host=MVS80)(port=1748)) dbsnmp.spawnaddress=(address=(protocol=tcp)(host=MVS80)(port=1754)) nmi.secure_only = FALSE nmi.register_with_names=false nmi.trace_level = 0 nmi.trace_directory = /orauss/network/admin/trace nmi.trace_file = agent.trc nmi.log_directory = /orauss/network/admin/trace nmi.log_file = agent.log snmp.contact.listener = "" snmp.index.listener = 1 snmp.contact.OSD1 = "" snmp.index.OSD1 = 2 Figure 29. SNMP_RW.ORA sample file In a fashion similar to the listener.ora file, if there are problems and a trace is needed, change nmi.trace_level=0 to nmi.trace_level=16 to create the traces. 6.2.4 Configuring oratab The last file to configure is oratab. There is only one entry in this file per database that will be supported. This entry determines what databases to start when the OEM is started. Generally this is set to N so, no databases on OS/390 are started. The entry from our oratab was: OSDI001:/orauss:N 6.3 Starting the Intelligent Agent After we were as certain as we could be that the Intelligent Agent was correctly configured, we tried to start it. The Intelligent Agent is started as follows from USS: lsnrctl dbsnmp_start After entering this you get the following message: LSNRCTL for OE390: Version 8.1.7.0.50 - Production on 13-DEC-2000 05 (c) Copyright 1998 Oracle Corporation. All rights reserved. However, this does not mean that the Intelligent Agent started successfully. To ascertain the status of the Intelligent Agent, wait a minute or so after starting the agent and enter the following: lsnrctl dbsnmp_status If the agent started successfully, it will issue the following message: LSNRCTL for OE390: Version 8.1.7.0.50 - Production on 13-DEC-2000 05:06:43 (c) Copyright 1998 Oracle Corporation. All rights reserved. The db subagent is already running. If the agent did not start, the message will be: LSNRCTL for OE390: Version 8.1.7.0.50 - Production on 13-DEC-2000 05:10:32 (c) Copyright 1998 Oracle Corporation. All rights reserved. Chapter 6. Installing the Intelligent Agent 55 The db subagent is not started. As stated in Chapter 13 of the Oracle8i Enterprise Edition with OSDI System Administration Guide, to insure that the agent is running correctly once started, we did a tnsping to three addresses. One was the system database (or databases) that will be supported by this Intelligent Agent. The other two addresses that we pinged using tnsping were: dbsnmp1 dbsnmp2 A successful ping will return the following message: IBMU10:/orauss/network/admin>tnsping dbsnmp1 TNS Ping Utility for OE390: Version 8.1.7.0.50 - Production on 13-DEC-2000 06:53:56 (c) Copyright 1997 Oracle Corporation. All rights reserved. Attempting to contact (address=(protocol=tcp)(host=MVS80)(port=1748)) OK (300 msec) If you do not get this message for both dbsnmp1 and dbsnmp2, the Intelligent Agent will not autodiscover the databases you want to support with OEM. The OEM tools must be used by logging directly into the database with the tool. To stop the agent, use this command: lsnrctl dbsnmp_stop There are two files to look at that insure that your configuration was done correctly. One is $ORACLE_HOME/network/agent/services.ora. It will be an empty file unless you are configured correctly. If the agent starts correctly, the file should look like the following: MVS80=(ORACLE_NODE, MVS80, MVS80, (PLATFORM=(osName=OS/390)(osVersion=07.00))) listener_MVS80 = (ORACLE_LISTENER, MVS80, (ADDRESS_LIST = (ADDRESS=(PROTOCOL=TCP)(HOST=MVS80)(PORT=1577)))) OSD1 = (ORACLE_DATABASE, MVS80, (description=(address_list = (address=(protocol=tcp)(host=MVS80)(port=1577)))(connect_data = (sid=OSD1) )), listener_MVS80) Figure 30. Services.ora on successful start of the Intelligent Agent The hostname, port, operating system and services that the Intelligent Agent will communicate with are identified. If there is a problem in starting the agent and there is any incorrect information, do not change it. Instead, erase the file. It is recreated every time the agent is started successfully. When the agent starts successfully, the snmp_ro.ora file is created. It should look similar to Figure 31 on page 57. 56 Experiences Installing Oracle R3 (8.1.7) for OS/390 snmp.visibleservices = (listener, OSD1) snmp.visibleservices = (listener, OSD1) snmp.shortname.listener = LISTENER snmp.shortname.listener = LISTENER snmp.longname.listener = listener_MVS80 snmp.longname.listener = listener_MVS80 snmp.configfile.listener = /orauss/network/admin/listener.ora snmp.configfile.listener = /orauss/network/admin/listener.ora snmp.oraclehome.listener = /orauss snmp.oraclehome.listener = /orauss snmp.SID.OSD1 = OSD1 snmp.SID.OSD1 = OSD1 snmp.oraclehome.OSD1 = /orauss snmp.oraclehome.OSD1 = /orauss snmp.address.OSD1 = OSD1 snmp.address.OSD1 = OSD1 snmp.remoteaddress.OSD1 = (description=(address_list = (address= snmp.remoteaddress.OSD1 = (description=(address_list = (address= (protocol=tcp)(host=MVS80)(port=1577)))(connect_data = (sid=OSD1) (protocol=tcp)(host=MVS80)(port=1577)))(connect_data = (sid=OSD1) )) )) ifile = /orauss/network/admin/snmp_rw.ora ifile = /orauss/network/admin/snmp_rw.ora Figure 31. Snmp_ro.ora on successful start of the Intelligent Agent Hostname, service name, sid and port number can be identified. If any of this is incorrect, do not change it. Instead, remove the file since it will be recreated the next time the agent is started. Chapter 6. Installing the Intelligent Agent 57 58 Experiences Installing Oracle R3 (8.1.7) for OS/390 Chapter 7. Operational considerations This chapter covers stage 6 in our installation and describes areas to consider when setting up operational procedures: • List commands to start and stop the database • JCL to start and stop the database Make sure the job names have RACF privileges. • Automate the SETSSI command at IPL time • Add more address spaces • Connect to remote databases from TSO • Create a second instance It also discusses some miscellaneous hints, such as upgrading an Oracle8 database from MPM to OSDI. 7.1 Commands to start and stop the database First we verified that the SETSSI had been successful. Then, to start the database, we issued the following commands: /OSD1 start OSDINET /OSD1 start OSDI001 /start OSD1STRT To stop the database, issue the commands in reverse order: /start OSD1SHUT /OSD1 stop OSDI001 /OSD1 stop OSDINET OSD1 is the service group name. The address space names are OSDI001 and OSDINET. To verify that the address spaces are running, you can issue: Enter SDSF ==>h ===> PRE OSDI* DA This will list the address spaces that are active. Note: The console messages have changed from the messages that used to be received with the MPM version because the database is no longer running in its own address space. If you are checking any of these messages for automated operations, you will have to review your procedures. 7.2 JCL to start the database Note: We used SVRMGRL. You may want to use SQLPLUS because SVRMGRL will no longer be available in Oracle9i. //OSD1STRT PROC INDEX='OSDI8', //* // LIBV='ORA817', //* © Copyright IBM Corp. 2001 NONVSAM LIBRARY HLINDEX. ORACLE/VERSION AND INSTALL LEVEL. 59 // SYSOUT='SYSOUT=*' SYSOUT CLASS //*----------------------------------------------------------------* //*----------------------------------------------------------------* //* * //* ORACLE SQL*PLUS BATCH PROCESSOR * //* USE THIS PROC TO START THE DATABASE AFTER THE SERVICE HAS * //* BEEN STARTED * //*----------------------------------------------------------------* //* //OSD1STRT EXEC PGM=SVRMGRL,REGION=4M //STEPLIB DD DSN=&INDEX..&LIBV..CMDLOAD, // DISP=SHR //ORA$LIB DD DSN=&INDEX..&LIBV..MESG, // DISP=SHR //SYSOUT DD &SYSOUT,DCB=(LRECL=132,BLKSIZE=1320,RECFM=VB) //SYSERR DD SYSOUT=*,DCB=(LRECL=132,BLKSIZE=1320,RECFM=VB) //ORAPRINT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //* //ORA@OSD1 DD DUMMY //ORA@FNA DD DSN=&INDEX..&LIBV..PARMLIB(SERVFNA),DISP=SHR //SQL DD DSN=&INDEX..&LIBV..SQL,DISP=SHR //SYSIN DD DSN=&INDEX..&LIBV..PARMLIB(STARTUP),DISP=SHR //* 7.3 JCL to stop the database //OSD1SHUT PROC INDEX='OSDI8', //* NONVSAM LIBRARY HLINDEX. // LIBV='ORA817', //* ORACLE/VERSION AND INSTALL LEVEL. // SYSOUT='SYSOUT=*' SYSOUT CLASS //*----------------------------------------------------------------* //*----------------------------------------------------------------* //* * //* ORACLE SQL*PLUS BATCH PROCESSOR * //* * //*----------------------------------------------------------------* //* //OSD1SHUT EXEC PGM=SVRMGRL,REGION=4M //STEPLIB DD DSN=&INDEX..&LIBV..CMDLOAD, // DISP=SHR //ORA$LIB DD DSN=&INDEX..&LIBV..MESG, // DISP=SHR //SYSOUT DD &SYSOUT,DCB=(LRECL=132,BLKSIZE=1320,RECFM=VB) //SYSERR DD SYSOUT=*,DCB=(LRECL=132,BLKSIZE=1320,RECFM=VB) //ORAPRINT DD SYSOUT=* //SYSPRINT DD SYSOUT=* //* //ORA@OSD1 DD DUMMY //ORA@FNA DD DSN=&INDEX..&LIBV..PARMLIB(SERVFNA),DISP=SHR //SQL DD DSN=&INDEX..&LIBV..SQL,DISP=SHR //SYSIN DD DSN=&INDEX..&LIBV..PARMLIB(SHUTDOWN),DISP=SHR //* 60 Experiences Installing Oracle R3 (8.1.7) for OS/390 7.4 JCL to start the database address space service This is used by the service OSD1. //OSD1DEN PROC INDEX='OSDI8', // LIBV='ORA817' //* //*----------------------------------------------------------------* //* ORACLE CORPORATION * //* CORPORATE PRODUCT SUPPORT * //* 500 ORACLE PARKWAY * //* REDWOOD SHORES CALIFORNIA 94065 U.S.A * //* * //* ATTENTION: MVS PRODUCT SUPPORT * //* 650/506-7000 * //* ORACLE SERVER LICENSED MATERIALS - PROPERTY OF ORACLE CORP. * //* CONTAINS RESTRICTED MATERIALS OF ORACLE CORP. * //* REFER TO COPYRIGHT INSTRUCTIONS DOCUMENT NUMBER XXXX-XXXX. * //* (C) COPYRIGHT ORACLE CORP. 1986 * //*----------------------------------------------------------------* //* //* SETPROG APF,ADD,DSN=OSDI8.ORA817.AUTHLOAD,SMS //* You can insert the line above to do the setprog dynamically //IEFPROC EXEC PGM=ORARASC,REGION=0M //STEPLIB DD DSN=&INDEX..&LIBV..AUTHLOAD,DISP=SHR // DD DSN=SYS1.SCEERUN,DISP=SHR //ORA$LIB DD DSN=&INDEX..&LIBV..MESG,DISP=SHR //ORA$ENV DD DSN=&INDEX..&LIBV..PARMLIB(ORAENV), // DISP=SHR //TNSNAMES DD DSN=&INDEX..&LIBV..PARMLIB(TNSNAMES), // DISP=SHR //ORA$FPS DD DSN=&INDEX..&LIBV..PARMLIB(OSD1FPS), // DISP=SHR //SQLBSQ DD DSN=&INDEX..&LIBV..SQL(SQLBSQ), // DISP=SHR //SYSPRINT DD DSN=OSD1.DBF.OSD1ALRT,DISP=SHR //SNAPCF DD DSN=OSD1.DBF.SNAPCF, // DISP=SHR //* 7.5 JCL to start Net8 address space service This is used by the service NET1. //OSD1NET PROC INDEX='OSDI8', //* NONVSAM LIBRARY HLINDEX. // LIBV='ORA817' //* ORACLE/VERSION AND INSTALL LEVEL. //*----------------------------------------------------------------* //* * //* ORACLE NET8 * //* * //*----------------------------------------------------------------* //* //IEFPROC EXEC PGM=ORANET8,REGION=0M //STEPLIB DD DSN=&INDEX..&LIBV..AUTHLOAD, // DISP=SHR //NET8LOG DD SYSOUT=* //* Chapter 7. Operational considerations 61 7.6 Setting up SETSSI We had issued this command dynamically in stage 4. SETSSI ADD,S=OSD1,I=ORASSINI,P='OSDI8.ORA817.PARMLIB(OSD1SVG)' You must add a line to the IEFSSN00 file so that this command would automatically be executed at IPL time. Assuming that you have chosen OSD1 as your OSDI subsystem name and that the subsystem parameter file is member OSD1SVG of the data set OSDI8.ORA817.PARMLIB, an appropriate IEFSSNxx entry in the new format would be similar to the following: SUBSYS SUBNAME(OSDI) INITRTN(ORASSINI) INITPARM(‘OSDI8.ORA817.PARMLIB(OSD1SVG)’) 7.7 Changing the number of address spaces to add more users If you want to change the number of address spaces, modify the entry INTADSPC in OSDI8.ORA817.PARMLIB(ORACPARM): DEDICATED_TCB(NO) SERVER_LOADMOD(ORACLE) LE_TRAP(NO) INTSTKSZ(128K) INTADSPC(2) MAXSESS(1024) The number of users per address space depends on your application characteristics. You should monitor the available memory. When it crosses an established threshold, you should increase the number of address spaces. With some testing of your environment, you should be able to determine the number of users that can run per address space. You can then set the MAXSESSIONS parameter to ensure that you never reach the limit of the number of users per address space. This is described in the performance chapter in Oracle8i for OS/390 with OSDI, System Administartors Guide, A85482-1. Additional address spaces can be started dynamically. This is described in the section Starting and Stopping the Database Service in Chapter 5 of Oracle8i for OS/390 with OSDI, System Administartors Guide, A85482-1. 7.8 Setting up access to remote databases We set up our system to access a remote database using SQL*Plus from the TSO command line by following these steps: 1. We created a TNSNAMES member in OSDI8.ORA817.PARMLIB called TNSNAMES: DENNY = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = 9.97.34.116) 62 Experiences Installing Oracle R3 (8.1.7) for OS/390 (PORT = 1521) ) ) (CONNECT_DATA=(SID=ORCL)) MPM8 ) = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP) (HOST = 9.12.2.10) (PORT = 1523) ) (CONNECT_DATA=(SID=MPM8)) ) Notice that we included the SID parameter. 2. We issued two ALLOC commands: ALLOC F(TNS@NET1) DUMMY ALLOC F(TNSNAMES) DA(‘OSDI8.ORA817.PARMLIB(TNSNAMES)’) 3. To connect to the database, we issued this command: SQLPLUS SCOTT/TIGER@DENNY 4. When we logged off, we had to issue the FREE commands: FREE F(TNNAMES) FREE F(TNS@NET1) 7.9 Creating a second instance These are the steps to set up your secondary ORACLE instance (service): 1. Determine whether you want to create a new subsystem (service group) or add OSD2 as another service in the current subsystem, which is what we decided to do. Add the following to OSDI8.ORA817.PARMLIB(SSORT1): DEF SRV OSD2 PROC(OSD2ORA) JOBNAME(OSD2D*) MAXAS(256) DESC('Oracle Production Service) PARM('OSDI8.ORA817.PARMLIB(OSD2PARM)') SID(OSD2) MAXAS can be 1-256 to define how many address spaces you want this service to be able to start. 2. Create PARMLIB member OSD2PARM: SERVER_LOADMOD(ORACLE) INIT_ADR_SPACES(1) MAX_SESSIONS(1024) INIT_STACK_SIZE(256K) INIT_ADR_SPACES can be from 1 to the number of MAXAS INIT_STACK_SIZE is set to 256K for JAVA 3. Set up RACF rules for the address space that will be started. In our case, this was OSD2ORA. 4. Set up VSAM files. Determine the sizes and locations for all VSAM files you want to create for OSD2 (logs, control files, system files, user files, etc.). You can allocate a minimum of 2 logs, but you may choose to have more. Chapter 7. Operational considerations 63 Copy OSD1JB00 from INSTLIB to OSD2JB00 and modify it to reflect your new VSAM files. This contains the IDCAMS delete and define statements for the data files. 5. Create new PARMLIB members for OSD2. Copy OSD1INIT to OSD2INIT. This is your init.ora for the new database. At a minimum, change DB_NAME from OSD1 to OSD2. Make other changes you determine need to be made. 6. Create a proc for the service. Copy OSD1ORA to OSD2ORA, change OSD1FPS to OSD2FPS in the proc, and change the procname to OSD2ORA in the first line. 7. Set up the service name of OSD2. OSD1 DEF SRV OSD2 PROC(OSD2ORA) JOBNAME(OSD2P1D*) MAXAS(256) PARM('OSDi8.ORA817.PARMLIB(OSD2PARM)') SID(OSD2) This is all in one command line in SDSF to add the service. 8. Issue the command to start the OSD2 instance: OSD1 START OSD2 9. Copy OSD1JD00 to OSD2JD00 in OSDI8.ORA817.INSTLIB. Then: • Modify OSD2JD00 to reflect the new database files (create statements, etc.). • Change //ORA@OSD1 DD DUMMY to //ORA@OSD2 DD DUMMY. This job will start the instance and initialize the database files. 10.Copy OSD1JD01 to OSD2JD01 in OSDI8.ORA817.INSTLIB. Change //ORA@OSD1 DD DUMMY to //ORA@OSD2 DD DUMMY. This adds Java support. 11.Copy OSD1JE00 to OSD2JE00. This adds help for SQLPLUS to the database. Change //ORA@OSD1 DD DUMMY to //ORA@OSD2 DD DUMMY. 12.Copy OSD1JF00 to OSD2JF00. This installs the Scott/Tiger test system. Change //ORA@OSD1 DD DUMMY to //ORA@OSD2 DD DUMMY. 13.Optional jobs: Copy OSD1JG00 to OSD2JG00 - adds spatial support to the database. Copy OSD1JH00 to OSD2JH00 - adds interMEDIA text to the database. Copy OSD1JI00 to OSD2JI00 - adds reports to the database. Copy OSD1JI02 to OSD2JI02 to verify reports install. In all these change //ORA@OSD1 DD DUMMY to //ORA@OSD2 DD DUMMY. 14.Create startup and shutdown jobs for the new instance. You do not need a new Net8. The new database can use the same one and access it using the SID name. You can alternatively add a new subsystem with a new Net8 and OSDI procs. 64 Experiences Installing Oracle R3 (8.1.7) for OS/390 7.10 Installing the Intelligent Agent In the USS directory /orauss that was created in stage 3 there is a script that has to be run to set up the Intelligent Agent on USS. In OMVS, we issued the following commands: cd /orauss customize.sh This is covered in Chapter 6, “Installing the Intelligent Agent” on page 49. 7.10.1 Hostname command The Intelligent Agent may require you to be able to execute the hostname command, which is not part of UNIX Systems Services. The following program will create the hostname command for UNIX System Services. Unlike the hostname command on some other Posix superset platforms, this version does not support setting the hostname. Setting the hostname is specific to each AF_INET PFS. This hostname command does not currently support binding to a specific PFS via an environment variable or any other mechanism. Using the hostname command Enter hostname to display the full hostname with domain name (if specified to the transport driver). Enter hostname -s to see just the host name, without the domain name. You could use your host name in your shell prompt as follows (optimized for speed): • In your shell profile, use something like the following to set the HOSTNAME environment variable: export HOSTNAME=`hostname -s` export HOSTNAME=’hostname -s’ Note that the quote marks are backward quote marks, so that "hostname -s" "hostname -s" is first executed and then HOSTNAME is set to the output of "hostname -s" • In your shell profile, use something like the following to put the hostname in your shell prompt: export PS1="$HOSTNAME:$LOGNAME:$PWD: >" • To build the hostname command, compile it from the shell with the c89 command: c89 -o hostname hostname.c Chapter 7. Operational considerations 65 Note: Check that the HEAP value in the $_CEE_RUNOPTS variable does not have any value set. Source code for the hostname command Following is the source code that you can compile to produce the hostname command. #include <stdio.h> #include <string.h> #include <unistd.h> int main(int argc,char **argv) { char *dotpos; char hostname&lbrk.2000 &rbrk.; int dontPrintDomain = 0, rc = 0; if (argc == 2 && !strcmp(argv&lbrk.1&rbrk.,"-s")) dontPrintDomain = 1; else if (argc != 1) { fprintf(stderr, "Usage: %s &lbrk.-s&rbrk.¼n" "Specify ¼"-s¼" to print the host name without¼n" "the domain name.¼n", argv&lbrk.0&rbrk.); rc = 1; } if (!rc) { rc = gethostname(hostname,sizeof(hostname)); if (rc) { perror("gethostname"); rc = 1; } else { if (dontPrintDomain) { dotpos = strchr(hostname,'.'); if (dotpos) *dotpos = '¼0'; } printf("%s¼n",hostname); } } return rc; } This code was downloaded from the following Web site: http//www.s390.ibm.com/products/oe/bpxaltoy.html 66 Experiences Installing Oracle R3 (8.1.7) for OS/390 It should be placed in the /bin directory. 7.11 Upgrading an Oracle8 database from MPM to OSDI This section lists the steps we did during one conversion of an Oracle8 MPM database to an Oracle8 database with OSDI, and documents some miscellaneous experiences we had in the installation process. Chapter 5 of Oracle8i Enterprise Edition for OS/390 with OSDI Installation Guide, A85481-1 describes how to migrate an Oracle7 database to Oracle8 with OSDI and also how to convert an earlier Oracle8 database with MPM to Oracle8 with OSDI. There is also a migration chapter in the Oracle8i Enterprise Edition for OS/390 with OSDI System Administration Guide, A85482-1, for further information. To convert an existing Oracle8 MPM database to OSDI we executed the following steps: • Turn off archive mode. • Take a backup of the database, as you cannot go back. • Install the new Oracle8i OSDI libraries from the tape. • Execut the steps to APF-authorize the new AUTHLOAD library. • Put the definitions of ORARASC and ORANET8 into the SCHEDxx PPT member of SYS1.PARMLIB (see Install Guide pages 2-6). • Create new JCL members in SYS1.PROCLIB and authorize the jobnames in RACF. You may not have to authorize the jobnames. This is dependent on your security setup. • Define the subsystem in the IEFSSNxx member of SYS1.PARMLIB. • Add to the IEFSSN00 file. In Section 2.8 of the Oracle8i Enterprise Edition for OS/390 with OSDI System Administration Guide, A85482-1, it shows two ways to add entries describing the new subsystem, keyword and positional. This is a documentation bug. Oracle only works with the keyword definition. If your IEFSSN00 member is positional, you need to create a new member because OS/390 will not allow mixing positional and keyword in the same member. If you create a second member, say IEFSSN01, you need to update IEASYS00 as follows: SSN=(00,01) The system will now recognize both subsystem name members upon IPL. • Addd the service definitions to the SYS1.PARMLIB you pointed to in the subsystem definition. • Execute the SETSSI commands to enable the subsystem, or did an IPL. • Update the new INITORA member called OSDIINIT in the R8.1.7 PARMLIB, changing the setting to your liking. • Start the service by issuing /OSDI START ORA1, where OSDI is the subsystem and ORA1 is the database service. Chapter 7. Operational considerations 67 Start the database with this JCL: //jobcard //STARTUP EXEC ORADBA87,REGION=6M //ORA@ORA1 DD DUMMY //SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSIN DD * CONNECT INTERNAL STARTUP PFILE='your.PARMLIB(OSDIINIT)' EXIT /* • Run the SQL script to convert the data dictionary. The members you execute will depend on which version you are upgrading from. See the generic document ORACLE8i MIGRATION to determine which ones to execute. If the database is very large, you may have to create a very large RBS and vary it online, while varying the regular RBSs offline. • Run the scripts to identify the invalid objects (UTLRPT in the SQL library) and then run the job to compile the invalid objects. These steps may have to be repeated several times to remove all the invalid objects. You may want to run the job to identify the objects with the old database so that you will know how many invalid objects there were before you started. The compiles may be divided into several jobs if you want to run the compiles in a parallel mode. Now the database dictionary is converted to Oracle 8.1.7 with OSDI. • Shut down the database. • Run the IDCAMS ALTER statement to change the files to LINEAR. For each file, execute the statement: ALTER (dataset name) TYPE(linear) Run the utility to change your control files from MPM format to OSDI. This can be done in batch and run once for each control file. The JCL looks like this: //jobcard //CONVERT EXEC PBM=CFUTIL, // PARM='CVTFOROSDI name.of.your.control.file' //STEPLIB DD DISP=SHR,DSN=your.R817.CMDLOAD //ORA$LIB DD DISP=SHR,DSN=your.R817.MESG //SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* • Back up the database. • Start up the database. If you used one very large RBS, change it back to the regular ones. • Refresh any modules that are in the LINKPACK area. 68 Experiences Installing Oracle R3 (8.1.7) for OS/390 7.12 Adding to the IEFSSN00 file In Section 2.8 of the Oracle8i Enterprise Edition for OS/390 with OSDI System Administration Guide, A85482-1, it shows two ways to add an entry describing the new subsystem. Only the 2nd way of using positional parameters worked in our systems. 7.13 Using a data set to execute the SETSSI command To ensure that we had the correct spelling and formatting for the SETSSI command, we entered the data in a PDS member of a JCL.CNTL data set, then did a cut and paste into the command line of SDSF to avoid making any mistakes. 7.14 Using a data set to issue a batch command This is an example of how we issued a command in batch mode to define a second database service for the subsystem OSDI: //* //* BATCH EXECUTION OF OPERATING SYSTEM COMMAND. OSDI IS THE //* SUBSYSTEM. //* NOTICE THE * IN COLUMN 72 AND NEXT LINE STARTS IN COLUMN 16 //* NOTICE ALSO THE DOUBLE QUOTES. THESE THINGS ARE NECESSARY!!! //* //OSCMD EXEC PGM=IEFBR14 // COMMAND 'OSDI DEFINE SERVICE ORA2 TYPE(ORA8) PROC(ORAORA2) MAXAS(1) * // PARM(''TSJ6002.ORA817.PARMLIB(ORA2PARM)'')' Chapter 7. Operational considerations 69 70 Experiences Installing Oracle R3 (8.1.7) for OS/390 Appendix A. Table for your values Use this table to record the values you will use for your installation. Resource © Copyright IBM Corp. 2001 Value you will use Comment RACF user ID Your RACF user ID with OMVS access DASD for Oracle libraries For our test installation we only used two packs - you should spread your files over more volumes for production unless you are using ESS or RVA HFS The data set name allocated for your HFS for the USS directory Mount point For the HF in USS SMS Group Your storage class name Suffix Suffix for members in Proclib Proclib The Proclib you will use Linklib The LINKLIB you will use 3490 UNIT=TAPE did not work in our environment Database name The instance name Service IDs The service name for the database, Net8 and the service group HLQ for Oracle library files First and second qualifier for data set names - for example OSDI8.ORA817 Oracle products to install Determine which of the products to install. They are listed in Figure 12 on page 23. VSAM qualifiers First and second qualifier for data set names - for example OSD1.DBF for VSAM files for this database instance Number of address spaces 1 is sufficient for a test system Number of sessions per address space 1024 is the default 71 72 Experiences Installing Oracle R3 (8.1.7) for OS/390 Appendix B. Special notices This publication is intended to help those who are installing Oracle Release3 (8.1.7) for the first time. The information in this publication is not intended as the specification of any programming interfaces that are provided by Oracle for Oracle8i on OS/390. See the PUBLICATIONS section of the IBM Programming Announcement for OS/390 and Oracle publications for more information about what publications are considered to be product documentation. Information concerning Oracle's products was provided by Oracle. The material in this document has been produced by a joint effort between IBM and Oracle S/390 Specialists.The material herein is copyrighted by both IBM and Oracle. IBM makes no warranties regarding Oracle and other non-IBM products. IBM has not tested Oracle and other non-IBM products and cannot confirm the accuracy of perfromance, compatibility, or any other claims relative to non-IBM products. Questions on the capabilities of Oracle and non-IBM products should be addressed to the suppliers of those products. The information herein is provided as is. All warranties, express or implied, including the implied warranties of merchantability and fitness for a particular purpose and the warranty of noninfringement, are expressly excluded. References in this publication to IBM products, programs or services do not imply that IBM intends to make these available in all countries in which IBM operates. Any reference to an IBM product, program, or service is not intended to state or imply that only IBM's product, program, or service may be used. Any functionally equivalent program that does not infringe any of IBM's intellectual property rights may be used instead of the IBM product, program or service. Information in this book was developed in conjunction with use of the equipment specified, and is limited in application to those specific hardware and software products and levels. IBM may have patents or pending patent applications covering subject matter in this document. The furnishing of this document does not give you any license to these patents. You can send license inquiries, in writing, to the IBM Director of Licensing, IBM Corporation, North Castle Drive, Armonk, NY 10504-1785. Licensees of this program who wish to have information about it for the purpose of enabling: (i) the exchange of information between independently created programs and other programs (including this one) and (ii) the mutual use of the information which has been exchanged, should contact IBM Corporation, Dept. 600A, Mail Drop 1329, Somers, NY 10589 USA. Such information may be available, subject to appropriate terms and conditions, including in some cases, payment of a fee. The information contained in this document has not been submitted to any formal IBM test and is distributed AS IS. The use of this information or the implementation of any of these techniques is a customer responsibility and depends on the customer's ability to evaluate and integrate them into the customer's operational environment. While each item may have been reviewed by IBM for accuracy in a specific situation, there is no guarantee that the same or © Copyright IBM Corp. 2001 73 similar results will be obtained elsewhere. Customers attempting to adapt these techniques to their own environments do so at their own risk. Any pointers in this publication to external Web sites are provided for convenience only and do not in any manner serve as an endorsement of these Web sites. The following terms are trademarks of the International Business Machines Corporation in the United States and/or other countries: Redbooks Redbooks Logo IBM RACF RS/6000 â IBM ^ RMF System/390 S/390 The following terms are trademarks of other companies: Tivoli, Manage. Anything. Anywhere.,The Power To Manage., Anything. Anywhere.,TME, NetView, Cross-Site, Tivoli Ready, Tivoli Certified, Planet Tivoli, and Tivoli Enterprise are trademarks or registered trademarks of Tivoli Systems Inc., an IBM company, in the United States, other countries, or both. In Denmark, Tivoli is a trademark licensed from Kjøbenhavns Sommer - Tivoli A/S. C-bus is a trademark of Corollary, Inc. in the United States and/or other countries. Java and all Java-based trademarks and logos are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and/or other countries. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States and/or other countries. PC Direct is a trademark of Ziff Communications Company in the United States and/or other countries and is used by IBM Corporation under license. ActionMedia, LANDesk, MMX, Pentium and ProShare are trademarks of Intel Corporation in the United States and/or other countries. UNIX is a registered trademark in the United States and other countries licensed exclusively through The Open Group. SET, SET Secure Electronic Transaction, and the SET Logo are trademarks owned by SET Secure Electronic Transaction LLC. Other company, product, and service names may be trademarks or service marks of others. 74 Experiences Installing Oracle R3 (8.1.7) for OS/390 Appendix C. Related publications The publications listed in this section are considered particularly suitable for a more detailed discussion of the topics covered in this redbook. C.1 IBM Redbooks For information on ordering these publications see “How to get IBM Redbooks” on page 77. • Experiences with Migration of Oracle from UNIX to OS/390, SG24-4981 • Managing Oracle 8.1.7 on OS/390, SG24-5972 (currently available as a redpiece) C.2 IBM Redbooks collections Redbooks are also available on the following CD-ROMs. Click the CD-ROMs button at http://www.redbooks.ibm.com/ for information about all the CD-ROMs offered, updates and formats. CD-ROM Title System/390 Redbooks Collection Networking and Systems Management Redbooks Collection Transaction Processing and Data Management Redbooks Collection Lotus Redbooks Collection Tivoli Redbooks Collection AS/400 Redbooks Collection Netfinity Hardware and Software Redbooks Collection RS/6000 Redbooks Collection (BkMgr Format) RS/6000 Redbooks Collection (PDF Format) Application Development Redbooks Collection IBM Enterprise Storage and Systems Management Solutions Collection Kit Number SK2T-2177 SK2T-6022 SK2T-8038 SK2T-8039 SK2T-8044 SK2T-2849 SK2T-8046 SK2T-8040 SK2T-8043 SK2T-8037 SK3T-3694 C.3 Oracle Publications These publications are also relevant as further information sources and are available on METALINK or docs.oracle.com: • Oracle8i Enterprise Edition for OS/390 with OSDI Installation Guide, A85481-1 • Oracle8i Enterprise Edition for OS/390 with OSDI Messages Guide, A85187-1 • Oracle8i Enterprise Edition for OS/390 with OSDI System Administration Guide, A85482-1 • Oracle8i Enterprise Edition for OS/390 with OSDI User’s Guide, A85483-1 • Oracle8i Enterprise Edition for OS/390 Installation Guide, A86037-1 (for MPM) • Oracle8i Enterprise Edition for OS/390 Messages Guide, A86035-1 (for MPM) • Oracle8i Enterprise Edition for OS/390 Systems Administration Guide, A86038-1 (for MPM) • Oracle8i Enterprise Edition for OS/390 User’s Guide, A86036-1 (for MPM) © Copyright IBM Corp. 2001 75 C.4 Referenced Web sites These Web sites are also relevant as further information sources: • http://www.oracle.com/support/ • http://docs.oracle.com/ for publications • http://www.mvsoraclesig.org 76 Experiences Installing Oracle R3 (8.1.7) for OS/390 for Metalink for Oracle MVS Users group How to get IBM Redbooks This section explains how both customers and IBM employees can find out about IBM Redbooks, redpieces, and CD-ROMs. A form for ordering books and CD-ROMs by fax or e-mail is also provided. • Redbooks Web Site ibm.com/redbooks Search for, view, download, or order hardcopy/CD-ROM Redbooks from the Redbooks Web site. Also read redpieces and download additional materials (code samples or diskette/CD-ROM images) from this Redbooks site. Redpieces are Redbooks in progress; not all Redbooks become redpieces and sometimes just a few chapters will be published this way. The intent is to get the information out much quicker than the formal publishing process allows. • E-mail Orders Send orders by e-mail including information from the IBM Redbooks fax order form to: In United States or Canada Outside North America e-mail address pubscan@us.ibm.com Contact information is in the “How to Order” section at this site: http://www.elink.ibmlink.ibm.com/pbl/pbl • Telephone Orders United States (toll free) Canada (toll free) Outside North America 1-800-879-2755 1-800-IBM-4YOU Country coordinator phone number is in the “How to Order” section at this site: http://www.elink.ibmlink.ibm.com/pbl/pbl • Fax Orders United States (toll free) Canada Outside North America 1-800-445-9269 1-403-267-4455 Fax phone number is in the “How to Order” section at this site: http://www.elink.ibmlink.ibm.com/pbl/pbl This information was current at the time of publication, but is continually subject to change. The latest information may be found at the Redbooks Web site. IBM Intranet for Employees IBM employees may register for information on workshops, residencies, and Redbooks by accessing the IBM Intranet Web site at http://w3.itso.ibm.com/ and clicking the ITSO Mailing List button. Look in the Materials repository for workshops, presentations, papers, and Web pages developed and written by the ITSO technical professionals; click the Additional Materials button. Employees may access MyNews at http://w3.ibm.com/ for redbook, residency, and workshop announcements. © Copyright IBM Corp. 2001 77 IBM Redbooks fax order form Please send me the following: Title Order Number First name Last name Company Address City Postal code Country Telephone number Telefax number VAT number Card issued to Signature Invoice to customer number Credit card number Credit card expiration date We accept American Express, Diners, Eurocard, Master Card, and Visa. Payment by credit card not available in all countries. Signature mandatory for credit card payment. 78 Experiences Installing Oracle R3 (8.1.7) for OS/390 Quantity Index A address space 2 AFP-authorize 8 alias 19 allocate 29, 45 APF 14 APF authorization 14, 15 B BPXPRM00 12 C C compiler 2 changing the permissions of the HFS D Data Gatherer DCB 18 49 P PDASD 18 PDVOL 18 PPT 8 H HFS 8 HFS files 12 installation on OS/390 17, 33 Oracle database customization 19, 33 customization job 27, 41 installation dialog 21, 34 installation library 42 primary option menu 21, 34 product selection 27, 41 Oracle Enterprise Manager 4 Oracle Intelligent Agent 49 Oracle8i 3 ORDJA01 8 ORIJA01 8, 28 ORIJD00 29 OSD1INIT 46 OSD1JD00 45 OSD1JD01 45 OSD1JDOO 45 OSDI 1 12 R I IBM Language Environment 3 IEASYSxx 15 INDEX 18 installation Oracle Database 17, 33 Intelligent Agent 4, 9, 65 IPL 14 ish command 11 ISPF 17, 18, 19, 20, 33 ISPF libraries 8 RACF 44 Run 28, 42 S SDSF 17 security rules 8 SETSSI 8, 44 SMP/E 17, 20, 33 SQL*loader 3 T TDASD 18 tnsnames.ora TPUNIT 18 TPVOL 18 TSO 17, 20 J JCL 17, 18, 19 JOB card 18 51 M mount point 12 U UNIX Systems Services usercatalog 19 USS 3, 8 N Note 45 W O OEM 4 Oracle C/C++ precompiler Oracle Database allocate 45 build options 46 © Copyright IBM Corp. 2001 3 3 WLM 3 Workload Manager 3 79 80 Experiences Installing Oracle R3 (8.1.7) for OS/390 IBM Redbooks review Your feedback is valued by the Redbook authors. In particular we are interested in situations where a Redbook "made the difference" in a task or problem you encountered. Using one of the following methods, please review the Redbook, addressing value, subject matter, structure, depth and quality as appropriate. • Use the online Contact us review redbook form found at ibm.com/redbooks • Fax this form to: USA International Access Code + 1 845 432 8264 • Send your comments in an Internet note to redbook@us.ibm.com Document Number Redbook Title SG24-5973-00 Experiences Installing Oracle R3 (8.1.7) for OS/390 with OSDI Review What other subjects would you like to see IBM Redbooks address? Please rate your overall satisfaction: O Very Good O Good O Average Please identify yourself as belonging to one of the following groups: O Customer O Business Partner O Solution Developer O IBM, Lotus or Tivoli Employee O None of the above O Poor Your email address: The data you provide here may be used to provide you with information from IBM or our business partners about our products, services or activities. O Please do not use the information collected here for future marketing or promotional contacts or other communications beyond the scope of this transaction. Questions about IBM’s privacy policy? The following link explains how we protect your personal information. ibm.com/privacy/yourprivacy/ © Copyright IBM Corp. 2001 81 Experiences Installing Oracle R3 (8.1.7) for OS/390 (0.2”spine) 0.17”<->0.473” 90<->249 pages ® Experiences Installing Oracle R3 (8.1.7) for OS/390 Overview of the new OSDI architecture Installation experiences with the new install process Particularly useful for first-time installers This IBM Redbook will help you install Oracle8i Release 3 for OS/390 with OSDI. It describes experiences with the installing of the new OSDI version. It will be especially useful for those installing Oracle8i on OS/390 with OSDI for the first time. It also includes an appendix on the installation of Oracle 8.1.7 with MPM. The book is based on experiences gained during installations at the following sites: IBM/Oracle EMEA Joint Solution Center, Montpellier, France IBM/Oracle International Competency Center, San Mateo, California IBM ITSO S/390 Center in Poughkeepsie, New York Oracle’s Advanced Technology Center, Reston, Virginia INTERNATIONAL TECHNICAL SUPPORT ORGANIZATION BUILDING TECHNICAL INFORMATION BASED ON PRACTICAL EXPERIENCE IBM Redbooks are developed by the IBM International Technical Support Organization. Experts from IBM, Customers and Partners from around the world create timely technical information based on realistic scenarios. Specific recommendations are provided to help you implement IT solutions more effectively in your environment. For more information: ibm.com/redbooks SG24-5973-00 ISBN 0738418404