欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

oracle历史回顾:oracle各版本发行时间及特点

程序员文章站 2022-03-30 11:52:50
今天在馆整理笔记,突然想到oracle的历史也不算短了,就猜想oracle的前身是什么?他的各个版本主要提供了哪些便利?于是便在网上搜了下,特整理如下: oracle自发布至今,也经历了一个从不稳定...

今天在馆整理笔记,突然想到oracle的历史也不算短了,就猜想oracle的前身是什么?他的各个版本主要提供了哪些便利?于是便在网上搜了下,特整理如下:

oracle自发布至今,也经历了一个从不稳定到稳定,从功能简单至强大的过程。从第二版开始,oracle的每一次版本变迁,都具有里程碑意义。

1979年的夏季,rsi(oracle公司的前身,relational software,inc)发布了oracle第二版。

1983年3月,rsi发布了oracle第三版。从现在起oracle产品有了一个关键的特性--可移植性。

1984年10月,oracle(rsi更名为oracle)发布了第4版产品。这一版增加了读一致性这个重要特性。

1985年,oracle发布了5.0版。这个版本是oracle数据库较为稳定的版本。并实现了c/s模式工作。

1986年,oracle发布了5.1版。该版本开始支持分布式查询。

1988年,oracle发布了第6版。该版本中引入了行级锁特性,同时还引入了联机热备份功能。

1992年6月,oracle发布了第7版。该版本增加了包括分布式事务处理功能、用于应用的新工具及安全性方法等功能。

1997年6月,oracle第8版发布。oracle8支持面向对象的开发及新的多媒体应用。

1998年9月,oracle公司正式发布oracle 8i。正是因为该版本对internet的支持,所以,在版本号之后,添加了标识i。

2001年6月,oracle发布了oracle 9i。

2003年9月,oracle发布了oracle 10g。这一版的最大特性就是加入了网格计算的功能,因此版本号之后的标识使用了字母g,代表grid--网格。

2007年7月11日,oracle发布了oracle 11g。oracle 11g实现了信息生命周期管(information lifecycle management)等多项创新。

oracle的最新版本为oracle 11g,但是,目前应用最广泛的版本为oracle 9i和oracle 10g。本书选取使用的版本为oracle 10g。

oracle具有强大的功能,因此,对于硬件要求也较高。oracle 10g安装的硬件要求如下:

1024mb以上的物理内存。

1.5~3.5 gb磁盘空间,具体大小由安装类型决定。

oracle数据库11g有多个版本可供选择: 标准版1、标准版和企业版。所有这些版本都使用相同的通用代码库构建,这意味着企业的数据库管理软件可以轻松地从规模较小的单一处理器服务器扩展到多处理器服务器集群,而无需更改一行代码。oracle数据库11g企业版还有许多其他增强了性能、可伸缩性、可用性、安全性和可管理性的功能选项。

软件环境如下:windows xp、windows 2003或者linux red hat 5.0以上版本。需要注意的是,windows vista与oracle 10g的兼容性较差,不推荐使用。

英文介绍

oracle 2 - 1979

first public release

basic sql functionality, queries and joins

connect by queries

written in pdp-11 assembly language, ran on vax/vms in compatibility mode

oracle 3 - 1981

atomic execution of sql statements and transactions (commit and rollback of transactions)

nonblocking queries (no more read locks)

re-written in the c-programming language

oracle 4 - 1984

read consistency

first interoperability between pc and database server

database ported to several platforms

oracle 5.1 - 1986

distributed queries

oracle 5.0 - 1985

supporting for the client-server model - pc's can access the db on remote host

oracle 6.2

oracle parallel server option (later renamed to real application clusters)

oracle 6.1

there was never an oracle 6.1 production release. however, a 6.1 version was made available to selected beta customers running on clustered hardware. apparently the database was so busy checking block status's between the machines that it killed the systems it ran on.

oracle 6 - july 1988

oltp performance enhancements

row-level locking

on-line database backups (alter tablespace begin/end backup)

new procedural option (tpo) - pl/sql in the database (*)

b*tree indexes implemented

rollback segments introduced

concept of tablespaces introduced

(*) functions, procedures, packages and triggers were not available until oracle 7.

oracle 7.3 - february 1996

partitioned views

bitmapped indexes

asynchronous read ahead for table scans

standby database

deferred transaction recovery on instance startup

updatable join views (with restrictions)

sql*dba no longer shipped.

index rebuilds

db_verify utility introduced

context option

spatial data option

tablespaces changes - coalesce, temporary/ permanent,

trigger compilation, debug

unlimited extents on storage clause.

some init.ora parameters modifiable - timed_statistics

hash joins, antijoins

histograms

dependencies

oracle trace

advanced replication object groups

pl/sql - utl_file

oracle 7.2 - may 1995

resizable, autoextend data files

shrink rollback segments manually

