数据库

位置:IT落伍者 >> 数据库 >> 浏览文章

Oracle主要的配置文件解释


发布日期:2018年04月07日
 
Oracle主要的配置文件解释

Oracle 主要配置文件介绍

profile文件oratab 文件数据库实例初始化文件 initSIDora监听配置文件 sqlnetora 文件tnsnamesora 文件

Oracle 主要配置文件介绍

/etc/profile 文件

系统级的环境变量一般在/etc/profile 文件中定义 在 CAMS 系统 与数据库

相关的环境变量就定义在/etc/profile 文件中 如下所示

export ORACLE_BASE=/u/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/

export PATH=$PATH:$ORACLE_HOME/bin

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib

export ORACLE_SID=cams

export ORACLE_TERM=vt

export ORA_NLS=$ORACLE_HOME/ocommon/nls/admin/data

export NLS_LANG=AMERICANZHSCGB

& 说明

配置上述环境变量要注意定义的先后顺序 如 定义 ORACLE_HOME

时 用 到 了 ORACLE_BASE 那 么 ORACLE_HOME 的 定 义 应 该 在

ORACLE_BASE之后

在使用中文版 CAMS 时 环境变量 NLS_LANG 的值应该设置为

AMERICANZHSCGB 如上所示 在使用英文版 CAMS时 可

以不设置 NLS_LANG 即去掉 export NLS_LANG= 那一行 也可以

设置 NLS_LANG 的值为 AMERICAN_AMERICAUSASCII

/etc/oratab 文件

/etc/oratab 文件描述目前系统中创建的数据库实例 以及是否通过 dbstart 和

dbshut 来控制该实例的启动与关闭 如下所示 忽略以#开头的注释部分 :

cams:/u/app/oracle/product/:Y

其中 cams 为实例 ID /u/app/oracle/product/为 ORACLE_HOME目

录 Y表示允许使用 dbstart和 dbshut 启动和关闭该实例数据库 如果设置为

N 表示不通过 dbstart 和 dbshut 启动和关闭实例数据库 CAMS 系统要求在

安装完 ORACLE 后要求将该参数修改为 Y 以保证 ORACLE 数据库自启动

和关闭

数据库实例初始化文件 initSIDora

每个数据库实例都有一个初始化 参数文件 其缺省 存放的路径为

$ORACLE_BASE/admin/<SID>/pfile 其名称为 init<SID>ora 如 cams 实

例 对 应 的 参 数 文 件 为 initcamsora 缺 省 存 放 路 径 为

$ORACLE_BASE/admin/cams/pfile 即/u/app/oracle/admin/cams/pfile

但 在 CAMS 应 用 中 initcamsora 的 存 放 路 径 为

/u/app/oracle/admin/cams/pfile 这是基于数据与应用程序分开存放更好地

保护数据考虑的 尤其在 CAMS 双机应用模式下 能够保证数据的一致性

具体的修改操作可参考 Linux与 Oracle 安装手册

初始化参数文件是一个包含实例配置参数的文本文件 这些参数被设置为特

定的值 用于初始化 Oracle 实例的多数内存和进程设置 以下是一些主要参

数的说明

实例的数据库名称

db_name = cams

实例名称

instance_name = cams

数据库控制文件的名称和位置

control_files = (/u/app/oracle/oradata/cams/controlctl

/u/app/oracle/oradata/cams/controlctl

/u/app/oracle/oradata/cams/controlctl)

调度作业队列的 SNP 进程的数量以及 SNP 进程觉醒时间间隔 秒

JOB_QUEUE_PROCESSES=

JOB_QUEUE_INTERVAL=

存储追蹤和告警文件的路径

user_dump_dest 指定记录 Oracle 用户进程产生的追蹤和告警信息的文件的

存放路径 background_dump_dest 指定记录 Oracle 后台进程产生的追蹤和

告警信息的文件的存放路径 core_dump_dest指定Oracle运行所产生的core

dump 信息的文件的存放路径

background_dump_dest = /u/app/oracle/admin/cams/bdump

core_dump_dest = /u/app/oracle/admin/cams/cdump

user_dump_dest = /u/app/oracle/admin/cams/udump

UTL_FILE_DIR 参数

UTL_FILE_DIR = *

UTL_FILE_DIR 参数指定一个或多个目录用于 Oracle 应用的文件 I/O 如备

份数据到文件 在 CAMS 系统中将该值设置为 * 表示可供 Oracle 应

用进行文件 I/O操作的目录为任意目录 因此 只要空间允许 可以将备份数

据存放到任意目录下

监听配置文件

为了使得外部进程 如 CAMS后台程序 能够访问 Oracle 数据库 必须配

置 Oracle 网络服务器环境 配置 Oracle 网络服务器环境是通过配置

listenerora sqlnetora 和 tnsnamesora 共三个文件来进行的 listenerora

即监听配置文件 在本小节说明 另两个文件分别在随后的两个小节说明

