Skip Headers

Oracle9i Database New Features
Release 2 (9.2)

Part Number A96531-02
Go to Documentation Home
Go to Book List
Book List
Go to Table of Contents
Go to Index
Go to Master Index
Master Index
Go to Feedback page

Go to previous page Go to next page
View PDF

Oracle9i Database Release 1 (9.0.1) New Features

The Oracle9i Database contains important new features that make it possible for users to maximize the usefulness of traditional business applications, facilitate critical competitive advantages for Internet-based business, and foster growth in the emerging hosted application market. These new features include new transparent, rapid growth clustering capabilities along with powerful and cost-effective security measures, zero-data-loss safeguards, and real-time intelligence, all to deliver the power needed in today's dynamic marketplace.

This chapter discusses features new to the Oracle9i database release 1 (9.0.1). This chapter is organized to introduce new features listed in accordance with the following themes:

Development Platform

Oracle9i continues to offer the best development platform for e-business and traditional application development. Key focus areas include the following:

Enterprise Java Engine

Oracle9i JVM (previously JServer) extends its support for Java 2 Enterprise Edition application programming interfaces (APIs) and containers by means of the following new features:

Extensible Markup Language New Features

Extensible Markup Language (XML) is designed to improve the functionality of the Web by providing more flexible and adaptable information identification. It is called extensible because it is not a fixed format like HTML (a single, predefined markup language). Instead, XML is actually a meta-language--that is, a language for describing other languages--which lets you design your own customized markup languages for limitlessly different types of documents.

Key enhancements in Oracle9i include the following:


XML Generation

Arrive Data Types


XMLType natively stores XML content and enables XML operations to be run from SQL.

XMLType enables non-native XML data to be treated as XML by allowing users to create an XML view over standard database tables, documents, or web content. Thus, the same high-performance access to XML data is available whether data is natively XML or is an artifact generated from existing data.

XML Generation

To more efficiently generate XML in bulk from a database, XML generation capabilities have been moved into the database and application server kernels and have been made available as built-in SQL operators. The kernel proximity of these operators ensures massively sustainable throughputs that are large enough to meet the processing demands of the largest content repositories or the busiest exchanges.

Arrive Data Types

A universal content model for all kinds of data and documents can be created through a set of native Arrive data types, which can hold references to XML documents or fragments either inside or outside the database. Just as applications locate HTML files using a uniform resource locator (URL), a set of native Arrive data types can locate native or generated XML content inside or outside of the database. Universal resource identifier references play a major role in creating database-backed content repositories, which in turn can be used to feed portals, archives, or other content management systems.

See Also:

Oracle9i XML Database Developer's Guide - Oracle XML DB

Oracle XML Developer's Kit

Oracle9i features several enhanced database operations to store XML using SQL and to render traditional database data as XML. These functionalities are required to support business-to-business and business-to-customer e-business, packaged applications, and internet content management. The main area of XML support in Oracle9i is built-in XML Developer Kits (XDKs).

With pre-loaded Java and the C XDK linked into Oracle9i, developers are easily able to access World-Wide-Web Consortium (W3C) functionalities that generate, manipulate, render, and store XML-formatted data in Oracle9i. Also available in PL/SQL and C++, XML developer kits provide XML/XSLT parsers, XML schema processors, XML Class Generators, XML Transviewer Beans, and the XSQL Servlet to allow developers to quickly enable their applications for XML.

See Also:

SQL and PL/SQL Improvements

SQL and PL/SQL have continued to be improved in Oracle9i to meet current development requirements.

Key enhancements in Oracle9i include the following:

SQL Improvements

The following datatypes are new for Oracle9i:

XMLType, native XML datatype
SYS.UriType, SYS.UriFactoryType
SYS.ANYType, SYS.AnyData, SYS.AnyDataSet
MDSYS.SDO_GEOMETRY, new spatial datatype
ORDSYS.ORDImage - media type
ORDSYS.ORDVideo - media type
ORDSYS.ORDAudio - media type

The following built-in SQL functions are new for Oracle9i:

EXTRACT (datetime)
TO_CHAR (character)

The following built-in SQL expressions are new for Oracle9i:

datetime expressions
interval expressions
scalar subquery expressions

The following built-in SQL condition is new for Oracle9i:

IS OF type condition

The following top-level SQL statements are new for Oracle9i:


User-Defined Aggregate Functions

Custom aggregate functions can be defined for working with complex data.

See Also:

Oracle9i SQL Reference

PL/SQL Improvements

Oracle9i includes a PL/SQL package, DBMS_METADATA, which provides interfaces for extracting complete definitions of database objects. The definitions can be expressed either as XML or as SQL data definition language (DDL). The following two styles of interface are provided:

Other technological advances to PL/SQL include the following new features:

Generic and Transient Datatypes

External procedures can be given fields or parameters of a generic type that can contain values of any scalar or user-defined type, making it unnecessary to implement multiple versions of the same external procedure just to handle multiple datatypes.

See Also:

PL/SQL User's Guide and Reference

SQL Type Inheritance

Specialized versions of user-defined types can be defined as subtypes in a SQL type hierarchy.

See Also:

Oracle9i SQL Reference.

Object View Hierarchies

Hierarchies can be created of object views based on some or all of the types in a type hierarchy. Object view hierarchies simplify targeting a particular subtype (and perhaps its subtypes) in queries and other operations.

See Also:

Oracle9i Application Developer's Guide - Object-Relational Features

Oracle Text

Oracle Text, formerly interMedia Text, includes the following new features to provide greater flexibility in building text query applications.

Internet Content Management

Oracle9i enables customers to store, manage and aggregate all types of multimedia content into a single database by significantly enhancing the capabilities of the database to serve as a platform for creating, managing, and delivering internet content. Key focus areas include the following:

Storage, Management, and Aggregation for All Types of Content

Oracle9i includes enhancements to interMedia image, audio, and video support. Oracle9i greatly simplifies the ability to add multimedia formats, processing, and rendering by incorporating Java Advanced Imaging (JAI) into the database and providing support for the Java Media Framework (JMF) in interMedia. Also, interMedia now supports PNG and EXIF image formats.

A browser-based version of the clipboard supports insert, retrieve and annotate media objects in Oracle9i. Improvements to the image search capabilities and support for storage and delivery of streaming media with new streaming formats and plug-ins are also part of Oracle9i. In addition, interMedia's audio, video, and image media processing services are now accessible in native form through relational PL/SQL and JAVA interfaces.

See Also:

Oracle interMedia User's Guide and Reference

Efficient Searching and Indexing over All Types of Content

Oracle9i provides powerful Internet search facilities to extract and index metadata from rich content and to search XML and catalog structures. Now, all content in Oracle9i can be location-enabled and mobile-ready so that it can be searched and delivered according to from where the request is originating--such as mobile phone and internet personalization criteria--or its location association.

Key enhancements in Oracle9i include the following:

Oracle Ultra Search

Unlike other search engines, Oracle Ultra Search is able both to search the contents of a database to find documents, newspaper articles, and other information stored inside a database and to search the contents of static HTML pages. (Other search engines can merely search the content of static HTML pages.) Oracle Ultra Search enables you to search across heterogeneous corporate repositories, Web sites, and groupware content all in the same search. Oracle Ultra Search also provides a unified interface for enterprise and vertical portal search applications, which interface includes a Web interface, Web crawling, and search administration facilities.

See Also:

Oracle Ultra Search Online Documentation

Oracle Text

Improved in Oracle9i to meet the needs of e-business applications, Oracle Text indexing in uses a new indextype to perform very fast searches across volumes of short textual descriptions. This functionality is ideal for facilitating faster catalog, metadata, auction data, and resume searches. In Oracle9i, text searches of nested XML elements, search attribute values, XPath query syntax, and other advanced XML structures are also all supported.

See Also:

Oracle Text Reference

interMedia Annotator

Media and document metadata can be extracted, indexed, and mapped to XML documents or database schema through Java application programming interfaces (APIs) available through the interMedia Annotator. These APIs allow for programmatic invocation of metadata services by any application or scripting language that can use Java APIs, including JAVAscript, VBscript, and Apple Script.

See Also:

Oracle interMedia Annotator User's Guide

Collaborative Projects

Oracle9i provides organizations with the ability to create shared workspaces to support collaborative, long-duration projects. Workspaces support in-place, existing content and allow existing applications to run transparently against the workspace view of the database. Database content can be associated within a workspace and then used for a specific application while the underlying transaction database continues to run without being affected. Multiple, concurrent database-backed projects can coexist simultaneously against different versions of content.