create table, index unrecoverable

subquery in from clause (inline view)

pl/sql wrapper

pl/sql cursor variables

checksums - db_block_checksum, log_block_checksum

parallel create table as (ctas)

job queues - dbms_job

dbms_space and dbms_application_info packages

sorting improvements - sort_direct_writes

oracle 7.1 - may 1994

ansi/iso sql92 entry level

oracle advanced replication - symmetric data replication

snapshot refresh groups

parallel recovery

dynamic sql - dbms_sql

parallel query options - query, index creation, data loading

server manager introduced

read only tablespaces

oracle 7.0 - june 1992

database integrity constraints (primary keys, foreign keys, check constraints, default values)

stored procedures and functions, procedure packages

database triggers

view compilation

user defined sql functions

role based security

multiple redo members - mirrored online redo log files

resource limits - profiles

much enhanced auditing

enhanced distributed database functionality: inserts, updates, deletes, 2pc

incomplete database recovery (e.g. scn based recovery)

cost based optimizer

truncate tables

datatype changes (i.e varchar2, char, varchar)

sql*net v2, mts

checkpoint process (ckpt)

data replication - snapshots

oracle 8 - 1997

object relational database (ordbms) features

object types (not just date, character, number as in v7)

sql3 standard

call external procedures

lob >1 per table

partitioned tables and indexes (new partitioning option)

partitions in multiple tablespaces

export/import inpidual partitions

online/offline, backup/recover inpidual partitions

merge/balance partitions

advanced queuing for message handling

many performance improvements to sql/plsql/oci making more efficient use of cpu/memory. v7 limits extended (e.g. 1000 columns/table, 4000 bytes varchar2)

parallel dml statements (update and delete)

connection pooling (uses the physical connection for idle users and transparently re-establishes the connection when needed) to support more concurrent users.

improved "star" query optimizer

integrated distributed lock manager in oracle ps (as opposed to operating system dlm in v7).

performance improvements in ops - global v$ views introduced across all instances, transparent failover to a new node

data cartridges introduced on database (e.g. image, video, context, time, spatial)

backup/recovery improvements - tablespace point in time recovery, incremental backups, parallel backup/recovery. recovery manager introduced (see rman)

security server introduced for central user administration. user password expiry, password profiles, allow custom password scheme. privileged database links (no need for password to be stored)

fast refresh for complex snapshots, parallel replication, pl/sql replication code moved in to oracle kernel. replication manager introduced.

index organized tables (iots)

deferred integrity constraint checking (deferred until end of transaction instead of end of statement).

sql*net replaced by net8

reverse key indexes

any view updateable (instead of triggers on views)

new rowid format

oracle 8i (8.1.7) - august 2000

static http server included (apache)

jvm accelerator to improve performance of java code

java server pages (jsp) engine

memstat - a new utility for analyzing java memory footprints

ois - oracle integration server introduced.

plsql gateway introduced for deploying pl/sql based solutions on the web

enterprise manager enhancements - including new html based reporting and advanced replication functionality included.

new database character set migration utility included.

oracle 8i (8.1.6) - november 1999

