Download The Oracle Database (commonly referred to as Oracle RDBMS or

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Serializability wikipedia , lookup

Microsoft Access wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Extensible Storage Engine wikipedia , lookup

IMDb wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

SQL wikipedia , lookup

Ingres (database) wikipedia , lookup

Functional Database Model wikipedia , lookup

Open Database Connectivity wikipedia , lookup

Microsoft Jet Database Engine wikipedia , lookup

Concurrency control wikipedia , lookup

Database wikipedia , lookup

Relational model wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

PL/SQL wikipedia , lookup

Oracle Database wikipedia , lookup

Transcript
The Oracle Database (commonly referred to as Oracle RDBMS or simply Oracle)
consists of a relational database management system (RDBMS) produced and marketed
by Oracle Corporation. As of 2009, Oracle remains a major presence in database
computing.[1]
Larry Ellison and his friends and former co-workers Bob Miner and Ed Oates started the
consultancy Software Development Laboratories (SDL) in 1977. SDL developed the
original version of the Oracle software. The name Oracle comes from the code-name of a
CIA-funded project Ellison had worked on while previously employed by Ampex.[
[edit] Physical and logical structures
An Oracle database system — identified by an alphanumeric system identifier or SID[3]
— comprises at least one instance of the application, along with data storage. An instance
— identified persistently by an instantiation number (or activation id:
SYS.V_$DATABASE.ACTIVATION#) — comprises a set of operating-system
processes and memory-structures that interact with the storage. Typical processes include
PMON (the process monitor) and SMON (the system monitor).
Users of Oracle databases refer to the server-side memory-structure as the SGA (System
Global Area). The SGA typically holds cache information such as data-buffers, SQL
commands, and user information. In addition to storage, the database consists of online
redo logs (or logs), which hold transactional history. Processes can in turn archive the
online redo logs into archive logs (offline redo logs), which provide the basis (if
necessary) for data recovery and for some forms of data replication.
If the Oracle database administrator has implemented Oracle RAC (Real Application
Clusters), then multiple instances, usually on different servers, attach to a central storage
array. This scenario offers advantages such as better performance, scalability and
redundancy. However, support becomes more complex, and many sites do not use RAC.
In version 10g, grid computing introduced shared resources where an instance can use
(for example) CPU resources from another node (computer) in the grid.
The Oracle DBMS can store and execute stored procedures and functions within itself.
PL/SQL (Oracle Corporation's proprietary procedural extension to SQL), or the objectoriented language Java can invoke such code objects and/or provide the programming
structures for writing them.
[edit] Storage
The Oracle RDBMS stores data logically in the form of tablespaces and physically in the
form of data files. Tablespaces can contain various types of memory segments, such as
Data Segments, Index Segments, etc. Segments in turn comprise one or more extents.
Extents comprise groups of contiguous data blocks. Data blocks form the basic units of
data storage.
Oracle database management tracks its computer data storage with the help of
information stored in the SYSTEM tablespace. The SYSTEM tablespace contains the data
dictionary — and often (by default) indexes and clusters. A data dictionary consists of a
special collection of tables that contains information about all user-objects in the
database. Since version 8i, the Oracle RDBMS also supports "locally managed"
tablespaces which can store space management information in bitmaps in their own
headers rather than in the SYSTEM tablespace (as happens with the default "dictionarymanaged" tablespaces).
[edit] Disk files
This section requires expansion.
[edit] Data files
At the physical level, datafiles comprise one or more data blocks, where the block size
can vary between datafiles.
Datafiles can occupy pre-allocated space in the file system of a computer server, utilize
raw disk directly, or exist within ASM logical volumes.[4]
[edit] Control files
One (or multiple multiplexed) control files (also known as "controlfiles") store overall
system information and statuses.[5]
[edit] Database schema
Oracle database conventions refer to defined groups of object ownership (generally
associated with a "username") as schemas.
Most Oracle database installations traditionally came with a default schema called SCOTT.
After the installation process has set up the sample tables, the user can log into the
database with the username scott and the password tiger. The name of the SCOTT
schema originated with Bruce Scott, one of the first employees at Oracle (then Software
Development Laboratories), who had a cat named Tiger.[6]
Oracle Corporation has de-emphasized the use of the SCOTT schema, as it uses few of the
features of the more recent releases of Oracle. Most recent examples supplied by Oracle
Corporation reference the default HR or OE schemas.
Other default schemas[7] include:


SYS (essential core database structures and utilities)
SYSTEM (additional core database structures and utilities,
and privileged account)


OUTLN
(utilized to store metadata for stored outlines for stable query-optimizer
execution plans.[8]
BI, IX, HR, OE, PM, and SH (expanded sample schemas[9] containing more data and
structures than the older SCOTT schema).
[edit] Memory architecture
[edit] System Global Area
Main article: System Global Area
Each Oracle instance uses a System Global Area or SGA — a shared-memory area — to
store its data and control-information.[10]
Each Oracle instance allocates itself an SGA when it starts and de-allocates it at shutdown time. The information in the SGA consists of the following elements, each of
which has a fixed size, established at instance startup:



the database buffer cache: this stores the most recently-used data blocks. These
blocks can contain modified data not yet written to disk (sometimes known as
"dirty blocks"), unmodified blocks, or blocks written to disk since modification
(sometimes known as clean blocks). Because the buffer cache keeps blocks based
on a most-recently-used algorithm, the most active buffers stay in memory to
reduce I/O and to improve performance.
the redo log buffer: this stores redo entries — a log of changes made to the
database. The instance writes redo log buffers to the redo log as quickly and
efficiently as possible. The redo log aids in instance recovery in the event of a
system failure.
the shared pool: this area of the SGA stores shared-memory structures such as
shared SQL areas in the library cache and internal information in the data
dictionary. An insufficient amount of memory allocated to the shared pool can
cause performance degradation.
[edit] Library cache
The library cache[11] stores shared SQL, caching the parse tree and the execution plan for
every unique SQL statement.
If multiple applications issue the same SQL statement, each application can access the
shared SQL area. This reduces the amount of memory needed and reduces the
processing-time used for parsing and execution planning.
[edit] Data dictionary cache
The data dictionary comprises a set of tables and views that map the structure of the
database.
Oracle databases store information here about the logical and physical structure of the
database. The data dictionary contains information such as:




user information, such as user privileges
integrity constraints defined for tables in the database
names and datatypes of all columns in database tables
information on space allocated and used for schema objects
The Oracle instance frequently accesses the data dictionary in order to parse SQL
statements. The operation of Oracle depends on ready access to the data dictionary:
performance bottlenecks in the data dictionary affect all Oracle users. Because of this,
database administrators should make sure that the data dictionary cache[12] has sufficient
capacity to cache this data. Without enough memory for the data-dictionary cache, users
see a severe performance degradation. Allocating sufficient memory to the shared pool
where the data dictionary cache resides precludes these particular performance problems.
[edit] Program Global Area
The Program Global Area[13][14] or PGA memory-area of an Oracle instance contains data
and control-information for Oracle's server-processes.
The size and content of the PGA depends on the Oracle-server options installed. This
area consists of the following components:




stack-space: the memory that holds the session's variables, arrays, and so on.
session-information: unless using the multithreaded server, the instance stores its
session-information in the PGA. (In a multithreaded server, the sessioninformation goes in the SGA.)
private SQL-area: an area in the PGA which holds information such as bindvariables and runtime-buffers.
sorting area: an area in the PGA which holds information on sorts, hash-joins, etc.
[edit] Process architectures
[edit] Oracle processes
The Oracle RDBMS typically relies on a group of processes running simultaneously in
the background and interacting to monitor and expedite database operations. Typical
operating groups might include some of the following individual processes — (shown
along with their abbreviated nomenclature):[15]




archiver processes (ARCn)
checkpoint process (CKPT) *REQUIRED*
coordinator-of-job-queues process (CJQn): dynamically spawns slave processes
for job-queues
database writer processes (DBWn) *REQUIRED*
















dispatcher processes (Dnnn): multiplex server-processes on behalf of users
memory-manager process (MMAN): used for internal database tasks such as
Automatic Shared Memory Management
log-writer process (LGWR) *REQUIRED*
log-write network-server (LNSn): transmits redo logs in Data Guard
environments
logical standby coordinator process (LSP0): controls Data Guard log-application
media-recovery process (MRP): detached recovery-server process
memory-monitor process (MMON): process for automatic problem-detection,
self-tuning and statistics-gathering[16]
memory-monitor light process (MMNL): gathers and stores Automatic Workload
Repository (AWR) data
mmon slaves (Mnnnn — M0000, M0001, etc): background slaves of the MMON
process[17]
process-monitor process (PMON) *REQUIRED*
process-spawner (PSP0): spawns Oracle processes
queue-monitor processes (QMNn)
recoverer process (RECO)
remote file-server process (RFS)
shared server processes (Snnn): serve client-requests
system monitor process (SMON) *REQUIRED*
[edit] User processes, connections and sessions
Oracle Database terminology distinguishes different computer-science terms in
describing how end-users interact with the database:



user processes involve the invocation of application software[18]
a connection refers to the pathway linking a user process to an Oracle instance[19]
sessions consist of specific connections to an Oracle instance.[20] Each session
within an instance has a session identifier or "SID"[21] (distinct from the systemidentifier SID).
[edit] Concurrency and locking
Oracle databases control simultaneous access to data resources with locks (alternatively
documented as "enqueues"[22] ). The databases also utilize "latches" -- low-level
serialization mechanisms to protect shared data structures in the System Global Area.[23]
[edit] Configuration
Database administrators control many of the tunable variations in an Oracle instance by
means of values in a parameter file.[24] This file in its ASCII default form ("pfile")
normally has a name of the format init<SID-name>.ora. The default binary equivalent
server paramater file ("spfile") (dynamically reconfigurable to some extent)[25] defaults to
the format spfile<SID-name>.ora. Within an SQL-based environment, the views
V$PARAMETER[26] and V$SPPARAMETER[27] give access to reading parameter values.
[edit] Internationalization
Oracle Database software comes in 63 language-versions (including regional variations
such as American English and British English). Variations between versions cover the
names of days and months, abbreviations, time-symbols such as A.M. and A.D., and
sorting.[28]
Oracle Corporation has translated Oracle Database error-messages into Arabic, Catalan,
Chinese, Czech, Danish, Dutch, English, Finnish, French, German, Greek, Hebrew,
Hungarian, Italian, Japanese, Korean, Norwegian, Polish, Portuguese, Romanian,
Russian, Slovak, Spanish, Swedish, Thai and Turkish.[29]
Oracle Corporation provides database developers with tools and mechanisms for
producing internationalized database applications: referred to internally as
"Globalization".[30]
[edit] History
[edit] Corporate/technical timeline
This article is in a list format that may be better presented using prose. You can
help by converting this article to prose, if appropriate. Editing help is available.
(September 2009)







1977: Larry Ellison and friends founded Software Development Laboratories.
1979: SDL changed its company-name to "Relational Software, Inc." (RSI) and
introduced its product Oracle V2 as an early commercially-available relational
database system. The version did not support transactions, but implemented the
basic SQL functionality of queries and joins. (RSI never released a version 1 instead calling the first version version 2 as a marketing gimmick.)[31]
1982: RSI in its turn changed its name, becoming known as "Oracle
Corporation",[32] to align itself more closely with its flagship product.
1983: The company released Oracle version 3, which it had re-written using the C
programming language and which supported COMMIT and ROLLBACK functionality
for transactions. Version 3 extended platform support from the existing Digital
VAX/VMS systems to include Unix environments.[32]
1984: Oracle Corporation released Oracle version 4, which supported readconsistency.
1985: Oracle Corporation released Oracle version 5, which supported the clientserver model — a sign of networks becoming more widely available in the mid1980s.
1986: Oracle version 5.1 started supporting distributed queries.















1988: Oracle RDBMS version 6 came out with support for PL/SQL embedded
within Oracle Forms v3 (version 6 could not store PL/SQL in the database
proper), row-level locking and hot backups.[33]
1989: Oracle Corporation entered the application products market and developed
its ERP product, (later to become part of the Oracle E-Business Suite), based on
the Oracle relational database.
1990: the release of Oracle Applications release 8[32]
1992: Oracle version 7 appeared with support for referential integrity, stored
procedures and triggers.
1997: Oracle Corporation released version 8, which supported object-oriented
development and multimedia applications.
1999: The release of Oracle8i aimed to provide a database inter-operating better
with the Internet (the i in the name stands for "Internet"). The Oracle 8i database
incorporated a native Java virtual machine (Oracle JVM).
2000: Oracle E-Business Suite 11i pioneers integrated enterprise application
software[32]
2001: Oracle9i went into release with 400 new features, including the ability to
read and write XML documents. 9i also provided an option for Oracle RAC, or
"Real Application Clusters", a computer-cluster database, as a replacement for the
Oracle Parallel Server (OPS) option.
2003: Oracle Corporation released Oracle Database 10g. (The g stands for "grid";
emphasizing a marketing thrust of presenting 10g as "grid-computing ready".)
2005: Oracle Database 10.2.0.1 — also known as Oracle Database 10g Release 2
(10gR2) — appeared.
2006: Oracle Corporation announces Unbreakable Linux[32]
2007: Oracle Database 10g release 2 sets a new world record TPC-H 3000 GB
benchmark result[34]
2007: Oracle Corporation released Oracle Database 11g for Linux and for
Microsoft Windows.
2008: Oracle Corporation acquires BEA Systems.
2009: Oracle Corporation acquires Sun Microsystems. Note: as of October 2009
the acquisition awaits approval from the European Council[citation needed].
[edit] Version numbering
Oracle products have historically followed their own release-numbering and naming
conventions. With the Oracle RDBMS 10g release, Oracle Corporation started
standardizing all current versions of its major products using the "10g" label, although
some sources continued to refer to Oracle Applications Release 11i as Oracle 11i. Major
database-related products and some of their versions include:



Oracle Application Server 10g (also known as "Oracle AS 10g"): a middleware
product;
Oracle Applications Release 11i (aka Oracle e-Business Suite, Oracle Financials
or Oracle 11i): a suite of business applications;
Oracle Developer Suite 10g (9.0.4);

Oracle JDeveloper 10g: a Java integrated development environment;
Since version 5, Oracle's RDBMS release numbering has used the following codes:













Oracle5
Oracle6
Oracle7: 7.0.16 — 7.3.4
Oracle8 Database: 8.0.3 — 8.0.6
Oracle8i Database Release 1: 8.1.5.0 — 8.1.5.1
Oracle8i Database Release 2: 8.1.6.0 — 8.1.6.3
Oracle8i Database Release 3: 8.1.7.0 — 8.1.7.4
Oracle9i Database Release 1: 9.0.1.0 — 9.0.1.5 (patchset as of December 2003)
Oracle9i Database Release 2: 9.2.0.1 — 9.2.0.8 (patchset as of April 2007)
Oracle Database 10g Release 1: 10.1.0.2 — 10.1.0.5 (patchset as of February
2006)
Oracle Database 10g Release 2: 10.2.0.1 — 10.2.0.4 (patchset as of April 2008)
Oracle Database 11g Release 1: 11.1.0.6 — 11.1.0.7 (patchset as of September
2008)
Oracle Database 11g Release 2: 11.2.0.1 (released 2009-09-01)
The version-numbering syntax within each release follows the pattern:
major.maintenance.application-server.component-specific.platform-specific.
For example, "10.2.0.1 for 64-bit Solaris" means: 10th major version of Oracle,
maintenance level 2, Oracle Application Server (OracleAS) 0, level 1 for Solaris 64-bit.
The Oracle Administrator's Guide offers further information on Oracle release numbers.
Oracle Corporation provides a table[35] showing the latest patch-set releases by major
release, operating-system, and hardware-architecture.
[edit] List of claimed firsts
This article needs additional citations for verification.
Please help improve this article by adding reliable references. Unsourced material may be challenged
and removed. (December 2007)
Oracle Corporation claims to have provided:








the first commercially-available SQL-based database (1979)[36]
the first database to support symmetric multiprocessing (SMP) (1983)
the first distributed database (1986)
the first database product tested to comply with the ANSI SQL standard (1993)[36]
the first 64-bit database (1995)
the first database to incorporate a native JRE (1998)
the first proprietary RDBMS to become available on Linux (1998)[37]
the first database to support XML (1999)
[edit] Editions
Over and above the different versions of the Oracle database management software,
Oracle Corporation subdivides its product into varying "editions" - apparently for
marketing and license-tracking reasons. In approximate order of decreasing scale, we
find:





Enterprise Edition[38] (EE) includes more features than the 'Standard Edition',
especially in the areas of performance and security. Oracle Corporation licenses
this product on the basis of users or of processors, typically for servers running 4
or more CPUs. EE has no memory limits, and can utilize clustering using Oracle
RAC software.
Standard Edition[39] (SE) contains base database functionality. Oracle Corporation
licenses this product on the basis of users or of processors, typically for servers
running from one to four CPUs. If the number of CPUs exceeds 4 CPUs, the user
must convert to an Enterprise license. SE has no memory limits, and can utilize
clustering with Oracle RAC at no additional charge.
Standard Edition One,[40] introduced with Oracle 10g, has some additional
feature-restrictions. Oracle Corporation markets it for use on systems with one or
two CPUs. It has no memory limitations.
Express Edition[41] ('Oracle Database XE'), introduced in 2005, offers Oracle 10g
free to distribute on Windows and Linux platforms. It has a footprint of only 150
MB and is restricted[by whom?] to the use of a single CPU, a maximum of 4 GB of
user data. Although it can install on a server with any amount of memory, it uses a
maximum of 1 GB.[42] Support for this version comes exclusively through on-line
forums and not through Oracle support.
Oracle Database Lite,[43] intended for running on mobile devices. The database
located on the mobile device can synchronize with a server-based installation.
[edit] Host platforms
Prior to releasing Oracle9i in 2001, Oracle Corporation ported its database product to a
wide variety of platforms. More recently Oracle Corporation has consolidated on a
smaller range of operating-system platforms.
As of October 2006, Oracle Corporation supported the following operating systems and
hardware platforms for Oracle Database 10g:







Apple Mac OS X Server: PowerPC
HP HP-UX: PA-RISC, Itanium
HP Tru64 UNIX: Alpha
HP OpenVMS: Alpha, Itanium
IBM AIX5L: IBM POWER
IBM z/OS: zSeries
Linux: x86, x86-64, PowerPC, zSeries, Itanium


Microsoft Windows: x86, x86-64, Itanium
Sun Solaris: SPARC, x86, x86-64
[edit] Related software
For links to some of Oracle Corporation's software which integrates with Oracle
databases, see the Oracle Corporation category and the Oracle software category pages.
[edit] Database options
Oracle Corporation refers to some extensions to the core functionality of the Oracle
database as "database options".[44] As of 2008 such options include:



















Active Data Guard (extends Oracle Data Guard physical standby functionality in
11g)
Advanced Security (adds data encryption methods)
Content database (provides a centralized repository for unstructured information)
Database Vault (enforces extra security on data access)
Data Mining (ODM) (mines for patterns in existing data)
In-Memory Database Cache (utilizes TimesTen technology)
Label Security (enforces row-level security)
Management Packs (various)
Oracle Answers (for ad-hoc analysis and reporting)
Oracle OLAP (adds analytical processing)
Oracle Programmer (provides programmatic access to Oracle databases via
precompilers, interfaces and bindings)[45]
Partitioning (granularizes tables and indexes for efficiency)
Real Application Clusters (RAC) (coordinates multiple database servers, together
accessing the same database)
Oracle Real Application Testing (new at version 11g) — including Database
Replay (for testing workloads) and SQL Performance Analyzer (SPA) (for
preserving SQL efficiency in changing environments)[46]
Records database (a records management application)
Oracle Spatial (integrates relational data with geographic information systems
(GIS))
Transparent Gateway for connecting to non-Oracle systems. Offers optimized
solution, with more functionality and better performance than Oracle Generic
Connectivity.
Total Recall (optimizes long-term storage of historical data)
Oracle Warehouse Builder (in various forms and sub-options)
This list is incomplete; you can help by expanding it.
In most cases, using these options entails extra licensing costs.[47]
[edit] Suites
In addition to its RDBMS, Oracle Corporation has released several related suites of tools
and applications relating to implementations of Oracle databases. For example:






Oracle Application Server, a J2EE-based application server, aids in developing
and deploying applications which utilise Internet technologies and a browser.
Oracle Collaboration Suite contains messaging, groupware and collaboration
applications.
Oracle Developer Suite contains software development tools, including
JDeveloper.
Oracle E-Business Suite collects together applications for enterprise resource
planning (including Oracle Financials), customer relationship management and
human resources management (Oracle HR).
Oracle Enterprise Manager (OEM) used by database administrators (DBAs) to
manage the DBMS, and recently in version 10g, a web-based rewrite of OEM
called "Oracle Enterprise Manager Database Control". Oracle Corporation has
dubbed the super-Enterprise-Manager used to manage a grid of multiple DBMS
and Application Servers "Oracle Enterprise Manager Grid Control".
Oracle Programmer/2000, a bundling of interfaces for 3GL programming
languages, marketed with Oracle7 and Oracle8.[48][49]
[edit] Database "features"
Apart from the clearly-defined database options, Oracle databases may include many
semi-autonomous software sub-systems, which Oracle Corporation sometimes refers to
as "features" in a sense subtly different from the normal usage of the word.[50] Such
"features" may include (for example):












Active Session History (ASH), the collection of data for immediate monitoring of
very recent database activity.[51]
Automatic Workload Repository (AWR), providing monitoring services to Oracle
database installations from Oracle version 10. Prior to the release of Oracle
version 10, the Statspack facility provided similar functionality.
Clusterware
Data Aggregation and Consolidation
Data Guard for high availability
Generic Connectivity for connecting to non-Oracle systems.
Data Pump utilities, which aid in importing and exporting data and metadata
between databases[52]
Database Resource Manager (DRM), which controls the use of computing
resources.[53]
Fine-grained auditing (FGA) (in Oracle Enterprise Edition[54]) supplements
standard security-auditing features[55]
Flashback for selective data recovery and reconstruction[56]
iSQL*Plus, a web-browser-based graphical user interface (GUI) for Oracle
database data-manipulation (compare SQL*Plus)
Oracle Data Access Components (ODAC), tools which consist of:[57]
Oracle Data Provider for .NET (ODP.NET)[58]
Oracle Developer Tools (ODT) for Visual Studio
Oracle Providers for ASP.NET
Oracle Database Extensions for .NET
Oracle Provider for OLE DB
Oracle Objects for OLE
Oracle Services for Microsoft Transaction Server
Oracle-managed files (OMF) -- a feature allowing automated naming, creation
and deletion of datafiles at the operating-system level.
Recovery Manager (rman) for database backup, restoration and recovery
SQL*Plus, a program that allows users to interact with Oracle database(s) via
SQL and PL/SQL commands on a command-line. Compare iSQL*Plus.
o
o
o
o
o
o
o



This list is incomplete; you can help by expanding it.
[edit] Standalone tools
Users can develop applications in Java and PL/SQL using tools such as Oracle
JDeveloper, Oracle Forms, or Oracle Reports. Oracle Corporation has started[clarification
needed]
a drive toward 'wizard'-driven environments with a view to enabling nonprogrammers to produce simple data-driven applications.
Oracle SQL Developer, a free graphical tool for database development, allows developers
to browse database objects, run SQL statements and SQL scripts, and edit and debug
PL/SQL statements. It incorporates standard and customized reporting.
[edit] Other databases marketed by Oracle Corporation
By acquiring other technology in the database field, Oracle Corporation has taken over:




TimesTen, a memory-resident database that can cache transactions and
synchronize data with a centralized Oracle database server. It functions as a realtime infrastructure software product intended for the management of low-latency,
high-volume data, of events and of transactions.
BerkeleyDB, a simple, high-performance, embedded database
Oracle Rdb, a legacy relational database for the OpenVMS operating system
MySQL a relational database purchased as part of its immediate previous owner,
Sun Microsystems
[edit] Using Oracle Database software
Users of Oracle databases may access the online documentation, the Oracle Technology
Network site, and the comp.databases.oracle Usenet discussion group. The Oracle
Technet site offers downloads of full-featured evaluation software. Users can also check
the Oracle FAQ site before posting questions to forums, mailing lists, etc. They can also
log on to http://asktom.oracle.com/ to post questions to and get answers from Tom Kyte,
a Vice-President of Oracle Corporation and the author of several Oracle books including
Expert One-On-One Oracle (ISBN 1-59059-525-4).
The Oracle RDBMS has had a reputation among novice users as difficult to install on
Linux systems.[citation needed] Oracle Corporation has packaged recent versions for several
popular Linux distributions in an attempt to minimize installation challenges beyond the
level of technical expertise required to install a database server.[citation needed]
[edit] Official support
Users who have Oracle support contracts should turn to Oracle's MetaLink web site
(password required). MetaLink provides users of Oracle Corporation products with a
repository of reported problems, diagnostic scripts and solutions. It also integrates with
the provision of support tools, patches and upgrades.
The Remote Diagnostic Agent or RDA[59] can operate as a command-line diagnostic
tool executing a script. The data captured provides an overview of the Oracle Database
environment intended for diagnostic and trouble-shooting. Within RDA, the HCVE
(Health Check Validation Engine)[60] can verify and isolate host system environmental
issues that may affect the performance of Oracle software.
[edit] Database-related guidelines
Oracle Corporation also endorses certain practices and conventions as enhancing the use
of its database products. These include:


Oracle Maximum Availability Architecture (MAA), guidelines on developing
high-availability systems
Optimal Flexible Architecture (OFA), blueprints for mapping Oracle-database
objects to file-systems
[edit] Oracle Certification Program
Main article: Oracle Certification Program
The Oracle Certification Program, a professional certification program, includes the
administration of Oracle Databases as one of its main certification paths. It contains three
levels:
1. Oracle Certified Associate (OCA)
2. Oracle Certified Professional (OCP)
3. Oracle Certified Master (OCM)
[edit] User groups
A variety of official (Oracle-sponsored)[61] and unofficial user groups has grown up of
users and developers of Oracle databases. They include:







Oracle Technology Network
Independent Oracle Users Group
Geographical/regional user groups
Product-centric user groups
Industry-centric user groups
The Oak Table Network
Usenet comp.databases.oracle groups
[edit] Market position
[edit] Competition
In the market for relational databases, Oracle Database competes against commercial
products such as IBM's DB2 UDB and Microsoft SQL Server. Oracle and IBM tend to
battle for the mid-range database market on UNIX and Linux platforms, while Microsoft
dominates the mid-range database market on Microsoft Windows platforms. However,
since they share many of the same customers, Oracle and IBM tend to support each
other's products in many middleware and application categories (for example:
WebSphere, PeopleSoft, and Siebel Systems CRM), and IBM's hardware divisions work
closely with Oracle on performance-optimizing server-technologies (for example, Linux
on zSeries). The two companies have a relationship perhaps best described as
"coopetition". Niche commercial competitors include Teradata (in data warehousing and
business intelligence), Software AG's ADABAS, Sybase, and IBM's Informix, among
many others.
Increasingly, the Oracle database products compete against open-source relational
database systems, particularly PostgreSQL, Firebird, and MySQL. Oracle acquired
Innobase, supplier of the InnoDB codebase to MySQL, in part to compete better in the
open source market. Database products developed on the basis of the open-source model
generally cost significantly less to acquire than Oracle systems.
In 2007, competition with SAP AG occasioned litigation from Oracle Corporation.[62]
[edit] Pricing
Oracle Corporation offers term licensing for all Oracle products. It bases the list price for
a term-license on a specific percentage of the perpetual license price.[63]
Enterprise Edition
As of March 2006, the database that costs the most per machine-processor among
Oracle database editions.
Standard Edition
Cheaper: it can run on up to four processors but has fewer features than Enterprise
Edition—it lacks proper parallelization,[64] etc; but remains quite suitable for
running medium-sized applications.
Standard ONE
Sells even more cheaply, but remains limited to two CPUs. Standard Edition ONE
sells on a per-seat basis with a five-user minimum. Oracle Corporation usually
sells the licenses with an extra 22% cost for support and upgrades (access to
MetaLink - Oracle Corporation's support site) which customers need to renew
annually.
Oracle Express Edition (Oracle XE)
An addition to the Oracle database product family (beta version released in 2005,
production version released in February 2006), offers a free version of the Oracle
RDBMS, but one limited to 4 GB of user data and to 1 GB of RAM (SGA+PGA).
XE will use no more than one CPU and lacks an internal JVM. XE runs only
released on Windows and on Linux, not on AIX, Solaris, HP-UX and the other
operating systems available for other editions.
As computers running Oracle often have eight or more processors, the software price can
rise into the hundreds of thousands of dollars. The total cost of ownership often exceeds
this, as large Oracle installations usually require experienced and trained database
administrators to do the set-up properly. Because of the product's large installed base and
available training courses, Oracle specialists in some areas have become a more abundant
resource than those for more exotic databases. Oracle frequently provides special training
offers for database-administrators.
On Linux, Oracle's certified configurations include mostly commercial Linux
distributions (Red Hat Enterprise Linux 3 and 4, SuSE SLES8 and 9, Asianux) which can
cost in a range from a few hundred to a few thousand USD per year (depending on
processor architecture and the support package purchased).
The Oracle database system can also install and run on freely-available Linux
distributions such as the Red Hat-based Centos,[65] or Debian-based systems.[66]
[edit] See also
Wikibooks has a book on the topic of
Oracle database







List of relational database management systems
List of object-relational database management systems
Comparison of relational database management systems
Comparison of object-relational database management systems
Oracle Rdb for OpenVMS
List of ERP software packages
Run Book Automation
[edit] References
1. ^ IDC: Oracle Maintains Lead in Database Market
2. ^ Welcome to Larryland
3. ^ Bhakthavatsalam, Namrata (August 2008). "Glossary". Oracle Database Client
Installation Guide 11g Release 1 (11.1) for AIX Based Systems Part Number
B32077-03. Oracle.
http://download.oracle.com/docs/cd/B28359_01/install.111/b32077/glossary.htm?
type=popup#BABEBJAG. Retrieved 2008-11-17. "The SID automatically
defaults to the database name portion of the global database name (sales in the
example sales.us.example.com) until you reach eight characters or enter a period.
You can accept or change the default value."
4. ^ Watkins, Bob (2007-01-30). "Look inside ASM disk groups with Oracle
10gR2's ASMCMD". techrepublic.com. ZDNet.
http://articles.techrepublic.com.com/5100-10878_11-6154262.html. Retrieved
2009-07-30. "In 10g, Oracle introduced a new kind of storage for its database
product. Automatic Storage Management (ASM) is a logical volume manager that
takes physical disk partitions and manages their contents [...] Until ASM, there
were only two choices: file system storage and raw disk storage."
5. ^ Nyffenegger, René. "Control files [Oracle]". René Nyffenegger's collection of
things on the web. http://www.adp-gmbh.ch/ora/concepts/controlfiles.html.
Retrieved 2009-07-30. "The control files of a database store the status of the
physical structure of the database."
6. ^ Oracle FAQ
7. ^ Known schemas in Oracle
8. ^ Optimizer plan stability definition
9. ^ Oracle's sample schemas
10. ^ Oracle Architecture, System Global Area
11. ^ Oracle architecture, the library cache section
12. ^ Oracle Architecture, data dictionary cache
13. ^ Oracle architecture, Program Global Area section
14. ^ PGA Definition, Oracle Database Master Glossary
15. ^ Oracle Process architecture concepts
16. ^
http://my.safaribooksonline.com/9780072263053/new_background_processes_in
_10 Niemiec, Richard (2007-06-25) "1.30. New Background Processes in 10g"
Oracle Database 10g Performance Tuning: Tips & TechniquesOracle
Pressp. 967ISBN 978-0-0722-6305-3
http://my.safaribooksonline.com/9780072263053/new_background_processes_in
_10. Retrieved 2009-08-12 "MMON Memory Monitor process is associated with
the Automatic Workload Repository new features used for automatic problem
detection and self-tuning. MMON writes out the required statistics for AWR on a
scheduled basis."
17. ^
http://my.safaribooksonline.com/9780072263053/new_background_processes_in
_10 Niemiec, Richard (2007-06-25) "1.30. New Background Processes in 10g"
Oracle Database 10g Performance Tuning: Tips & TechniquesOracle
Pressp. 967ISBN 978-0-0722-6305-3
http://my.safaribooksonline.com/9780072263053/new_background_processes_in
_10. Retrieved 2009-08-12 "M000 These are MMON background slave (m000)
processes."
18. ^ Cyran, Michele; Paul Lane (2005). "Process Architecture". Oracle Database
Concepts. Oracle Corporation.
http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/process.htm#s
thref1481. Retrieved 2008-08-13. "When a user runs an application program
(such as a Pro*C program) or an Oracle tool (such as Enterprise Manager or
SQL*Plus), Oracle creates a user process to run the user's application."
19. ^ Cyran, Michele; Paul Lane (2005). "Process Architecture". Oracle Database
Concepts. Oracle Corporation.
http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/process.htm#s
thref1481. Retrieved 2008-08-13. "A connection is a communication pathway
between a user process and an Oracle instance."
20. ^ Cyran, Michele; Paul Lane (2005). "Process Architecture". Oracle Database
Concepts. Oracle Corporation.
http://download.oracle.com/docs/cd/B19306_01/server.102/b14220/process.htm#s
thref1481. Retrieved 2008-08-13. "A session is a specific connection of a user to
an Oracle instance through a user process"
21. ^ Morales, Tony (2008). "V$SESSION". Oracle Database Reference 11g Release
1(11.1). Oracle.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28320/dynviews_30
16.htm. Retrieved 2008-11-17.
22. ^ Chan, Immanuel (July 2008). "Glossary". Oracle Database Performance
Tuning Guide 11g Release 1 (11.1). Oracle Corporation.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28274/glossary.htm?
type=popup#sthref1649. Retrieved 2009-04-29. "enqueue[:] This is another term
for a lock."
23. ^ "Oracle Database Master Glossary: 11g Release 1 (11.1)". Oracle Corporation.
http://download.oracle.com/docs/cd/B28359_01/mix.111/b14388/gloss-l.htm.
Retrieved 2009-04-24. "latch[:] A simple, low-level serialization mechanism to
protect shared data structures in the System Global Area."
24. ^ Strohm, Richard; et al. (October 2008). "Parameter Files". Oracle Database
Concepts 11g Release 1 (11.1). Oracle Corporation.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/intro.htm#sthr
ef23. Retrieved 2009-07-14. "Parameter files contain a list of configuration
parameters for that instance and database."
25. ^ Strohm, Richard; et al. (October 2008). "Initialization Parameter Files and
Server Parameter Files". Oracle Database Concepts 11g Release 1 (11.1). Oracle
Corporation.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/startup.htm#i
9633. Retrieved 2009-07-14.
26. ^ Morales, Tony; et al. (April 2009). "V$PARAMETER". Oracle Database
Reference 11g Release 1 (11.1). Oracle Corporation.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28320/dynviews_2.h
tm#insertedID85. Retrieved 2009-07-14. "V$PARAMETER displays information
about the initialization parameters that are currently in effect for the session."
27. ^ Morales, Tony; et al. (April 2009). "V$SPPARAMETER". Oracle Database
Reference 11g Release 1 (11.1). Oracle Corporation.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28320/dynviews_3.h
tm#insertedID41. Retrieved 2009-07-14. "V$SPPARAMETER displays
information about the contents of the server parameter file."
28. ^ "Locale Languages".
http://download.oracle.com/docs/cd/B19306_01/server.102/b14225/applocaledata
.htm#i634428. Retrieved 2008-02-26.
29. ^ "Error Message languagues".
http://download.oracle.com/docs/cd/B19306_01/server.102/b14225/applocaledata
.htm#i634673. Retrieved 2008-02-26.
30. ^ Shea, Cathy; et al. (September 2007). "Overview of Globalization Support".
Oracle Database Globalization Support Guide 11g Release 1 (11.1). Oracle
Corporation.
http://download.oracle.com/docs/cd/B28359_01/server.111/b28298/ch1overview.
htm#sthref8. Retrieved 2009-02-16. "In the past, Oracle referred to globalization
support capabilities as National Language Support (NLS) features. NLS is
actually a subset of globalization support. NLS is the ability to choose a national
language and store data in a specific character set. Globalization support enables
you to develop multilingual applications and software products that can be
accessed and run from anywhere in the world simultaneously."
31. ^ As Larry Ellison said in an Oracle OpenWorld keynote presentation on 200711-11: "Who'd buy a version 1.0 from four guys in California?"
32. ^ a b c d e http://www.oracle.com/oramag/profit/07-may/p27anniv_timeline.pdf
33. ^ Compare http://www.oracle.com/oramag/profit/07-may/p27anniv_timeline.pdf
34. ^ "Oracle Database 10g Sets New Record for TPC-H Three TB Benchmark".
http://www.itmanagement.com/press-releases/oracle-tpc-h-record-060806/.
Retrieved 2008-01-31.
35. ^ Oracle Database Patch Sets
36. ^ a b Greenwald, R., Stackowiak R., & Stern, J. (2001). Oracle Essentials:
Oracle9i, Oracle8i & Oracle8 (2nd edition). Cambridge, MA: O'Reilly.
37. ^ http://www.oracle.com/technologies/open-source/docs/oracle-opensourceds.pdf; but compare Informix's claim to priority:
http://www.linuxjournal.com/article/3110, retrieved 2008-02-13 and that of
Polyhedra
38. ^ Enterprise Edition
39. ^ Standard Edition
40. ^ Standard Edition One
41. ^ Express Edition
42. ^ FAQ on Express Edition
43. ^ "Oracle Database Lite 10g". oracle.com. Oracle Corporation.
http://www.oracle.com/database/lite_edition.html. Retrieved 2009-06-23. "[...] for
developing, deploying and managing applications for mobile and embedded
environments."
44. ^ Oracle database options
45. ^ See
download.oracle.com/docs/cd/B28359_01/license.111/b28287/options.htm#CIHB
DGAD
46. ^ ""Real Application Testing Overview"". Oracle Corporation. August 2007.
http://www.oracle.com/technology/products/manageability/database/pdf/wp07/ow
p_real_application_testing_11g.pdf. Retrieved 2008-05-19.
47. ^ See "Term licenses" at http://oraclestore.oracle.com/ for various
markets/countries.
48. ^ "Oracle Programmer/2000" (PDF). Oracle Corporation.
http://www.alise.lv/ALISE/mrktinfo.nsf/6022a43db1063796c22566de00392130/4
20e0389f8672386c225645e00344ecb/$FILE/Oracle%20Programmer%202000%2
0data%20sheet%20Feb97.pdf. Retrieved 2009-02-25. "Oracle Programmer/2000
is a suite of programmatic interfaces that allows you to access and manipulate
Oracle7 data and schemas. Programmer/2000 provides a rich set of interfaces and
supports many programming languages, allowing the programmer to use the
programming language and the programming paradigm of choice."
49. ^ "Other Ways of Working with Oracle". Oracle Corporation.
http://download.oracle.com/docs/cd/A58617_01/server.804/a53717/ch1.htm#inde
x0015. Retrieved 2009-02-25. "Programmer/2000[:] a set of 3GL programming
language interfaces"
50. ^ For example, Oracle Data Guard counts officially as a "feature", but the
command-stack within SQL*Plus, though a usability feature, does not appear in
the list of "features" in
http://download.oracle.com/docs/cd/B19306_01/license.102/b14199/editions.htm
#CJACGHEB
51. ^ Alapati, Sam R. (2005) Expert Oracle database 10g
administrationApressp. 845ISBN 9781590594513
http://books.google.co.nz/books?id=xxx0KAwY_ZMC&pg=PA845&lpg=PA845
&dq=ASH++Active+Session+History&source=bl&ots=4DmmvFmU7v&sig=vp
Ot0kvOidJo-iSC-EJ_kRTyDAI&hl=en&ei=bEZSo3qBISIkAXKoyk&sa=X&oi=book_result&ct=result&resnum=8#PPA845,
M1. Retrieved 2009-05-25 "... ASH records very recent session activity (within
the last five or ten minutes)."
52. ^ Overview of Oracle Data Pump
53. ^ Greenwald, Rick; Robert Stackowiak, Jonathan Stern (November 2007). Oracle
Essentials: Oracle Database 11g. O'Reilly. p. 184. ISBN 978-0596514549. "The
Database Resource Manager (DRM) was first introduced in Oracle8i [...] to place
limits on the amount of computer resources that can be used [...]"
54. ^ "Feature Availability by Edition". Oracle Database Licensing Information 11g
Release 1 (11.1) Part Number B28287-08. Oracle Corporation. May 2008.
http://download.oracle.com/docs/cd/B28359_01/license.111/b28287/editions.htm
#CJACGHEB. Retrieved 2008-08-19.
55. ^ Nanda, Arup. "Auditing Tells All". Oracle Database 10g: The Top 20 Features
for DBAs. Oracle Corporation.
http://www.oracle.com/technology/pub/articles/10gdba/week10_10gdba.html.
Retrieved 2008-08-19. "...the standard audit (available in all versions) and the
fine-grained audit (available in Oracle9i and up ..."
56. ^
http://www.oracle.com/technology/deploy/availability/htdocs/Flashback_Overvie
w.htm
57. ^ "Oracle Product Accessibility Status: Database Server Enterprise Edition".
Oracle Corporation. 2008-06-02.
http://www.oracle.com/accessibility/templates/t1286.html. Retrieved 2009-04-14.
58. ^ "Oracle Data Provider for .NET". Oracle Corporation.
http://www.oracle.com/technology/tech/windows/odpnet/index.html. Retrieved
2009-05-07. "The Oracle Data Provider for .NET (ODP.NET) features optimized
ADO.NET data access to the Oracle database."
59. ^
http://www.oracle.com/global/tr/support/051006_ADVANCEDMETALINK_CU
STOMER.pdf page 10. Retrieved 2008-05-08.
60. ^ Rea, Stephen (2008-09-16). "Upgrading Oracle 9.2.0.6 to 10.2.0.3 on AIX 5.2".
University of Arkansas. http://www.uaex.edu/srea/10gR2_upgrade.txt. Retrieved
2009-08-11. "Run the PreInstall checklist for Oracle 10.2.0 (Metalink Note
250262.1: RDA 4 - Health Check / Validation Engine Guide): The Health Check
Validation Engine (HCVE) rule set for Oracle Database 10g R2 (10.2.0)
PreInstall (AIX) is described in:
https://metalink.oracle.com/metalink/plsql/docs/HCVE_A201DB10R2_aix.htm"
61. ^ See Oracle User Group
62. ^ About the case in Hungarian
63. ^ See the published price list.
64. ^ Oracle Database Licensing Information Database Editions
65. ^ Installation centos; official Oracle Wiki
66. ^ Installation on Debian-based systems; official Oracle Wiki
[edit] Bibliography

Loney, Kevin (December 17, 2008), Oracle Database 11g The Complete Reference (1st
ed.), McGraw-Hill, p. 1368, ISBN 0071598758,
http://www.mhprofessional.com/product.php?isbn=0071598758, retrieved 2009-09-05
[edit] External links


Oracle Database, a view provided by Oracle Corporation
Oracle Database Documentation
[hide]
v•d•e
Database management systems
Database models · Database normalization · Database storage · Distributed DBMS ·
Federated database system · Referential integrity · Relational algebra · Relational
calculus · Relational database · Relational DBMS · Relational model · Objectrelational database · Transaction processing
Concepts
Objects
SQL
Components
Database · ACID · CRUD · Null · Candidate key · Foreign key ·
Primary key · Superkey · Surrogate key · Armstrong's axioms
Relation (Table) · View · Transaction · Log · Trigger · Index · Stored
procedure · Cursor · Partition
Select · Insert · Update · Merge · Delete · From · Join · Union ·
Create · Drop · Start Transaction · Commit · Rollback · Truncate ·
Alter · Where
Concurrency control · Data dictionary · JDBC · ODBC · Query
language · Query optimizer · Query plan
Database products: Object-oriented (comparison) · Relational (comparison) ·
Document-oriented
Retrieved from "http://en.wikipedia.org/wiki/Oracle_Database"
Categories: Database management systems