See Also:

Oracle9i Application Developer's Guide - Workspace Manager

Location-Enabled, Mobile-Ready Content

For e-business and mobile applications, Oracle9i and Oracle Spatial provide users with the ability to search, to index, and to deliver data based on the location attributes of content or proximity.

Support for mobile device protocols (WAP) and formats--such as WBMP--along with delivery through Oracle iAS Wireless (formerly Portal-to-Go) make Oracle9i a complete platform for the delivery of content for mobile applications. Content stored in Oracle9i can now be associated with related location criteria and services.

Interactive Voice Response (IVR) formats used in mobile applications are now supported in interMedia. New support for online mapping, yellow pages, driving directions, traffic, and geocoding services allow online content to be merged with database content.

See Also:


iSQL*Plus, a browser-based implementation of SQL*Plus, can be used to connect to an Oracle database system over the Internet to perform the same tasks as those that are performed through the SQL*Plus command line. The iSQL*Plus implementation uses a Web browser, an Oracle HTTP Server with the iSQL*Plus Server, and an Oracle Database.

See Also:

Oracle iSQL*Plus documentation


Oracle9i extends Oracle's lead on the competition in the area of internet database availability that is critical for any e-business application. Key focus areas in Oracle9i include the following:

Enhanced Disaster Recovery Environment

Oracle9i sets a new standard for high availability by the introduction of the following four powerful new features to protect against downtime.

Disaster Recovery

Oracle9i offers many new features for disaster recovery. Key focus areas include the following new features:

Data Guard Monitoring and Automation

The Oracle9i Data Guard Broker introduces an important advance in physical standby database management with Data Guard Redo Apply by automating monitoring and control features. Previously, switching to the standby database had been a highly complex administrative task, and switching back had been very difficult. Data Guard Redo Apply now presents a primary database system and its physical standby system as one environment, thus unifying configuration, monitoring and control. Oracle9i Data Guard continually monitors both the primary and standby databases.

See Also:

Oracle9i Data Guard Broker

Zero Data Loss Log Transport

Oracle9i Data Guard maintains a physical standby database that protects against any loss of data during log transport. Log file updates are synchronously written directly from the primary database to the physically identical standby database, making it fully up-to-date at the point of failure in any disaster recovery situation. During log file updates, only log entries for the current transaction are stopped, instead of the entire log file. This disaster recovery solution makes third-party products that mirror online redo logs redundant.

See Also:

Oracle9i Data Guard Installation and Deployment

Delayed Mode

Delayed mode guards against database administrator mistakes by enabling a time lag that protects against the application of corrupted or erroneous data from the primary database to the physical standby database. Under most circumstances, Data Guard Redo Apply automatically applies achieved redo logs by default when they arrive from the primary database. Delayed mode bypasses this default to protect data in the standby database.

See Also:

Oracle9i Data Guard Concepts and Administration


LogMiner provides information necessary for performing recovery operations, tuning, and capacity planning. The Oracle9i LogMiner utility makes it possible to query both online and archived redo log files through a SQL interface in real time. LogMiner provides optional tracking of data definition language (DDL) statements, the ability to limit queries to committed transactions, and the ability to perform queries based on actual data values. Log Miner also supports a multi-versioned dictionary.

LogMiner has also been enhanced in Oracle9i to provide comprehensive log analysis for additional datatypes. LogMiner now supports the following functionalities:

LogMiner also displays the primary key and supports queries on the logs based on the content of changes. (This is useful, for example, in the hypothetical situation where you want to show all changes to an employee named Smith.)

Oracle9i LogMiner Viewer

A component of Oracle Enterprise Manager, the Oracle LogMiner Viewer provides users with an easy-to-use graphical user interface (GUI) to the Oracle9i LogMiner. The LogMiner GUI may be used to query online and archived redo log files to analyze the activity that has taken place in a database. Users can select redo log files, specify filters to be applied to the data, view query results and save the query and results for future use.

See Also:

Oracle9i Database Administrator's Guide

System Fault Recovery

Oracle9i provides fast recovery with products improved by the following new features:

Real Application Clusters: Within-seconds Failover

Real Application Clusters provides improved availability as compared to single-node configurations by eliminating the server as a single point of failure. For example, in a two-node cluster configuration where the primary node fails, the applications from that node automatically fail over to the surviving node--sometimes within seconds. With Real Application Clusters, failover minimizes the adverse effects of node failure on application processing and data availability.

Real Application Clusters Guard I

Real Application Clusters Guard I, formerly Oracle Application Clusters Guard, is an enhanced configuration of Oracle9i Real Application Clusters. It tightly integrates enhanced recovery features with the cluster framework of the platform to provide a configuration that leverages the best high-availability technology each partner has to offer.

The Real Application Clusters Guard I architecture is designed to build on the strengths of traditional high-availability solutions and provides the following functionality:

Oracle9i Fail Safe: Four-Node Failover

Oracle9i Fail Safe Configuration for Windows provides the high availability and protection from system failures that e-businesses demand on Windows NT and Windows 2000 clustered architectures. Oracle9i Fail Safe provides failover processes for database and application servers in both 2- and 4-node Windows NT and Windows 2000 clusters.

See Also:
Fast-Start Fault Recovery

Oracle9i introduces an enhancement to Fast-Start Fault Recovery that enables database administrators to specify the expected amount of time Oracle takes to recover a single instance, also known as the expected mean time to recover (MTTR).

Fast Instance Freeze and Resume

A common dilemma that has faced database administrators is that of whether to identify the cause of a failure or to ensure that normal service is restored as quickly as possible. By invoking Flash Freeze, the database administrator can take a diagnostic snapshot of the entire system at the time of failure, quickly restart the database, and then make a diagnostic analysis offline.

See Also:

Oracle9i Database Administrator's Guide

User Error Safeguards

Oracle9i eases the challenge of failures or downtime due to user errors, including erroneous or out-of-sequence updates.

Oracle9i Flashback Query

Oracle9i Flashback Query lets users and applications query data from points in the past. Using this flashback parameter, a user can specify a date and time for the data and then issue standard queries on the data as it appeared at the specified time.

Comprehensive Log Analysis

Identification of updates is also achieved by analysis of the database log files. Oracle9i LogMiner is a utility that enables log files, whether online or archived, to be read, analyzed, and interpreted with a SQL interface. By using Oracle9i LogMiner, database administrators can now examine all updates to the database, including all data manipulation, definition, and administration commands.

Resumable Space Allocation

Certain large, long-running operations such as data uploads and complex update processes may run out of resources (disk space, for example) prior to completion. Unsuccessful completion can be time-consuming to resolve. Oracle9i addresses this challenge by enabling database administrators to suspend operations that cannot be completed. Once the operation has been suspended, the database administrator can resolve the resource issue and then allow the statement to resume from the point of interruption.

See Also:

Oracle9i Database Administrator's Guide

Planned Downtime

Oracle9i enables comprehensive planned maintenance operations, which previously required downtime, to run during normal usage.

Online Schema Changes

Oracle9i provides the mechanism to redefine table structures while keeping them online and fully accessible to users and applications.

Online Table and Index Reorganization

Oracle9i provides a simple mechanism to reorganize and redefine tables while keeping them online and available to application users. Oracle9i online table and index reorganization reduces planned downtime, increases application availability, reduces disk fragmentation, and improves application performance.

Complete Online Index Operations

With Oracle9i, all table indexes can be created and re-created online. With this capability, users can continue to run their applications during table index creation.

Dynamic Database Parameters

Oracle9i database parameter settings that affect Database memory use can now be reset online. This enables the database administrator to reset parameter settings without having to take the databases offline and then restart them.

See Also:

Oracle9i Database Administrator's Guide

Online Data Evolution

Oracle9i contains a new online reorganization and redefinition architecture that enables powerful new reorganization capabilities. Administrators can now perform a variety of online operations to table definitions, including online reorganization of heap-organized tables, thus making it possible to reorganize a table at the same time that users have full access to it. Key focus areas include the following new features:

New Online Architecture

Oracle9i now enables an online CREATE TABLE AS SELECT operation. In this new architecture, contents of a table are copied into a new table. While the contents are copied, updates to the original table are tracked by the database. After the copy is made, updates are applied to the new table.