pl/sql server pages (psp's)

dba studio introduced

statspack - used for performance monitoring (much better that utlbstat/utlestat)

many new sql analytical functions like lag, lead and rank

alter freelists command (previously done by drop/create table)

checksums always on for system tablespace allowing many possible corruptions to be fixed before writing to disk (db_block_checking).

xml parser for java

new pl/sql encrypt/decrypt package introduced

jserver accelerator (native java compiler for each platform), java programs can run as machine code, not interpreted as with 8.1.5

native support for java2

new case statement in sql similar to the decode() function

new sql*plus command line options: sqlplus -markup [html...] and -restrict

user and schemas separated

cursor_sharing parameter - optimize shared pool for applications that do not use bind variables

numerous performance enhancements

oracle 8i (8.1.5) - february 1999

fast start recovery - checkpoint rate auto-adjusted to meet roll forward criteria

reorganize indexes/index only tables which users accessing data - online index rebuilds

log miner introduced - allows on-line or archived redo logs to be viewed via sql

ops cache fusion introduced avoiding disk i/o during cross-node communication

advanced queueing improvements (security, performance, oo4o support

user security improvements - more centralisation, single enterprise user, users/roles across multiple databases.

virtual private database (vpd)

integrated javavm (called aurora) in the database kernel allowing one to execute java stored procedures

integrated support for ejb (enterprise javabeans)

jsql: a specification for java-based sql database statements

integrated object request broker for standard corba communications between applications and the database

oracle ifs (internet file system)

resource management using priorities - resource classes

hash partitioning and composite partitioning

new partitioning features: merge partitions into one, updatable partition keys (allow movement of rows between partitions), can use lobs in partitioned tables

single table hash clusters

sql*loader direct load api

copy optimizer statistics across databases to ensure same access paths across different environments.

standby database - auto shipping and application of redo logs. read only queries on standby database allowed.

enterprise manager v2 delivered - completely rewritten in java

nls - euro symbol supported

analyze tables in parallel.

temporary tables supported (tables that will be truncated at the end of a transaction or session).

net8 support for ssl, http, hop protocols

transportable tablespaces, copy tablespaces with datafiles between databases

locally managed tablespaces - automatic sizing of extents, elimination of tablespace fragmentation, tablespace information managed in tablespace (i.e moved from data dictionary) improving tablespace reliability

drop column on table (finally!!!!!)

dbms_debug pl/sql package, dbms_sql replaced by new execute immediate statement

progress monitor to track long running dml, ddl

function based indexes - nls, case insensitive, descending, based on user defined function, etc.

index key compression: duplicate keys are combined to save space

oracle 9i release 2 (9.2.0) - may 2002

locally managed system tablespaces

oracle streams - new data sharing/replication feature (can potentially replace oracle advance replication and standby databases)

xml db (oracle is now a standards compliant xml database)

data segment compression (compress keys in tables - only when loading data)

cluster file system for windows and linux (raw devices are no longer required).

create logical standby databases with data guard

java jdk 1.3 used inside the database (jvm)

oracle data guard enhancements (sql apply mode - logical copy of primary database, automatic failover

security improvements - default install accounts locked, vpd on synonyms, aes, migrate users to directory

oracle 9i release 1 (9.0.1) - june 2001

traditional rollback segments (rbs) are still available, but can be replaced with automated system managed undo (smu). using smu, oracle will create it's own "rollback segments" and size them automatically without any dba involvement.

flashback query (dbms_flashback.enable) - one can query data as it looked at some point in the past. this feature will allow users to correct wrongly committed transactions without contacting the dba to do a database restore.

use oracle ultra search for searching databases, file systems, etc. the ultrasearch crawler fetch data and hand it to oracle text to be indexed.

oracle nameserver is still available, but deprecate in favour of ldap naming (using the oracle internet directory server). a nameserver proxy is provided for backwards compatibility as pre-8i client cannot resolve names from an ldap server.

oracle parallel server's (ops) scalability was improved - now called real application clusters (rac). full cache fusion implemented. any application can scale in a database cluster. applications doesn't need to be cluster aware anymore.

the oracle standby db feature renamed to oracle data guard. new logical standby databases replay sql on standby site allowing the database to be used for normal read write operations. the data guard broker allows single step fail-over when disaster strikes.

scrolling cursor support. oracle9i allows fetching backwards in a result set.

dynamic memory management - buffer pools and shared pool can be resized on-the-fly. this eliminates the need to restart the database each time parameter changes were made.

on-line table and index reorganization.

vi (virtual interface) protocol support, an alternative to tcp/ip, available for use with oracle net (sql*net). vi provides fast communications between components in a cluster.

build in xml developers kit (xdk). new data types for xml (xmltype), uri's, etc. xml integrated with aq.

cost based optimizer now also consider memory and cpu, not only disk access cost as before.

pl/sql programs can be natively compiled to binaries.

deep data protection - fine grained security and auditing. put security on db level. sql access do not mean unrestricted access.

resumable backups and statements - suspend statement instead of rolling back immediately.

list partitioning - partitioning on a list of values.

etl (extract, transformation, load) operations - with external tables and pipelining.

oracle olap - express functionality included in the db.

data mining - oracle darwin's features included in the db.

oracle 10g release 1 (10.1.0) - january 2004

grid computing - an extension of the clustering feature (real application clusters)

manageability improvements (self-tuning features)

performance and scalability improvements

automated storage management (asm)

automatic workload repository (awr)

automatic database diagnostic monitor (addm)

flashback operations available on row, transaction, table or database level

ability to undrop a table using a recycle bin

ability to rename tablespaces

ability to transport tablespaces across machine types (e.g windows to unix)

new 'drop database' statement

new database scheduler - dbms_scheduler

dbms_file_transfer package

support for bigfile tablespaces that are up to 8 exabytes in size

datapump - faster data movement with expdp and impdp

sysaux tablespace has been introduced

nid utility has been introduced to change the database name and/or id.

oracle 10g release 2 (10.2.0) - september 2005

transparent data encryption

async commits

the connect role can now only connect (create privs removed)

passwords for db links are encrypted

new asmcmd utility for managing asm storage

support for regular expressions in sql and pl/sql

oracle 11g - september 2009

new options: oracle rac one node, solution for consolidating less mission critical databases on the grid with most of the redundancy and availability provided by rac. an omotion utility is provided to migrate one node instances to other nodes in the cluster without any downtime to the application.

new features:

some of the new features include:

improved data compression ratios (up to 20x).

ability to upgrade database applications while users remain online.

new ease-of-use features that make grid computing more accessible.

automation of key systems management activities.