利用 DBCA 建立 Oracle9i 数据库上期专栏中曾介绍过如何在 Oracle9i 服务器执行 CREATE DATABASE 指令建立数据库。随即收到许多读者的热烈响应,其中有不少读者在建立数据库时碰到一些问题,并来信求助。我大致做一个归纳,发现大家最常碰到的问题不外以下两点:
n CREATE DATABASE 指令过于复杂,可否使用「数据库建置辅助精灵」建立新数据库?
n 如何治理服务器上第二个 Oracle9i 数据库? (例如激活或关闭)
其中「数据库建置辅助精灵」即为 Oracle Database Configuration Assistant,简称 DBCA。关于 DBCA 的使用方式我曾在第 24 期 linuxer 杂志的《Oracle9i 数据库治理实务讲座(一)》一文中介绍过。假如大家还有印象,当时曾介绍如何安装 Oracle9i 服务器软件。在安装过程最后一个步骤 Oracle Universal Installer 将激活 DBCA 协助您建立第一个 Oracle9i 数据库。当然啰,您也可以在任何时候单独激活 DBCA,进行特定数据库治理工作,例如:建立新数据库、组态既有数据库、治理 Oracle9i 数据库模板…等。最重要的是,它完全是 GUI 接口!只要遵循各项提示就可以轻易建立并治理 Oracle9i 数据库了。
至于如何治理第二个 Oracle9i 数据库就真的需要一点技巧。有些读者好不轻易成功建立了第二个数据库,但是却无法激活或关闭,更别说怎么使用了。本文也将针对这个部分进行说明。
首先,让我们来看看如何激活 DBCA?
利用 DBCA 建立 Oracle9i 数据库
在使用 DBCA 之前,先检视一下目前环境。以我的系统为例:操作系统为 SuSE Linux 7.2,安装了 Oracle9i EnterPRise Edition Release 9.0.1,Oracle9i 数据库的 ORACLE SID 设定为 ora901。
接着我们将经由 DBCA 建置第二个 Oracle9i 数据库,步骤如下:
1. 使用 oracle 帐号登入 Linux 系统,并执行 dbca 程序。执行后您将看到 DBCA 的激活画面,如下图1所示:
图1:DBCA 激活画面。
2.选择 DBCA 执行模式:
如下图2所示,Oracle9i DBCA 总共提供四种操作模式,协助您进行不同的数据库治理工作,分别是:
n 建置数据库 (Create a database)
n 组态数据库各项设定 (Configuration database options in a database)
n 删除数据库 (Delete a database)
n 模板治理 (Manage Templates)
前三项是 Oracle8i 就已支持的功能,第四项 “模板治理” 则是 Oracle9i DBCA 新增功能之一。值得注重的是,假如是由 Oracle Universal Installer 安装程序激活的 DBCA,则无法选取第二项与第三项。这里请选择第一项 “Create a database”。
图2:DBCA 提供的四种操作模式。
3.选择您欲建置的数据库模板:
DBCA 提供三种数据库预设模板文件。您可以直接使用这些模板文件建置新的 Oracle9i 数据库;或是依照实际环境需求,自行调整既有模板后再建置新数据库。三种预设数据库模板分别是:
n 资料仓储 (Data Warehouse)
n 线上交易处理 (Transaction processing)
n 一般性用途 (General Purpose)
之前我们曾使用过第三个 “General Purpose” 模板建立新数据库,因此这次我们选择第四个 “New Database” 选项。
图3:选择数据库模板种类。
4. 输入数据库识别资料:
首先您必须提供此数据库的 “Global Database Name”(全域数据库名称) 以及 SID。
所谓的「全域数据库名称」是从 Oracle8i 之后所提出,其主要目的是希望能够在网络上唯一识别每个 Oracle 数据库。它的格式通常是:
[Oracle SID 名称].[数据库主机所在网域名称]
以我的环境为例:目前数据库主机所在网域名称为 uuu.com.tw,第二个 Oracle9i 数据库的 SID 欲设定为 testdb。那么全域数据库名称就可以设定为 testdb.uuu.com.tw。如下图4所示。
图4:设定 Oracle9i 数据库识别资料。
5.选择数据库欲支持的选项:
DBCA 答应您在建立新数据库时指定欲支持的选项,其中:
n Oracle Spatial是 Oracle 数据库中存取多维资料的方法之一,通常用于地理信息系统(GIS)。所谓的 GIS 系统包含以下数据处理动作:资料采集、资料编辑、地图绘制、影像处理、报表产生与资料分析等。
n Oracle Ultra Search支持多媒体数据治理功能,例如声音、影像、动画与文字,可用来建置多元化的 Web 应用程序。
n Example Schema 是否建置 Oracle9i 提供的各式范例数据库对象。
图5:设定数据库欲支持的选项。
6.选择新数据库的运作模式:
Oracle9i 数据库可设定在两种模式下运作:
n 专属服务器模式(Dedicated Server Mode)
n 共享服务器模式(Shared Server Mode)
假如将数据库设定在 ”专属服务器模式”,则 Oracle9i 会针对每个客户端联机配置独立的系统资源;适用于联机数目较少的环境。反之,若是设定成 “共享服务器模式”,则多个客户端联机将共享所有系统资源。
图6:选择新数据库运作模式。
7.设定起始参数:
如图7所示,针对起始参数的设定共分成四个页签,分别是【Memory】、【Archive】、【DB Sizing】、【File Location】。以内存设定为例,DBCA 就提供了相当人性化的设定方式:
n Typical(典型)可设定同时间上线人数,并指定 SGA 总容量。较非凡的是,SGA 大小是以 “ 物理内存的百分比” 来设定。换句话说,您只要决定这个新数据库能够占用多少内存即可,DBCA 会适当的分配给 SGA 各区域。
nCustom(自订) 可以自行决定 SGA 各区域的内存配置数情况。此选项适合较有经验的数据库治理者。
图7:配置 Oracle Instance 所需内存。
8. 设定数据库封存模式:
「封存模式」(Archive Log Mode)是 Oracle 数据库非凡的运作模式。当数据库启用「封存模式」时,Oracle9i 会将线上重置日志文件(Online Redo Log Files) 另外备份至特定目录下,这就是所谓的「封存」(Archive)动作。激活「封存模式」的优点在于数据库备份工作较有弹性(有关 Oracle9i 数据库备份机制将在未来专栏中介绍),资料交易的安全性也相对提高;但缺点是系统负担较重。
假如您欲启用「封存模式」,请勾选图8中【Archive Log Mode】选项,并设定重置日志封存盘之格式。建议您将重置日志封存盘存放在其它硬盘,可有效提升封存动作之效率。
图8:是否启用封存模式。
9. 设定资料区块大小、排序内存与字符集:
此处有三个重要设定,分别是资料区块大小、排序内存最大值以及字符集。资料区块与字符集已在之前专栏内容介绍过,这里不再赘述。请非凡注重排序内存(Sort Area)的设定。一般来说,Oracle9i 会在内存内完成资料排序动作。假如数据库需要经常执行大量资料排序指令,则【Sort Area Size】应设大一点。
图9:设定资料区块、排序内存与字符集。
10.指定起始参数文件存放位置:
最后一个页签是指定起始参数档与追踪档(Trace files)的存放位置。您可以依照目前系统环境进行适当调整。假如您不清楚目前的 ORACLE_BASE 与 ORACLE_HOME 设定值,可点选右下角的【File Location Variables…】按钮。
图10:指定起始参数文件之存放位置。
到这里为止,较重要的数据库设定工作已大致完成,按下【ALL Initialization Parameters…】可检视所有起始参数设定值。
11.确认数据库档案存放位置:
在真正开始建立数据库以前,DBCA 会整理出各种数据库的存放位置。您可以先展开 Storage 下面的子资料夹,然后检视各档案实际存放路径;必要时可直接修改之。
图11:确认数据库档案存放位置。
12.建立数据库模板文件:
总算到了最后一个设定窗口,此时只要按下【Finish】就可以开始建立新数据库。尽管如此,还是建议您注重一下此处提供的模板建立功能。数据库模板治理是 Oracle9i DBCA 相当实用的功能之一,它答应您将先前所有数据库设定值储存起来,做为下次建置新数据库的参考。当您勾选【Save as a Database Template】之后就可以在下方的 Name 字段输入模板名称,以及必要的附注说明。
图12:选择是否建立此数据库之模板文件。
按下【Finish】之后就可以把剩下的工作交给 DBCA 了!它会先建置起始参数档,然后在激活 Oracle Instance 之后进行一连串的工作,如图13所示。实际建置时间需视您的硬设备而定。
图13:进行数据库建置过程
看到图14之窗口时就可以松一口气了。假如您想知道数据库建置过程具体信息,请到 /opt/oracle/admin/testdb/create 目录