After the updates are applied, indexes can be created on the new table. After indexes are created, any additional updates are applied and the resulting table replaces the original table. The table is locked in exclusive mode for a very brief period of time when the dictionary data is updated at the beginning and end of an operation.

This new online architecture provides the following functionalities:

Other New Capabilities

Administrators can also rapidly quiesce the database to perform operations that require that there be no active transactions. Also, with Oracle9i, the buffer cache and the shared pool can be resized dynamically. Oracle9i can also validate the structure of an object (ANALYZE VALIDATE) while the object is online and accessed by users.

See Also:

Precision Database Repair

Oracle9i includes improved prevention and handling of log file corruption, thus reducing the risk of extended downtimes. It is also able to restore the database to a consistent state when log corruption is detected during recovery. If corruption needs to be repaired through media recovery, a new block media recovery feature enables only the corrupt blocks to be recovered while the remainder of the table is online. These improvements include the following new features:

Rapid Crash Recovery

Oracle9i can recover from crashes more quickly than in previous releases with a new two-pass recovery algorithm that ensures that only the blocks that need to be processed are read from and written to the datafiles. A new time-based mean time to recover (MTTR) parameter also makes it much easier to set a limit on crash recovery time.

Improved Failed State Diagnostics

Oracle9i includes improved diagnosis of a failed instance and enables diagnostics to be read after recovery on the failed state. This helps diagnose the cause of the failure after its first occurrence, rather than requiring users to set events that capture data in future failures.

Faster Failure Detection

For multi-node systems, Oracle9i provides faster failure detection--for instance, node and network failures--and reconfiguration for Oracle9i Real Application Clusters, reducing downtime due to a system fault.

Oracle Fail Safe Enhancements

Oracle Fail Safe Configuration for Windows provides the high availability and protection from system failures that e-businesses need to take advantage of multi-node clusters with the enhanced functionality of Windows 2000. This allows for configurations where multiple databases on multiple nodes share a common backup node, reducing the cost of providing redundancy to multiple applications.

See Also:

Advanced Replication

Advanced Replication, formerly known simply as Replication, includes the following new features:


Oracle9i systems management is simplified and improved with increased self-management and self-tuning capabilities. Also, Oracle9i integrated system management tools create a complete view of all database and host critical processes, making it possible to quickly and completely assess the overall health of an e-business infrastructure.

Oracle9i management advances include the following features:

Database Self-Management

Oracle9i includes several new features that make the Database more autonomous and self-managing. For example, new features such as automatic undo management, automatic SQL execution memory management, and automatic segment-space management enable database administrators to delegate many daily administrative tasks to the server itself.

Key enhancements in Oracle9i include the following:

Automatic Undo Management

Oracle9i databases are capable of managing their own undo (rollback) segments. Administrators no longer need to carefully plan and tune the number and sizes of rollback segments or to decide strategically how to assign transactions to a particular rollback segment. Oracle9i also enables administrators to allocate their undo space in a single undo tablespace with the database taking care of issues such as undo block contention, consistent read retention, and space utilization.

See Also:

Oracle9i Database Administrator's Guide

Memory Management

Memory management is another area which has been given significant attention in Oracle9i. Traditionally, administrators have needed to shut down the instance in order to grow or shrink System Global Area (SGA) components. Oracle9i introduces a dynamic memory management feature that enables dynamic resizing of the buffer cache and shared pool. A buffer cache size advice mechanism that predicts the performance of running with different sizes for the buffer cache is also available with Oracle Enterprise Manager.

See Also:

Oracle9i Database Administrator's Guide

Automatic SQL Execution Memory Management

Oracle9i provides transparent management of working memory for SQL execution by self-tuning the initialization runtime parameters that control allocation of private memory. This feature enables low-end users to reduce the time and effort required to tune memory parameters for their data warehouse and their reporting applications, while high-end users are able to avoid memory tuning for individual work loads.

See Also:

Oracle9i Database Performance Tuning Guide and Reference

Automatic Segment-Space Management

Oracle9i provides transparent management of segment space in the Oracle database. With automatic segment-space management, you use bitmaps, which describe the status of each data block within a segment with respect to the amount of space in the block available for inserting rows, to enable Oracle to automatically manage the free space in the segments.

See Also:

Oracle9i Database Performance Tuning Guide and Reference

Streamlined Operational Database Management

Several new features simplify administration of the Oracle9i database.

Key enhancements in Oracle9i include the following:

Server Parameter File

With the introduction of the server parameter file feature, server parameter file changes persist across database shutdowns and startups. This feature also enables the administrator to start the database from remote machines without a local copy of the server parameter file. This facilitates database performance tuning because parameter changes made by performance management tools such as Oracle Enterprise Manager and changes made by internal self-tuning now persist across shutdowns.

Database Configuration Assistant

The Database Configuration Assistant has been redesigned to include saved definitions of existing databases in the form of templates provided by Oracle that can, in turn, be used to generate new databases. Users can create their own templates by modifying existing templates, defining new ones, or by capturing the definition of an existing database.

When creating a database with the Database Configuration Assistant, users can include Oracle Sample Schemas at database creation or can add these schemas later as an option. Oracle Sample Schemas are the basis for many of the examples used in Oracle documentation.

Oracle-Managed Files

Oracle9i introduces Oracle-managed files. This simplifies database administration by removing the necessity that administrators directly manage the files that make up an Oracle database. Instead, Oracle9i uses internal standard file system interfaces to create and delete files as needed. While administrators must still be involved in space planning and administration, Oracle-managed files automates the routine tasks of creating and deleting database files. Operating system files associated with a temporary file also can be deleted.


With the introduction of default temporary tablespace, the SYSTEM tablespace is no longer used as the default storage location for temporary data.

Resumable Space Allocation

Resumable Space Allocation, another feature introduced in Oracle9i, enables an administrator temporarily to suspend a large operation, such as a batch update or data load, if they start to encounter out-of-space errors. This enables the administrator to fix the problem and resume the operation from the point of interruption without disrupting normal database operation.

Corresponding Sub-Cache Configuration

Oracle9i supports databases created with multiple block sizes and enables administrators to configure corresponding sub-caches within each alternative block size. This capability enables administrators to locate objects in tablespaces of appropriate block size in order to maximize I/O performance. It also enables administrators to transport tablespaces more easily between different databases (for example, from an OLTP environment to a data warehousing environment).

Mean Time to Recover (MTTR) Specification

Oracle9i also provides for better control over database downtime by enabling administrators to specify in number of seconds the mean time to recover (MTTR) from system failures. This feature, coupled with more dynamic initialization parameters, helps administrators further improve database availability.

SQL Queryable Through V$SQL_PLAN View

The execution plan of a SQL statement in the shared pool is now queryable through the view V$SQL_PLAN. The data contained within this view is similar to that of EXPLAIN PLAN; the difference is that EXPLAIN PLAN shows a theoretical plan should the statement be executed, whereas V$SQL_PLAN shows the actual plan used to execute the statement.

Parameter Changes Persist Across Shutdowns

Database administration is simplified because parameter changes made through performance management tools--such as Oracle Enterprise Manager--and changes made by internal self-tuning parameters now persist across shutdowns.

See Also:

Enhanced Recovery Manager Performance

To ease backup and recovery operations, Recovery Manager (RMAN) in Oracle9i provides the following new features:

Key enhancements in Oracle9i include the following:

Persistent RMAN Configuration

Oracle9i introduces many new features and enhancements that increase manageability and greatly expand functionality. Persistent RMAN settings can be created for automatic channels, channel parallelism, retention policies, backup options, and auxiliary filenames, and can be applied to any session, thus removing the need for manual allocation of channel settings.

Recovery Window

Recovery Manager implements a recovery window that controls when backups expire. Recovery Manager also automatically marks as obsolete all backups and archived logs no longer required to restore the database to a point in time during the recovery window. These features are designed to reduce administrator time and effort spent performing routine backup activities tasks by automating of the most commonly performed tasks.

Block Media Recovery

Block media recovery can perform media recovery on individual blocks in a datafile while the datafile remains online. The block media recovery feature is only available with RMAN.

Miscellaneous Manageability Enhancements

The new control file auto backup feature provides for restoring or recovering a database even when a Recovery Manager repository is not available. Recovery Manager in Oracle9i also features enhanced reporting and a more user-friendly interface.

Improvements in user-managed backup and recovery include the following new features:

Simplified Oracle9i Administration With Oracle Enterprise Manager

In Oracle9i, Oracle Enterprise Manager continues to provide easy-to-use management tools that support the new capabilities of the database and the entire e-business platform.

