分享
 
 
 

Oracle9i数据库管理实务讲座(五)

王朝oracle·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

手动建立 Oracle9i 数据库

前几期我们分别探讨 Oracle9i 核心要素与数据库实体组成,相信大家对于 Oracle9i 数据库服务器已经具有一定程度的了解了。本期我将介绍手动建置 Oracle9i 数据库的步骤与相关注意事项。

本文内容将涵盖下列主题:

n 建立数据库的前置工作

n 起始参数档的重要参数

n手动建立 Oracle9i 数据库的步骤

n如何移除 Oracle9i 数据库

不管原因为何,当您准备自行建立 Oracle9i 数据库时,都必须事先做好妥善准备。因为手动建立 Oracle9i 数据库并不是件容易的事,可能的话应该尽量使用 Oracle9i 提供的「数据库建置辅助精灵」来建立新数据库。但是要想成为一个合格的 Oracle DBA,您也必须熟稔手动建立数据库的方式,才能面对建置 Oracle9i 数据库所可能碰到的任何问题。

首先我们先看看建立 Oracle9i 数据库之前应注意那些事情。

建立 Oracle9i 数据库的前置处理工作

在开始建立新的 Oracle9i 数据库之前,建议您先做好下列准备工作:

n评估资料表与索引的存放位置,并预估其所需空间(如果可能的话)。

n 规划操作系统下数据库实体档案的部署方式 ― 良好的档案配置将大幅改善资料存取效能。不管是安装 Oracle 服务器软件或是建置新数据库时,都必须特别注意这点。例如说,您可以将重置日志文件 (Redo Log files) 置于其它磁盘或是 RAID 1磁盘阵列上;而将数据文件置于 RAID 5磁盘阵列上。

n选定「全域数据库名称」(global database name) ― 它是在网际网络上识别 Oracle9i 数据库的方式,由 数据库名称 与 网域名称 组成,分别设定在起始参数档的 DB_NAME 与 DB_DOMAIN 参数内。

n熟悉起始参数档内较重要的参数,甚至「服务器参数档」(server parameter file)的使用时机与其功用。

n选定适当的数据库字符集。所有字符资料都是依照特定字符集存入数据库,因此您必须在建立数据库时指定适当字符集 (注[1])。

n选定「标准资料区块」大小 ― 设定在起始参数档的 DB_BLOCK_SIZE 参数。除了 SYSTEM 资料表空间,其它资料表空间也可以遵循「标准资料区块」的设定。此外,在 Oracle9i 数据库中,您可以设定额外四种「非标准资料区块」。需要注意的是,「标准资料区块」大小在数据库建立完成后即无法更改。

n针对未来数据库的运作情况,订立一份良好的数据库备份计划,以便数据库毁损时能在最短时间内予以修复。

n熟悉 Oracle9i 数据库的激活/关闭方式,与其搭配的各种选项(如 STARTUP 指令的 nomount、mount、open 选项)。

n 确认物理内存是否足以激活 Oracle9i Instance。

n确认 Oracle9i 服务器机的磁盘空间足够,以建置新数据库。

除了本文提及的注意事项,您也可以查阅各种操作系统专属的 Oracle9i 安装指南,以获取更详尽的信息。

选择数据库建置方式

Oracle9i 数据库建置过程包含下列三项主要工作:

n 建置新的数据库实体档案,包含资料文件、重置日志文件。

n 建立控制档,并予以初始化。

n 建置 Oracle9i 存取数据库系统时必要的数据字典(data dictionary)。

实际上,您可能经由下列三种方式之一来建置新的 Oracle9i 数据库时:

n 使用 Oracle「数据库建置组态精灵」(Database Configuration Assistant,DBCA)。

Oracle Universal Installer 在安装过程中会适时激活 DBCA 协助您建立数据库,视您选择的安装种类而定。DBCA 将以图形接口方式引导您逐步完成 Oracle9i 数据库的建置工作。若是安装过程未激活 DBCA,您也可以事后单独激活 DBCA 建立新数据库,甚至建立第二个 Oracle9i 数据库。

n 执行指令文件(script)手动建立 Oracle9i 数据库

如果您手边恰好保存着上次建立 Oracle9i 数据库所用的指令文件,那么您可以直接编修该指令文件,并予以执行。否则,建议您使用 Oracle9i 提供的范例指令文件进行编修。Oracle9i 不仅提供了数据库建置范例指令文件,也提供了起始参数范例文件。您可视实际需要进行必要调整。

n移转(migrate)或升级(upgrade)既有数据库。

如果您的应用系统正在存取既有 Oracle 数据库,除非您需要一个全新的数据库或是测试用环境,否则应该不需要建立新数据库。在此情况下,您所面临的将是数据库移转或升级议题。有关这方面的详尽信息,请参阅《Oracle9i Database Migration》手册。

再谈起始参数档

