WEB开发网
开发学院数据库MSSQL Server Oracle 10g vs PostgreSQL 8 vs MySQL 5(外围特性... 阅读

Oracle 10g vs PostgreSQL 8 vs MySQL 5(外围特性评比)

 2007-11-11 09:50:36 来源:WEB开发网   
核心提示: Suita Gupta (suitag@my.ibm.com), 技术顾问, IBM MalaysiaAllan Tham (thamawh@my.ibm.com), 售前服务专家,ASEAN Techline, IBMRaul F. Chong (rfchong@ca.ibm.com), DB2 UDB 专家, I

Suita Gupta (suitag@my.ibm.com), 技术顾问, IBM Malaysia
Allan Tham (thamawh@my.ibm.com), 售前服务专家,ASEAN Techline, IBM
Raul F. Chong (rfchong@ca.ibm.com), DB2 UDB 专家, IBM

   简介

   在 developerWorks 的上一篇文章 中,我们谈到了如何利用 MS sql server(WINDOWS平台上强大的数据库平台) 2000 方面的技能学习 DB2.您对 Oracle(大型网站数据库平台) 背景知识的熟悉程度更超过 sql server(WINDOWS平台上强大的数据库平台) 吗?如果是这样,那么请继续阅读。在本文中,我们将展示如何使用您现有的 Oracle(大型网站数据库平台) 10g 知识来快速掌握 DB2 9 方面的技能。

   在 2006 年 7 月 28 日,IBM 发布了 DB2 9 for Linux, UNIX, and Windows,这是一种真正的混合型数据服务器,可满足当今苛刻的业务需求。 DB2 9 是当今惟一采用 purexml(标准化越来越近了)? 技术的数据服务器,这种技术允许以原生的形式存储 xml(标准化越来越近了),也就是说,以分层格式存储 xml(标准化越来越近了). DB2 9 的其他特性包括行压缩、基于标签的访问控制(label based access control,LBAC)安全性以及自调优内存管理器(Self-tuning Memory Manager,STMM)等自治特性。本文首先对 DB2 与 Oracle(大型网站数据库平台) 作一个比较,然后着重介绍 DB2 9 中的新特性。

   注意:在本文后面的内容中,我们将使用术语 “Oracle(大型网站数据库平台)” 来表示 Oracle(大型网站数据库平台) 10g Release 2,而用 “DB2” 表示 DB2 9 for Linux, UNIX, and Windows.

系统结构概述

首先,我们需要理解 Oracle(大型网站数据库平台) 使用的架构,并理解它与 DB2 的不同之处。图 1 展示了 Oracle(大型网站数据库平台) 的系统结构。将该图与 图 2 进行比较,后者显示了 DB2 的系统结构。在阅读本文的时候,为便于理解,可以参照这两个图。


图 1. Oracle(大型网站数据库平台) on Linux, UNIX, and Windows Version 10.2 的系统结构
利用 Oracle<font class=reblank  style=(大型网站数据库平台) 10g 技能学习 DB2 9.1(图一)" width="572" height="410" />

图 2. DB2 on Linux, UNIX, and Windows 系统结构
利用 Oracle<font class=reblank  style=(大型网站数据库平台) 10g 技能学习 DB2 9.1(图二)" width="572" height="410" /> 

   实例

   在 Oracle(大型网站数据库平台) 和 DB2 中,实例 的概念是类似的。在这两者之中,实例都是指后台进程与共享内存的组合。两者之间的主要差别在于,在 Oracle(大型网站数据库平台) 中每个实例只能有一个数据库,而在 DB2 中多个数据库可以共享一个实例。

   在 Oracle(大型网站数据库平台) 中,由于数据库与实例是一对一的关系,因此用 CREATE DATABASE 命令创建一个数据库的同时便隐式地创建了一个实例。或者,为了在计算机上创建一个 Oracle(大型网站数据库平台) 实例,也可以使用 Database Configuration Assistant,或者使用 ORADIM 实用程序,后者是 Oracle(大型网站数据库平台) 9i 通过 NEW 选项提供的。另外还必须提供某些信息,包括系统标识符(System Identifier,SID)或一个服务名称、实例密码、最大用户数、启动模式等等。类似地,为了删除实例,可以使用 ORADIM 实用程序加 DELETE 选项。这里需要提供 SID 或服务名称。除非在安装过程中创建一个新的数据库,否则在以 fresh 方式安装 Oracle(大型网站数据库平台) 的时候,不会创建缺省的实例。

   在 DB2 中,当在 Windows 平台上安装了该产品之后,便缺省地创建了一个实例 "DB2".在 Linux 和 UNIX 中,缺省的实例名称为 "db2inst1".若要在同一台计算机上创建另一个实例,只需执行命令 db2icrt <instance name>.

   图 3 展示了缺省的 DB2 实例 “DB2”(在 Windows 中)和从 DB2 Control Center GUI 中用 db2icrt 命令创建的另外两个实例。

图 3. 显示 DB2 实例的 DB2 Control Center GUI
利用 Oracle<font class=reblank  style=(大型网站数据库平台) 10g 技能学习 DB2 9.1(图三)" width="572" height="149" /> 

   若要在命令行接口中引用给定的 DB2 实例,可以使用环境变量 DB2INSTANCE.通过这个变量,可以指定当前活动实例,所有命令将应用到此实例。例如,如果 DB2INSTANCE 被设置为 PROD,然后您执行了命令 create database MYDB1,将创建一个与实例 PROD 关联的数据库。如果要在实例 DB2 上创建该数据库,那么必须首先将 DB2INSTANCE 变量的值改为 DB2.这类似于 Oracle(大型网站数据库平台)_SID (System Identifier),当用户想要在不同实例之间进行切换时,也是使用 Oracle(大型网站数据库平台)_SID.

   还有一种标识要使用的实例的简单方法,那就是使用 DB2 Control Center GUI,如 图 3 所示。要在该工具中看到对应于新实例的条目,需要通过右击 Instances 并选择 Add 来将该实例添加到此工具中。要删除 DB2 中的一个实例,可以执行命令 db2idrop <instance name>.

   总之,在 Oracle(大型网站数据库平台) 中,可以使用 Database Configuration Assistant 来创建、修改、启动、停止和删除实例,而在 DB2 中则可以使用 Control Center GUI 做同样的事情。而且,Oracle(大型网站数据库平台) 实例与数据库只能是一对一的关系,而在 DB2 中却不是这样。一个 DB2 实例中可以同时存在多个数据库,并且可以并发地使用这些数据库。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Oracle vs PostgreSQL

编辑录入:coldstar [复制链接] [打 印]
赞助商链接