Key enhancements in Oracle9i include the following:

Oracle Enterprise Manager GUI

The Oracle Enterprise Manager graphical interface makes it simple to adopt and manage new components such as Oracle Internet Directory, Oracle OLAP Server, and Oracle9iAS.

Connection Established Before Start-Up

In Oracle9i, Oracle Enterprise Manager has the ability to connect to multiple target databases without starting up the Oracle Management Server.

Diagnostics, Problem Resolution, and Reporting

To further simplify management tasks, Oracle Enterprise Manager has been enhanced to include guided, expert diagnostics and problem resolution, as well as greatly enhanced reporting capabilities.

Advice-Incorporated Tools

Advice and recommendations about how properly to configure an Oracle environment, how effectively to monitor its performance, and how quickly to resolve problems has been incorporated directly into the Oracle Enterprise Manager management tools. For example, administrators can instantly display a set of overview charts to show the overall health of their system, with indicators that automatically alert administrators to potential problems. Administrators can then analyze the problem by following the proper steps required to diagnose the problem's underlying cause.

Browser-Managed Functions

Because all essential management functions are also Web-based, administrators can manage their systems directly from a Web browser. Tools such as DBA*Studio are consolidated into the integrated management console. Oracle Enterprise Manager can also publish detailed reports to a Web site, allowing administrators easy access to any systems management information they wish to publish.

Oracle Stack Management in Oracle Enterprise Manager

In Oracle9i, Oracle Enterprise Manager enables administrators to monitor the performance of more than one system. With this release, administrators are able to monitor the response of their entire Oracle-based system and to ensure that they are meeting the required business service level agreements. This capability is critical to users such as application service providers, e-business sites, or any business whose success depends on maintaining superior response time, performance, and availability of their information technology systems.

Service-Level Degradation Alerts

Oracle Enterprise Manager enables administrators to monitor service levels and automatically alerts them to any degradation in performance. Extensive service level reports are also available to provide a complete picture of the performance of the system.

Reporting Capabilities Enhanced

In addition to service level reports, reporting capabilities throughout all of Oracle Enterprise Manager have been significantly enhanced. A comprehensive set of predefined reports are included with Oracle Enterprise Manager that document the configuration and health of the entire Oracle environment. Reports can be generated, for example, on the configuration of databases, the performance of applications over the last week, or the current load on the system. Customized reports can also be generated using a site's own data or by mixing and matching the predefined report topics that Oracle Enterprise Manager provides. These reports can be automatically generated and posted to a Web site for convenient access across the organization.


Oracle Enterprise Manager supports server parameter file (SPFILE) and automatic undo management.

See Also:

Oracle Enterprise Manager Administrator's Guide

Oracle Net Services

Key enhancements in Oracle9i include the following enhancements to Oracle Net Services:

Multiple Oracle Context Creation in Oracle Net Configuration Assistant

The Oracle Net Configuration Assistant enables you to create multiple Oracle Contexts to facilitate management of a complex naming structure in a directory server.

Oracle Names LDAP Proxy Servers

In future releases, Oracle Names will not be supported as a centralized naming method. As Oracle Names is deprecated in favor of directory naming with LDAP-compliant directory servers, Oracle Names LDAP Proxy servers provide a way for release 8.1.5 or previous clients that do not support directory naming to use the same data as is used for directory naming. Oracle Names LDAP Proxy servers are Oracle Names servers that have been configured to proxy for LDAP-compliant directory servers. Upon startup, Oracle Names LDAP Proxy servers obtain network object information from a directory server. This provides a single point of definition for all data in a directory server and does not require that both Oracle Names servers and directory servers be maintained separately and simultaneously.

Additional Enhancements

Oracle Net Services includes the following new features:

Data Cartridge Enhancements

Key enhancements in Oracle9i include the following enhancements to data cartridge functionalities:

Local Domain Indexes

Discrete domain indexes, called local domain indexes, can be built on the partitions of a range-partitioned table. Local domain indexes are equi-partitioned with the underlying table: all keys refer only to rows stored in the local domain index's corresponding table partition.

Collection of User-Defined Statistics for Partitioned Tables

The extensible optimizer supports collection of user-defined statistics partition level and aggregate for partitioned tables.

New Package DBMS_ODCI

New package DBMS_ODCI contains a utility to help better estimate the cost of user-defined functions.

Support for a NULL Association of a Statistics Type

Instances of an indextype or object inherit an association of a statistics type. Now you can replace this with a NULL association for occasions when the benefit of using a better plan may not outweigh the added cost of compiling the cost or selectivity functions implemented by the statistics type.

See Also:

Oracle9i Data Cartridge Developer's Guide

Oracle Spatial

For e-business and mobile applications, the location capabilities in Oracle9i and Oracle Spatial have been greatly enhanced. Content stored in Oracle9i can now be associated with related location criteria and services. New support for online mapping, yellow pages, driving directions, traffic, and geocoding services allow online content to be merged with database content. Support for mobile devices and formats--such as WBMP, interactive voice response, microbrowsers and delivery through Oracle iAS Wireless--make Oracle9i a complete platform for the delivery of content for mobile applications.


Oracle Wireless was formerly known as Portal-to-Go.

Oracle Spatial includes the following new features:

Heterogeneous Services

Heterogeneous Services, a component of the database that enables Oracle9i to access and process data from non-Oracle data systems, includes the following new features:

Business Intelligence

Oracle9i continues to challenge the competition by providing the best platform support for business intelligence in medium to large scale enterprises. Oracle9i technology focuses especially on the challenges raised by the large volume of data and the need for near real time complex analysis in an Internet-enabled environment. Additionally, Oracle9i provides the first true business-intelligence platform, including extended database support for online analytical processing (OLAP), data mining, and major data extraction, transformation, and loading enhancements.

Oracle9i key focus areas for business intelligence include the following:

Performance and Scalability

Key enhancements in Oracle9i include the following:

Index-Organized Tables

Index-organized tables include the following technological advances:

Enhancements to Materialized Views

Oracle's materialized views, which provide a mechanism for improving the performance of almost any type of query, have been enhanced in Oracle9i in important ways:

Automatic Memory Tuning

Oracle9i provides an automated mechanism for dynamically allocating runtime memory to each query. Up to 70% or more of the data warehouse server's physical memory is commonly allocated for runtime memory.

By automating the allocation of runtime memory, Oracle9i improves the overall throughput of the data warehouse and makes it possible to support larger numbers of users at the same levels of performance.

The automatic memory tuning feature ensures that memory-intensive queries receive sufficient memory, while memory-light queries are not given too much memory. By making more effective use of memory, Oracle9i increases overall query performance.

List Partitioning

Oracle partitioning delivers significant improvements in the manageability, availability, and query performance of large tables and indexes. Partitioning is a key technology for data warehousing, where large tables are commonplace. Oracle partitioning capabilities have been enhanced in Oracle9i with the addition of a new partitioning scheme, list partitioning.

List partitioning gives data warehouse administrators precise control over which data belongs in each partition. For each partition, the data warehouse administrator can specify a list of possible values for the partitioning key of the rows in that partition. Each partition in a list partitioning scheme corresponds to a list of discrete values.

See Also:

Oracle9i Database Administrator's Guide

Data Extraction, Transformation, and Loading Enhancements

Oracle9i includes the following data extraction, transformation, and loading new features:

External Tables

To increase efficiency and reduce the time taken to load and refresh critical data warehouses, Oracle9i provides support for external tables to allow data from external systems to be quickly loaded into the database. External tables do not reside in the database and may be in a format, for which a driver is provided. The CREATE TABLE... ORGANIZATION EXTERNAL statement specifies metadata describing the external table.

See Also:

Oracle9i Database Administrator's Guide

Multitable inserts

Other data load capabilities provided to increase data load scalability and reduce complexity include multitable INSERT and MERGE semantics. Both of these SQL enhancements allow more complex data loading to be processed within a SQL single statement, unlike the old way, where several process steps were required. With multitable inserts, data can be inserted into more than one table using a single SQL statement; this is more efficient than using multiple, separate SQL statements for each table.

Multitable inserts make SQL more useful for data transformations and conditional handling. An incremental refresh, also known as a MERGE, of a table requires two tasks: new records will be inserted and existing records will be updated. Rather than requiring two separate steps, the new MERGE statement enables both steps to be processing simultaneously within a single SQL statement. This new ETL functionality is also leveraged by Oracle Warehouse Builder.