还记得上一期曾经提过的起始参数档吗?因为手动建立 Oracle9i 数据库之前必须先激活 Oracle9i Instance,因此您必须先建立一个起始参数档。建立新的起始参数档时,最快速的方式就是编辑 Oracle9i 提供的范例档案,然后另存新档。我较习惯的方式是直接编辑既有起始参数档之复本,然后视实际需要进行调整。因为起始参数档可供设定的参数非常多,如果某些参数未经过明确设定,Oracle9i 会自动代入默认值。

第一次以手动方式建立 Oracle 数据库时,建议您尽可能不要修改各起始参数值。等到您熟悉每个参数的意义与使用时机之后,再利用文字编辑器调整或新增其它参数。除此之外,Oracle9i 允许您建立服务器参数文件(以二进制格式存放)。该档案内的参数可在 Oracle9i Instance 激活后执行 ALTER SYSTEM 指令予以修改。

以下是建置新数据库之前必须新增或编辑的起始参数,包括:

n 全域数据库名称

n 控制文件名称与路径

n 资料区块大小

n 影响 SGA 容量的起始参数

n 设定处理程序最大数目

n 设定空间回复(Undo)管理方法

设定全域数据库名称

Oracle9i 的全域数据库名称由「数据库名称」与「网域名称」所组成,其中「数据库名称」设定于 DB_NAME 起始参数,而「网域名称」则是设定于 DB_DOMAIN 参数。这两个参数合并之后就可以在网际网络上唯一识别每一个 Oracle9i 数据库。举例来说,假设我们欲建立的 Oracle9i 数据库之全域数据库名称为 mydb.uuu.com.tw,那么可在起始参数档内设定下列两参数:

DB_NAME = mydb

DB_DOMAIN = uuu.com.tw

Tips:

您可以执行 ALTER DATABASE RENAME GLOBAL_NAME 指令更改 Oracle9i 数据库的全域数据库名称;在您更改 DB_NAME 与 DB_DOMAIN 这两个起始参数后必须将 Oracle9i 数据库重新激活才会生效。此外,控制档也必须重新建立。

关于 DB_NAME 起始参数

DB_NAME 必须是文字字符串,且不能超过 8 个字符。在建立数据库的过程中,DB_NAME 设定值会记录在资料文件、控制文件、以及重置日志文件之中。如果您激活 Oracle9i Instance 的时候,起始参数档内设定的 DB_NAME 不同于控制文件内所纪录的,那么数据库将无法激活。

关于 DB_DOMAIN 起始参数

DB_DOMAIN 通常是数据库主机所在位置的网域名称。如果您欲建立的数据库将加入分布式数据库运算环境,请特别注意此参数的设定。

设定控制档

如前所述,控制文件是 Oracle9i 数据库内相当重要的档案。因此您必须在新的起始参数档内加入 CONTROL_FILE 参数以设定控制文件之文件名与路径。当您执行 CREATE DATABASE 时,列在 CONTROL_FILE 之中的控制档将随之建立。如果起始参数档忽略了此项参数,则 Oracle9i 会在执行 CREATE DATABASE 指令时自动建立控制文件并命名之,然后放在系统预设路径下。

那么,如果 CONTROL_NAME 内设定的控制文件已经存在于操作系统下该怎么办呢?此时 Oracle9i 会自动覆盖既有的控制档。如果您想建立全新的控制档,请确定 CONTROL_NAME 设定的控制文件名不会与操作系统下任何文件名重复。

依照过去经验,Oracle 强烈建议您为每个数据库至少规划两个控制档,并分散在两个实体磁盘上。如此可避免任一控制文件毁损时造成系统停摆。

设定资料区块大小

Oracle9i 数据库内存放资料的最小单位为「资料区块」(data block)。数据库内「标准资料区块」大小是设定在起始参数档之 DB_BLOCK_SIZE 参数。Oracle9i 数据库内最重要的 SYSTEM 资料表空间就是以 DB_LOCK_SIZE 设定值为基础所建立。此外 DB_BLOCK _SIZE 也是建立新资料表空间时预设的资料区块大小。除了标准资料区块大小之外,Oracle9i 支持额外 4 种「非标准资料区块」大小。

关于 DB_BLOCK_SIZE 起始参数

从 Oracle9i 开始,DB_BLOCK_SIZE 所设定的仅是标准资料区块大小;绝大多数的数据库环境只需要设定该参数即可。一般来说,DB_BLOCK_SIZE 可设定为 4K 或 8K。如果此参数未经设定,则 Oracle9i 会自动依照数据库所在操作系统平台自行决定适当的资料区块大小。

需要注意的是,标准资料区块大小在数据库建立之后就无法改变 ― 除非重建数据库。如果数据库的「资料区块」大小不同于「操作系统区块」大小,那么建议您将 DB_BLOCK_SIZE 设为「操作系统区块」大小之整数倍。假定操作系统区块大小为 4K,则不妨设定 DB_BLOCK_SIZE = 8192。在某些情况下,这样的组态方式将会显著地提升资料存取效能。

何谓「非标准资料区块」?

由「非标准资料区块」构成的资料表空间可经由 CREATE TABLESPACE 指令搭配 BLOCKSIZE 子句建立之;其区块大小设定值可为 2K、4K、8K、16K、32。需注意的是此类型资料区块将受到操作系统

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有