监听配置文件 listenerora 的存放路径为 $ORACLE_HOME/network/admin

以下是一个示例

LISTENER = #监听器名称

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

)

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = TCP)

(HOST = localhostlocaldomain)

(PORT = ))

)

)

(DESCRIPTION =

(PROTOCOL_STACK =

(PRESENTATION = GIOP)

(SESSION = RAW)

)

(ADDRESS =

(PROTOCOL = TCP)

(HOST = localhostlocaldomain)

(PORT = ))

)

)

SID_LIST_LISTENER = #命名规则 SID_LIST_+上面定义的监听器名称

(SID_LIST =

(SID_DESC =

(SID_NAME = PLSExtProc)

(ORACLE_HOME = /u/app/oracle/product/)

(PROGRAM = extproc)

)

(SID_DESC =

(GLOBAL_DBNAME = cams)

(ORACLE_HOME = /u/app/oracle/product/)

(SID_NAME = cams)

)

(SID_DESC =

(GLOBAL_DBNAME = oid)

(ORACLE_HOME = /u/app/oracle/product/)

(SID_NAME = oid)

)

)

& 说明

listenerora 文件中定义一个监听器 其缺省的名称为 LISTENER这个监听器缺省以tcp/ip为协议地址且端口号为运行 在CAMS应用中监听文件定义的监听器就使用这个缺省名字并且使用缺省的协议 tcp/ip

和缺省的端口号 待配置好监听文件以及随后说明的 sqlnetora 和tnsnamesora 文件之后 就可以用以下命令将监听文件中定义的监听器启动起来

$ lsnrctl start

停止监听器的命令为

$ lsnrctl stop

监测监听器当前状态的命令为

$ lsnrctl status

当 lsnrctl status 命令有如下输出结果

STATUS of the LISTENER

Alias LISTENER

Version TNSLSNR for Linux: Version Production

Start Date JAN ::

Uptime days hr min sec

就说明监听器正在运行否则说明监听器已经停止了CAMS 系统的后台程序的正常运行不仅依赖于数据库实例的运行还依赖于这个数据库监听器的运行假如监听器没有启动即使数据库已经启动CAMS 后台程序仍然不能正常工作

如(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))所示的一个IPC 协议地址的监听是为了外部进程调用用的在数据库安装时自动设定不需要改动

在监听文件后部还有一个 SID_LIST_LISTENER 段该段用于定义监听器的服务即为哪些数据库实例提供监听服务以 cams 实例为例其对应的服务信息为

(SID_DESC =

(GLOBAL_DBNAME = cams) #数据库名

(ORACLE_HOME = /u/app/oracle/product/)

(SID_NAME = cams) #数据库实例名

)

sqlnetora 文件

sqlnetora 文件的存放路径为 $ORACLE_HOME/network/admin 以下是一

个示例

NAMESDEFAULT_DOMAIN = localdomain

NAMESDIRECTORY_PATH= (TNSNAMES ONAMES HOSTNAME)

& 说明

NAMESDEFAULT_DOMAIN 指定网络域名NAMESDIRECTORY_PATH指定当解析客户端连接标识符时命名方法naming metthods 采用的优先顺序从左至右递减在 CAMS 应用中这两个参数采用上述所示的系统缺省值

tnsnamesora 文件

tnsnamesora 文件的存放路径为 $ORACLE_HOME/network/admin 以下

是一个示例

OIDLOCALDOMAIN =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhostlocaldomain)(PORT =

))

)

(CONNECT_DATA =

(SERVICE_NAME = oid)

)

)

CAMSLOCALDOMAIN =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhostlocaldomain)(PORT =

))

)

(CONNECT_DATA =

(SERVICE_NAME = cams)

)

)

INST_HTTPLOCALDOMAIN =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhostlocaldomain)(PORT =

))

)

(CONNECT_DATA =

(SERVER = SHARED)

(SERVICE_NAME = MODOSE)

(PRESENTATION =//admin)

)

)

EXTPROC_CONNECTION_DATALOCALDOMAIN =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

)

(CONNECT_DATA =

(SID = PLSExtProc)

(PRESENTATION = RO)

)

)

& 说明

tnsnamesora 文件中定义一个或多个网络服务 net servicecams 实例对应的网络服务为

CAMSLOCALDOMAIN =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS =

(PROTOCOL = TCP)

(HOST = localhostlocaldomain)

(PORT = ))

)

(CONNECT_DATA =

(SERVICE_NAME = cams)

)

)

注意 这里 ADDRESS项包含三个子参数

PROTOCOL 默认协议TCP

HOST :ip地址

PORT端口默认

CAMSLOCALDOMAIN为数据名

要确保在监听文件中也有对应的一个ADDRESS 项也包含同样的三个子参数并且子参数的值对应都相等 另外这里 SERVICE_NAME 的值必需确保与监听文件中某SID_DESC项下的SID_NAME参数的值相等

上一篇:客户信息系统之Oracle方案

下一篇:Oracle“完全指南”究竟可信么?