See Also:

Oracle9i SQL Reference

Table Functions

Table functions can be used in the FROM clause of a query to return a collection (either a nested table or a varray) of rows as output. A table function can use parallel execution, and result rows from can be pipelined--that is, iteratively returned.

See Also:

PL/SQL User's Guide and Reference

Bitmap Join Index

Oracle9i introduces bitmap join indexes, which provide further improved performance for a specific class of join queries. A join index is an index structure which spans multiple tables and improves the performance of the joins of those tables.

See Also:

Oracle9i Database Performance Tuning Guide and Reference

Data Warehouse Manageability

Oracle9i addresses the growing workloads of established data warehouses with enhanced capabilities for managing larger numbers of users. These capabilities ensure that an appropriate amount of resources is allocated to each query, the throughput of the entire warehouse platform is maximized, the warehouse administrator and users can view the status of ongoing jobs, and the database can automatically terminate or queue queries, depending upon conditions pre-specified by the database administrator in order to maintain optimal system load.

Key enhancements in Oracle9i include the following:

Database Resource Manager

The Database Resource Manager provides a mechanism for allocating the resources of a data warehouse among multiple populations of end users. These groups of end users, called Resource Consumer Groups, are specified by the database administrator, who then detainees how resources are allocated to each group.

In Oracle9i, the mechanism for allocating data warehouse resources among multiple populations of end-users enables the number of active sessions for each Resource Consumer Groups to be limited.

In addition, a simple query-governing capability enables the database administrator to specify the maximum estimated execution time for Resource Consumer Group.

Another significant enhancement enables the resource manager to automatically change the Resource Consumer Group of a given session based on criteria specified by the database administrator.

Enhanced Statistics Gathering

Oracle's query optimizer uses statistics about the objects in the database--such as the number of rows in each table. These statistics are gathered by database administrator with the DBMS_STATS facility.

In Oracle9i, the DBMS_STATS package has been enhanced to make it easier for database administrators to gather the appropriate sets of statistics. It is now possible to automatically determine the appropriate sampling percentage as well as the appropriate columns for histograms. These enhancements simplify the database administrator's task in gathering accurate statistics.

See Also:

Oracle9i Database Administrator's Guide

Summary Advisor and Materialized View Manageability

The summary advisor has been enhanced in Oracle9i to enable it to make recommendations based on schema characteristics and previous workload history. It now supports a broader class of schemas so database administrators can specify workloads as input to the summary advisor. Other enhancements have been made to materialized views so that it is now easier to manage environments.

See Also:

Oracle9i Data Warehousing Guide

Global Index Maintenance

Oracle9i permits an override of a default behavior, which permits an update of global indexes when partition maintenance is performed. Many table maintenance operations on partitioned tables invalidate (mark UNUSABLE) global indexes. Without the override, the entire global index must be built, or, if partitioned, all of its partitions must be built. Global indexes are now updated when partition maintenance is performed, thus minimizing normal maintenance.

Materialized View Enhancements

Various restrictions were removed in addition to expanding the situations where materialized views could be effectively used. The query rewrite feature enables many SQL statements to use materialized views, thereby significantly improving performance.

Complete Outer Joins

Oracle added full support for full outer joins so that you can more easily express certain complex queries.

WITH Clause

The WITH clause enables you to reuse a query block in a SELECT statement when it occurs more than once within a complex query.

List Partitioning

List partitioning offers you precise control over which data belongs in a particular partition.

See Also:

Integrated Analysis Capabilities

Oracle9i for business intelligence goes above and beyond requirements for performance, scalability, and manageability.

Key enhancements in Oracle9i include the following:

Full Data Warehouse Platform

Oracle9i is designed to be a full data warehouse platform, leveraging the Oracle database as the scalable data engine for all operations on data warehousing data.

New Data Mining Capabilities

Oracle9i includes new data mining capabilities. Based on the Oracle data mining product, Oracle9i provides personalization capabilities which enable customers to implement accurate, real-time recommendations and personalization capabilities into their online operations. Oracle9i improves upon earlier versions of the database with tighter integration between data mining and the relational database, and includes in-database scoring along with the ability to manage data mining operations.

See Also:

Oracle9i Data Warehousing Guide

Enhanced SQL Functionality and Performance

Oracle has substantially enhanced both the functionality and performance of SQL to address the requirements of typical OLAP operations. More specifically, Oracle9i provides an extensive set of SQL capabilities for new types of analytic functions, belonging to the three following new families and enhancements for aggregation:

Online Analytical Processing

Oracle9i OLAP is a scalable, high-performance OLAP calculation engine with fully integrated management and administration. By leveraging Oracle OLAP Server technology and Oracle9i analytic SQL capabilities, Oracle9i OLAP provides a robust platform for delivering analytic applications.


Enhancements to materialized views includes optimizations for OLAP.

See Also:

Oracle9i OLAP User's Guide

Scalability and Performance

New shared memory capabilities, improvements in Java session support, and networking and Oracle shared server improvements substantially reduce the disk space or RAM--also called the footprint--required for each. This enables more users to be hosted on the same or larger hardware platforms.

Oracle9i includes several important advances in scalability and performance

Scalability Enhancements

Key enhancements in the Oracle9i Database include the following:

Application Partitioning No Longer Necessary

Applications can treat Oracle9i Real Application Clusters as a single system so that it is no longer necessary to modify or partition clusters if you want to achieve near-linear cluster database scalability. The advantage of this for customers is that it enables them to horizontally scale the database tier as usage and demand grow without needing to modify the application itself.

Increased Transaction Throughput

Full Cache Fusion, as well as support for cluster file systems on some platforms, enables you to take advantage of the scalability provided by Oracle9i Real Application Clusters with little or no performance overhead. Because the full Cache Fusion implementation in Oracle9i eliminates the latencies associated with disk-based cache coordination, applications can scale effectively without having to be cluster-aware. By using the collective caches of all the nodes in a cluster to satisfy database requests, Oracle9i Real Application Clusters provides these unique capabilities:

Cache Fusion Architecture

In the Cache Fusion architecture, read and write requests can be served by any of the memory caches in the cluster database.

Automatic Fusing of Caches

If a data block request is served by a remote cache, then the block is transferred across the high speed cluster interconnect from one node's cache to another. This fusing of caches happens automatically and is transparent to the application. This process is the key technology that provides fast, efficient scaling in Real Application Clusters database environments.

Cluster Treated as Scalable Single System

When a data block that is required by an instance is already in the cache of another instance, Oracle9i Cache Fusion directly transfers the block from the cache of the holding instance to the requesting instance's cache. This avoids costly disk read and write operations and nearly eliminates inter-instance contention that occurs in non-Cache Fusion-based clusters for read/read, write/read, or write/write operations. This functionality builds on the previous Oracle8i Cache Fusion implementation that managed read/write contention. This is the first time in an off-the-shelf application that a cluster can be treated as a truly scalable single system.

Improved and Expanded Functionality in Real Application Clusters

The Oracle9i release 1 (9.0.1) Real Application Clusters features and enhancements that follow greatly simplify the installation and configuration process.

Simplified Parameter Management

You can use the server parameter file (SPFILE) to simplify parameter management in Real Application Clusters.

The server parameter file is easier to administer than the traditional client-side parameter files used in pre-9.0.1 releases.

See Also:

Oracle9i Real Application Clusters Setup and Configuration

Automatic Undo Management

Automatic undo management automatically controls undo space management. Using automatic undo management simplifies your administrative duties by more efficiently using disk space to manage undo information.

Server Control Utility Documentation

The Server Control Utility (SRVCTL) is fully documented and includes documentation for use with Real Application Clusters databases.


The Server Control Utility (SRVCTL) was formerly known as the Operating System Control Utility (OPSCTL).

Usability Enhancements to Recovery Manager in Real Application Clusters

There are several usability enhancements to Recovery Manager in Real Application Clusters:

Simplified Procedures for Configuring Recovery Manager in Real Application Clusters

The procedures for configuring Recovery Manager (RMAN) in Real Application Clusters databases are simplified. For example, you can use the CONFIGURE command to save channel allocation settings without manually allocating channels. You can also configure Recovery Manager to automatically back up your control file.

Simplified Backup and Restore Operations

Oracle9i Real Application Clusters supports a cluster file system for Compaq Tru64, Windows 2000, and Windows NT. This removes the dependency on the Network File System to simplify backup and storage operations so that storage management on a cluster is the same as storage management on a single node.

See Also:

Fine-Grained, Automatic Resource Management

Oracle9i includes several new features that enhance resource management.

Granular Control Over Resources

Enhancements to the Database Resource Manager in Oracle9i allow for more granular control over resources, adding features such as automatic consumer group switching, maximum active sessions control, query execution time estimation, and undo pool quotas for consumer groups. Administrators are able to specify the maximum number of concurrently active sessions in each consumer group. Once this limit is reached, the Database Resource Manager queues all subsequent requests and runs them only after the existing active sessions complete.

Automatic Consumer Group Switching

The automatic consumer group switching feature of Oracle9i enables the administrator to specify criteria which, when met, cause the Database Resource Manager to automatically switch the consumer group of a long-running session. For example, a database administrator could specify criteria that would switch a consumer group set up for online transaction processing (OLTP) operations to one more suited for batch reporting.

Administrators are also able to set a maximum estimated execution time for each consumer group, and the Database Resource Manager then estimates the approximate query execution time for each operation before it begins and will aborts the operation if it exceeds the specified limit.

Undo Pool Quota

With the undo pool quota feature, administrators can specify a maximum on the total amount of rollback data generated for each consumer group. This prevents a rogue transaction from consuming excessive rollback space to impact system operation.

See Also:

Oracle9i Database Administrator's Guide

Connection Load Balancing in Oracle Net Services

Connection load balancing is load balancing, whereby the number of active connections among various instances and dispatchers for the same service are balanced. This enables listeners to make their routing decisions based on how many connections each dispatcher has and on how loaded the nodes that the instances run.

Oracle Net TCP Protocol Rewrite for Windows

The Windows implementation of the standard socket abstraction is not as scalable as the Windows proprietary socket abstraction. Re-implementing the Oracle Net TCP adapter for the Oracle9i using the Windows proprietary socket abstraction significantly improves the ability to support large numbers of concurrent network connections for Shared Server on Windows platforms. Here, a true asynchronous event notification mechanism is used on the Windows platforms.

See Also:

Oracle9i Net Services Administrator's Guide

Performance Enhancements

The Oracle9i Database continues to provide users with superlative performance in all relevant areas and uses various performance measurement and tuning projects continually to measure, tune, and improve its own runtime performance.

Key enhancements in Oracle9i include the following:


Oracle9i Real Application Clusters constantly tunes itself by continually adapting to the changing nature of the database workload. It does this by shifting database resources across cluster servers to optimize performance.

Cache Fusion

Oracle9i Real Application Clusters uses the new technology of Cache Fusion to provide transparent scalability and high performance by means of an architecture that uses the collective caches of all nodes in a cluster to satisfy database requests and to reduce the need for disk I/O.

See Also:

Oracle9i Real Application Clusters Concepts

Native Compilation and Improved PL/SQL Optimization

A major emphasis of Oracle9i is improved performance in areas critical to e-business solutions. Native compilation support and improved optimization of PL/SQL improves the performance business applications, and the addition of memory and CPU costs to the cost-based optimizer results in better optimization plans, less resource usage, and faster overall performance.

See Also:

PL/SQL User's Guide and Reference

Latch Contention Improvements

Latch contention in several areas has been eliminated or reduced to improve performance on highly active systems. Improvements in general I/O, including self-tuning direct I/O, prefetching, and skip/scan row source operations on indexes, have also improved performance in data warehouse and online transaction processing (OLTP) environments.

See Also:

Oracle9i Database Performance Tuning Guide and Reference

Enhanced Java Performance

For Java, improved garbage collection, better native compilation, increased object sharing, and session pinning have all improved the performance of built-in Java executing inside the database. JDBC and SQLJ performance improvements have also improved the performance of Java in the middle tier or on the client.

See Also:

Oracle9i Java Developer's Guide

Network and Distributed Database Performance

Network and distributed database performance has been improved by the rework of database-to-database communication using Oracle Call Interface (OCI). In addition, specific network interface optimization, new improved virtual circuit I/O, and a unified event/wait model all substantially improve client/server communication performance. Improved distributed query optimization has also been built into the optimizer.

See Also:

Shared Server Enhancements

The Shared Server architecture enables the Oracle9i server to significantly improve the scalability of applications and concurrent clients connected to the server by reducing memory consumption, server processes and utilizing Oracle Net's scalability features. Shared Server Architecture enables existing applications to scale without changes to the application and provides the infrastructure that enables the Oracle9i server to support additional presentation protocols, such as, IIOP, FTP, and HTTP.

Name Changes

Shared Server in Oracle9i was formerly known as multi-threaded server (MTS).

The following table maps the current shared MTS parameter and dynamic view names to the new names associated with Shared Server in Oracle9i. The old names are maintained for backward compatibility, but users are encouraged to migrate to the new names.

New Shared Server Parameter/View Name Current MTS Parameter/View Name

CIRCUITS parameter

MTS_CIRCUITS parameter








MTS_SERVERS parameter


MTS_SESSIONS parameter


V$MTS view

Oracle Net Connect Establishment (Direct Handoff)

With Oracle9i, if the Oracle Net protocol and operating system allow it, the Oracle Net Listener hands off a connection request directly to a local dispatcher for all presentation protocols. This process is done without redirection of the connection request from listener back to the client. The client is connected directly to the dispatcher. The listener can resume listening for other incoming network sessions. This new feature improves overall latency by eliminating the need for a network round-trip for the "redirect." In addition, it improves connection establishment performance in Wide Area Network (WAN) environments in which the cost of redirecting the client connection could be significant.

Oracle Net Event Model

Significant design changes to the Oracle Net event model in Oracle9i have significantly improved the ability to handle thousands of network sessions more efficiently, for dispatcher, listener and as well as Connection Manager.

Common Event Model

The integration of the Oracle Net event model with the Oracle9i server's virtual operating system (VOS) event model has significantly reduced the number of operating system calls which were previously required and improved system response times. Prior to release Oracle9i, the dispatcher handled network and database events separately and differently. There were no consistency or synchronization among the event notification mechanisms between these two types of models. The dispatcher would have to check both the network and the database for any newly arriving event. Time and resources were wasted on juggling and balancing between these two different event models.

With the new Common Event Model in Oracle9i, the Shared Server dispatcher can handle event notification more efficiently. Users can expect improve performance and scalability with Shared Server.

Performance Manager Support

Performance Manager is part of the Diagnostic Pack under Oracle Enterprise Manager Tool. It provides real-time graphical performance monitoring for Shared Server. Users can monitor the performance behavior of dispatchers, shared servers, and listeners at their individual detailed level, as well as on an overall high level. User can also find out all the session performance information for each shared server and view the SQL statement executed for each individual session. Additional tuning recommendation will be provided for DBA to fine-tune the Shared Server related parameters. These new features will simplify the management, monitoring, and troubleshooting of Shared Server in the enterprise environment.

See Also:

Oracle9i Net Services Administrator's Guide.

Database Security

Oracle database security has been widely expanded in the Oracle9i Database. Advances in database security have made in the areas of user security, data security, and enterprise security. User security has to do with making sure that only users who are authorized to access a database can do so. Data security has to do with protecting the integrity of the database from whatever or whomever might compromise it. Enterprise security has to do with protecting the integrity of the data belonging to a particular enterprise.

Key enhancements in Oracle9i include the following:

Security New Features Implementation

This section explains some the ways for you to use new the features in Oracle9i database security. It contains the following parts:

User Security

Security mechanisms must be scalable to support thousands or millions of users over the Internet and yet must still be practical to administer. Oracle9i offers a number of security features tailored to provide security for users on internet-scale applications. These features include enhancements to database proxy authentication, public key infrastructure (PKI) support, and the new applications server feature, Web Single Sign-On. Together, these features allow enterprises to identify users throughout all tiers of the network.

Instead of the middle tier establishing a single connection to the database on behalf of the Web user, Enterprise User Security creates multiple, scalable lightweight database sessions to carry the identity of the Web user, thus enabling fine-grained access control and fine-grained auditing of the Web user.

Web Single Sign-On is offered with the Login Server component of the application server's portal services. With Single Sign-On, users need to only maintain a single user name and password account, by means of which they can access all Web applications throughout the enterprise. System administrators are provided with a single LDAP directory, the Oracle Internet Directory, to manage all access control information. By centralizing user access information, Oracle Internet Directory not only provides better security for the enterprise, but also helps lower the total cost of ownership.

Oracle also supplies PKI integration for easier deployment and management of PKI within the enterprise. For example, digital certificates issued by Entrust can be used to authenticate to the Oracle environment.

All of these technologies allow companies to increase access management without increased administrative complexity.

Data Security

The best way to minimize security risk is to provide multiple layers of security mechanisms so that failure of a single mechanism does not compromise critical information. This concept is referred to as deep data protection or security for data.

The Oracle9i database provides deep data protection through enhancements to Virtual Private Database (VPD) and Selective Data Encryption capabilities, as well as through fine grained auditing and new technologies collectively referred to as Oracle Label Security.

Network Security

A critical security requirement confronting the hosting environment is the issue of how to keep data from different hosted user communities separate. One way to do this is to create physically separate systems for each hosted community which, however, is costly.

The Oracle9i Database provides a more efficient and less costly alternative for a hosting provider by offering mechanisms that allow multiple user communities to share a single hardware and software instance. With Oracle9i Virtual Private Database and Oracle Label Security technologies, hosting providers are certain that data belonging to each user community is kept separate from data belonging to any other user community.

Database Security New Features

Key enhancements in Oracle9i include the following:

Virtual Private Database (VPD) enhancements

Virtual Private Database offers partitioned fine-grained access control whereby each user can only access rows of data that pertain to them and whereby security enforcement depends upon which application is accessing data. In addition, Virtual Private Database also provides connection pooling through a global or shared application context.

Fine-Grained Auditing

Fine-grained auditing offers selective audit of SELECT statements, with bind variables, based on relevant column access, significantly enhancing user accountability.

Web-based Single Sign-On

Login Server (included with Oracle Portal 3.0) provides web-based Single Sign-On and integration with legacy applications. With Single Sign-On, users are able to authenticate (log in) once and gain access to multiple Web services, without having to remember credentials and authenticate again for each service.

Strong Three-Tier Security

Three-tier security is enhanced by proxy authentication, including the following new features:

An extensible, secure application role can require users to access the database through a middle tier. Another feature can ascertain that user identities are maintained securely through all tiers of an application, with centralized user and privilege management in LDAP-based directories.

See Also:

API Enhancements

Several application programming interface (API) enhancements have been made to aid the developer in making use of LDAP server functionality. The PL/SQL API to LDAP (known as DBMS_LDAP) permits any PL/SQL code to perform any LDAP operation. This API is now supported through all database operation modes (Oracle Shared Server and dedicated server). In addition, a new API set has been added to the PL/SQL UTL_HTTP package. New API functions have also been added to provide asynchronous operations.

See Also:
Other New Packages

Other new packages include the UTL_URL package, which performs exit and return functions on URLs, and UTL_URL and UTL_ENCODE, which is used to encode email messages.

Existing UTL_TCP and UTL_SMTP packages have been enhanced to support transfer time-out in Oracle9i. The existing UTL_INADDR package has been enhanced to support reverse domain name resolution in Oracle9i.

See Also:

Oracle9i Supplied PL/SQL Packages and Types Reference

Directory Access Utilities

Additional utilities to access directory structures have been added to the C language API to LDAP. JNDI standard protocol extensions can now be recognized by Oracle Internet Directory.

Proxy authentication enables users without schemas to access the database through the middle tier.

See Also:

Standards-Based Public Key Infrastructure (PKI)

Standards-based public key infrastructure (PKI) includes support for PKCS#12 certificates. They enable existing PKI credentials to be shared by an Oracle Wallet, thus reducing PKI deployment costs and increasing interoperability. Wallets can be downloaded from LDAP directories, supporting mobile users. The SSL libraries used in Oracle9i now also support hardware acceleration for improved performance. Oracle9i also supports enhanced wallet password management.

See Also:

Oracle Advanced Security Administrator's Guide

Improved User and Security Policy Management

Oracle9i supports LDAP technology to centrally manage network naming, easing deployments regardless of how many databases--with all their respective users--customers have. Oracle9i supports Oracle Internet Directory, Novell Directory Services, and Microsoft Active Directory. Oracle9i also supports native authentication using Microsoft Active Directory.

Enterprise User Management Enhancements

Improved user and security policy management, provided through Enterprise User Management enhancements, includes management of password-based users in LDAP directories and a management tool for VPD policies. Security policies can be organized into groups and then, by referring to the application context, the Oracle server can determine which group of policies should be in effect at runtime. The server enforces all the policies which belong to that policy group.

See Also:

Oracle9i Security Overview

Password Encryption

User passwords can also be encrypted using either standard or custom cryptographic schemes. Oracle Internet Directory supports an Internet Engineering Task Force (IETF) LDAP standard for representing prefixed user passwords where the prefixes identify the cryptographic scheme used for hashing the password values. A default hashing mechanism may be chosen from a variety of standard schemes, including MD5, SHA-1, and Unix cryptography. Values hashed by external agents may also be stored. This is useful when external authentication service agents want to use custom cryptographic schemes.

See Also:

Oracle Internet Directory Administrator's Guide

Secure Random Number Generator

The DBMS_OBFUSCATION_TOOLKIT now includes a secure random number generator, GetKey. Secure random number generation is a very important aspect of cryptography; predictable cryptographic keys can easily be decrypted by a person or machine performing cryptographic analysis.


DBMS_RANDOM is unsuitable for generating cryptographic keys, and should never be used for this purpose.

See Also:

Oracle Internet Directory Administration Improvements

Administration of Oracle Internet Directory replication server has also been improved with the provision of new replication queue management and reconciliation tools. The replication queue management tool enables administrators object-by-object control over the elements in the human intervention queue, for the purposes of retrying object processing at will and for deletion of objects from the queue. The replication reconciliation tool permits administrators to detect and correct inconsistencies among directory replicas.

A new web-based Oracle Internet Directory Self-Service Administration servlet enables users to administer their own personalized data over the Web. Directory administrators can restrict the set of attributes users are allowed to self-administer, including group memberships. Extended support for ACLs governing user self-administration of membership enables authenticated users to add their own Distinguished Names (DNs) to membership of a LDAP group object or any object type (including roles and proprietary subscriber lists) that holds membership information.

See Also:

Oracle Internet Directory Administrator's Guide

Directory Services Availability Improvements

Several enhancements have also been made to increase the availability of directory services. Certification with certain limited Oracle9i Real Application Cluster configurations improves availability both for the front end, where the LDAP directory service and replication processes reside, and the back end Oracle RDBMS, where the directory data is stored. Support for logical hosts in clusters enables failover to a different physical host within the same cluster and also transparently supports continued availability of directory replication. New procedures allow for multi-node topology reconfiguration and upgrading with no directory service downtime.

See Also:

Oracle9i Real Application Clusters Administration

LDAP Server Scalability and Performance

Several key enhancements have further increased LDAP server scalability and performance. Multi-process support for higher-concurrency LDAP access has been improved through a more scalable directory metadata cache coherency protocol. IETF-compliant support for LDAP referral objects enables partitioned LDAP directories. This enables delegated administration of physical directory segments and is critical for service providers and enterprises hosting large directories for a federation of autonomous organizations. By employing parallelism, the capacity of bulk-load, bulk-delete, and bulk-modify tools have been enhanced to handle much larger data sets.

See Also:

Oracle Internet Directory Administrator's Guide

Optimization of Server-Side Caching

Optimization of server-side caching at startup on group objects reduces LDAP server startup latency and improves performance of access control evaluations. Finally, the ability of Oracle Internet Directory to consult access control information has been enhanced significantly such that the evaluation decisions are made efficiently even when there are very large numbers of ACL policies to be consulted.

See Also:

Data Encryption and Label Security

Encryption enhancements are according to the Advanced Encryption Standard (AES), the replacement from the National Institute of Standards and Technology for the Data Encryption Standard (DES). The Date Encryption Standard is the standard encryption algorithm currently in use.

Key enhancements in Oracle9i include the following:

Selective Data Encryption

Selective data encryption in Oracle9i makes it possible to shield very sensitive information in a database by encrypting it. For example, if you want to store confidential information about upper management compensation in the company database but do not want your database administrators or other privileged users to be able to access this information, you can encrypt the specific information that you wanted to keep confidential while still storing it in the database.

See Also:

Oracle Data Integration Overview

Oracle Label Security

The Oracle Label Security option in Oracle9i extends Virtual Private Database functionality by offering label-based data access. By attaching access control directly to the data, security cannot be bypassed. This technology is ideal for application service providers who host data from more than one enterprise within a single database and therefore need to keep the data securely separated.

Oracle Label Security is a fine-grained access control solution that can be used directly out of the box with little or no modification needed for use. It adds a special label to data rows, providing sophisticated and flexible row label security, and it is built on the Oracle9i Virtual Private Database technology. Oracle Label Security is based on labeling concepts used by government and defense organizations to protect sensitive information and provide data separation. Application hosting, health care and other industries can also take advantage of data labeling to help solve security requirements in the Internet Age. For example, in application hosting, a subscriber label can be used to separate data among subscribers in the same application.

Oracle Label Security is enforced within the database so that it provides security even if the application is bypassed. Label provides a dimension of access control that is not easily achieved using existing application data. Oracle Label Security also includes a sophisticated policy management tool, to manage policies, labels, and user label authorizations.

See Also:

Oracle Label Security Administrator's Guide

Oracle Policy Manager

Oracle Policy Manager is an extension to Oracle Enterprise Manager that administers Oracle Label Security. The Oracle Policy Manager graphical user interface contains a tree structure that lists policies along with their labels, authorizations, and protected objects.

See Also:

Windows Integration

Oracle9i reinforces Oracle's lead as the platform of choice for organizations deploying on the Windows operating system. Key focus areas include the following:

Integration Capabilities

Oracle9i supports enhanced integration with Microsoft Transaction Services and Internet Information Services. The PKI infrastructure and Single Sign-On capabilities in Oracle9i have also been well integrated with Windows 2000, Active Directory, and Microsoft Certificate Store.

Development and Deployment Improvements

Oracle9i Development and Deployment Improvements are as follow:

Information Integration

Oracle9i introduces new products and technologies crucial to facilitating to a successful e-business environment. Key technological advances include the following:

Providing a Standard Infrastructure

Oracle9i includes a set of pre-developed, pre-tested, and pre-integrated business service objects, developed in Java and compliant with J2EE, to provide a faster time-to-market for customers to build and integrate Web-based storefronts, exchanges and hosted applications.

Key enhancements in Oracle9i include the following:

e-Business Service Objects

The e-business service objects seamlessly blend open Internet technologies and standards with reliable, scalable Oracle technologies and products. The e-business service objects allow developers to rapidly build complex multitiered Internet applications based on open standards, such as HTML, XML, JavaScript, Java Servlets, Java Beans, and Java Server Pages.

These e-business service objects also provide a flexible architecture for building multitier Internet applications. Components built using this framework can reside within the Oracle9i Java Virtual Machine (JVM) or within the Oracle Internet Application Server (iAS) that supports Java technologies, such as Java Server Pages (JSPs) and Java Servlets.

The collection of Java-based services provided includes the following new functionalities:

Dynamic Services

Oracle9i also provides an enhanced infrastructure through Dynamic Services for support of Internet service aggregation and syndication for portals, exchanges, and other Internet applications. Dynamic Services integrates the Oracle Internet Directory, XML services, and Advanced Queuing features with a policy and service management engine.

Queue information can be stored on an Oracle Internet Directory server to provide a single point of contact to locate the required topic or queue without the user needing to know in which database the queue is located. The Oracle Internet Directory can also be used as the repository for event registration. Clients can register for database events even when the database is down.

Dynamic Services enables developers to easily manage, compose, reuse, and deploy local and remote Internet services--such as quotes, news feeds, exchange rates, or credit card processing--and database services--such as employee lookup, payroll, location services, or any PL/SQL procedure.

See Also:

Oracle9i Application Developer's Guide - Advanced Queuing

Supporting Industry Standard Business Messaging Formats

Oracle9i also provides a standard infrastructure that makes it easier for customers to integrate these storefronts, exchanges, and portals with other backend and external systems.

Key enhancements in Oracle9i include the following:

XML-Based Messaging Over HTTP

XML-based messaging over HTTP is supported, allowing external, across-firewall systems to be more easily integrated. In addition, non-database, Internet based consumers are also supported, allowing for greater flexibility in homogeneous environments. To enable messaging operations such as enqueue and dequeue to be performed across the Internet, a new XML-based Internet Document Access Protocol (iDAP) is provided so message operations can be requested across firewalls. Message security itself has been improved with digitally signed messages, and message non-repudiation is supported both for messages and for iDAP requests.

Built-In Message Transformation Architecture

Oracle9i provides a built-in message transformation architecture, with support for PL/SQL and XSLT-based transformations, which can be executed during enqueue, dequeue, and propagation operations.

Advanced Queuing agents can now also be defined in Oracle Internet Directory, providing a centralized, easy-to-manage, secure infrastructure for global messaging. In addition, global topic information can also be externalized in Oracle Internet Directory, providing a single place for the configuration and management for Advanced Queuing operations that span one or more systems.

Business Event System

Oracle Workflow now provides the Business Event System, a new application service that leverages the Oracle Advanced Queuing infrastructure to communicate business events among systems within an enterprise as well as between enterprises. The Business Event System includes the Event Manager for registering subscriptions to significant events and event activities for modeling business events within workflow processes. This support enables Oracle Workflow users to deal with business objects and e-business integration flows powerfully and flexibly, with minimal intrusion into core applications.

Message Gateway

The Message Gateway in Oracle9i supports messaging between heterogeneous environments, and supports propagation of messages from Oracle9i to other proprietary message systems.

See Also:

Packaged Applications

Oracle9i packaged applications enhancements provide new capabilities and new economies.

Database Globalization Support

Oracle9i also significantly reduces the cost of developing and deploying applications globally on a single database instance.

Key enhancements in Oracle9i include the following:

Unicode Datetime Enhancements

Requirements for multi-geographical applications include named time zones and multi-language support through Unicode. The datetime datatypes TIMESTAMP WITH LOCAL TIME ZONE and TIMESTAMP WITH TIME ZONE are time-zone aware. Datetime values can be specified as local time in a particular region (rather than as a particular offset). Using the time zone rules tables for a given region, the time zone offset for a local time is calculated, taking into consideration Daylight Savings time adjustments to be used in further operations.

Unicode Support Expansion

Unicode support has been greatly expanded in Oracle9i so that developers can easily find the right Unicode solution for their application needs. Developers can now develop fully globalized applications by setting up or migrating their database character set to UTF8 to support multiple languages simultaneously. National Character fields can be used to define columns that support one or more new languages for an existing monolingual database. Application developers can also use the Character Set Scanner utility to quickly identify potential issues in migrating an Oracle database to a new character set, thus easing migration of existing applications.

Oracle9i supports ISO 14651/Unicode Collation, and extended locale Unicode support including:

Linguistic Collation Capability Enhanced

Linguistic collation capability in Oracle9i is greatly enhanced based on the new proposed ISO 14651 standard for multilingual collation. In addition, Oracle9i adds a set of new pre-defined linguistic sorts for Asian languages including Chinese, Japanese, and Korean. If customers have special needs that go beyond the extensive set of linguistic sorts provided with Oracle9i, then they also have the flexibility of defining or customizing their own linguistic sorts by using a new easy-to-use graphical interface, Oracle Locale Builder.

Extensive Locale Definitions Set

Oracle9i provides an extensive set of locale definitions including 57 languages, 88 territories and approximately 200 character sets. If customers need to customize existing locale definitions, or create new definitions, the new Oracle Locale Builder provides an easy-to-use graphical user interface through which one can easily view, modify, and define the various locale-specific data.

See Also:

Oracle9i Database Globalization Support Guide

Development Features for Independent Software Vendors

Oracle9i continues to be the best platform for independent software vendor development, deployment, hosting, and migration. Features such as updatable scrollable cursors, ANSI -compliant CASE statements, datetime data types, and join syntax facilitate migrating applications developed on other databases to Oracle9i. In addition, LONG data types can be easily converted to LOB data types by a simple ALTER TABLE statement.

Enhancements to stored outlines and default column values allow improved deployment and hosting for packaged applications. With stored outline editing, queries can be tuned without having to change the packaged application code. For the customer whose environment has unique characteristics that might cause an outline to yield a less-than-optimal execution plan, the ability to make adjustments to the outline enhances the ability to support specific customer needs.

In this manner, because users can make finely tuned adjustments to the saved plan, stored outlines are made more adaptive. Use of the SYS_CONTEXT function to generate default column values simplifies implementation of Virtual Private Database security feature, providing a more scalable infrastructure for managing hosted applications.

Packaged applications also benefit from the numerous development, availability, scalability and security features provided in Oracle9i.