解析Oracle数据库中配置文件

来源:互联网 发布:苹果通过usb共享网络 编辑:程序博客网 时间:2024/05/22 13:10
Oracle主要配置文件:
Profile文件,oratab文件, 数据库实例初始化文件initSID.ora, listener.ora文件, sqlnet.ora文件, tnsnames.ora文件
Oracle主要配置文件介绍
一、/etc/profile 文件
系统级的环境变量一般在/etc/profile 文件中定义 CAMS系统与数据库,相关的环境变量就定义在/etc/profile 文件中如下所示:
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export ORACLE_SID=cams
export ORACLE_TERM=vt100
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export NLS_LANG=AMERICAN.ZHS16CGB231280
说明:
1、配置上述环境变量要注意定义的先后顺序:
定义 ORACLE_HOME时用到了ORACLE_BASE,那么ORACLE_HOME的定义应该在ORACLE_BASE之后
2、使用中文版
CAMS 环境变量 NLS_LANG 的值应该设置为AMERICAN.ZHS16CGB231280 如上所示在使用英文版 CAMS时可以不设置 NLS_LANG 即去掉 export NLS_LANG=... ... 那一行,也可以设置 NLS_LANG 的值为 AMERICAN_AMERICA.US7ASCII

二、/etc/oratab 文件
/etc/oratab 文件描述目前系统中创建的数据库实例以及是否通过 dbstart dbshut 来控制该实例的启动与关闭如下所示忽略以#开头的注释部分 :
cams:/u01/app/oracle/product/8.1.7:Y
其中 cams 为实例 ID /u01/app/oracle/product/8.1.7 ORACLE_HOME目录 Y表示允许使用 dbstart dbshut 启动和关闭该实例数据库如果设置为 N 表示不通过 dbstart dbshut 启动和关闭实例数据库 CAMS 系统要求在安装完 ORACLE 后要求将该参数修改为 Y 以保证 ORACLE 数据库自启动和关闭

三、数据库实例初始化文件 initSID.ora
每个数据库实例都有一个初始化参数文件其缺省存放的路径为 $ORACLE_BASE/admin//pfile 其名称为 init.ora cams 实例 initcams.ora $ORACLE_BASE/admin/cams/pfile /u01/app/oracle/admin/cams/pfile CAMS initcams.ora /u02/app/oracle/admin/cams/pfile 这是基于数据与应用程序分开存放更好地保护数据考虑的尤其在 CAMS 双机应用模式下能够保证数据的一致性具体的修改操作可参考 Linux Oracle 安装手册初始化参数文件是一个包含实例配置参数的文本文件这些参数被设置为特定的值用于初始化 Oracle 实例的多数内存和进程设置。
以下是一些主要参数的说明:
1 实例的数据库名称
db_name = "cams"
2 实例名称
instance_name = cams
3 数据库控制文件的名称和位置
control_files = ("/u02/app/oracle/oradata/cams/control01.ctl",
"/u02/app/oracle/oradata/cams/control02.ctl",
"/u02/app/oracle/oradata/cams/control03.ctl")
4 调度作业队列的 SNP 进程的数量以及 SNP 进程觉醒时间间隔秒
JOB_QUEUE_PROCESSES=2
JOB_QUEUE_INTERVAL=60
5 存储追踪和告警文件的路径
user_dump_dest 指定记录 Oracle 用户进程产生的追踪和告警信息的文件的存放路径 background_dump_dest 指定记录 Oracle 后台进程产生的追踪和告警信息的文件的存放路径 core_dump_dest指定Oracle运行所产生的coredump信息的文件的存放路径.
background_dump_dest = /u02/app/oracle/admin/cams/bdump
core_dump_dest = /u02/app/oracle/admin/cams/cdump
user_dump_dest = /u02/app/oracle/admin/cams/udump
6 UTL_FILE_DIR 参数
UTL_FILE_DIR = *
UTL_FILE_DIR 参数指定一个或多个目录用于 Oracle 应用的文件 I/O 如备份数据到文件 CAMS 系统中将该值设置为 * 表示可供 Oracle 应用进行文件 I/O操作的目录为任意目录因此只要空间允许可以将备份数据存放到任意目录下

四、监听配置文件listener.ora文件
为了使得外部进程 CAMS后台程序能够访问 Oracle 数据库必须配置 Oracle 网络服务器环境配置 Oracle 网络服务器环境是通过配置 listener.ora sqlnet.ora tnsnames.ora 共三个文件来进行的 listener.ora即监听配置文件在本小节说明另两个文件分别在随后的两个小节说明监听配置文件 listener.ora 的存放路径为 $ORACLE_HOME/network/admin 以下是一个示例:
LISTENER =
 (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = pc149)(PORT = 1521))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      )
    )
 )
SID_LIST_LISTENER =
 (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /opt/oracle/product/9.2)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = appacf)
      (ORACLE_HOME = /opt/oracle/product/9.2)
      (SID_NAME = appacf)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = testrman)
      (ORACLE_HOME = /opt/oracle/product/9.2)
      (SID_NAME = testrman)
    )
)
说明:
1 listener.ora 文件中定义一个监听器其缺省的名称为 LISTENE,这个监听器缺省以tcp/ip为协议地址且端口号为1521运行CAMS应用中监听文件定义的监听器就使用这个缺省名字并且使用缺省的协议 tcp/ip和缺省的端口号 1521 待配置好监听文件以及随后说明的 sqlnet.ora tnsnames.ora 文件之后就可以用以下命令将监听文件中定义的监听器启动
启动监听器的命令为:
$ lsnrctl start
停止监听器的命令为:
$ lsnrctl stop
监测监听器当前状态的命令为:
$ lsnrctl status
lsnrctl status 命令有如下输出结果
STATUS of the LISTENER
------------------------
Alias                  LISTENER
Version                TNSLSNR for Linux: Version 8.1.7.4.0 - Production
Start Date              17-JAN-2004 19:00:08
Uptime                31 days 15 hr. 27 min. 59 sec
就说明监听器正在运行否则说明监听器已经停止了 CAMS 系统的后台程序的正常运行不仅依赖于数据库实例的运行还依赖于这个数据库监听器的运行假如监听器没有启动即使数据库已经启动 CAMS 后台程序仍然不能正常工作。
2 (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))所示的一个IPC 协议地址的监听是为了外部进程调用用的在数据库安装时自动设定,不需要改动。
3 在监听文件后部还有一个 SID_LIST_LISTENER 该段用于定义监听器的服务即为哪些数据库实例提供监听服务 cams 实例为例其对应的服务信息为:
(SID_DESC =
    (GLOBAL_DBNAME = cams) #数据库名
     (ORACLE_HOME = /u01/app/oracle/product/8.1.7)
    (SID_NAME = cams) #数据库实例名
)
 
五、sqlnet.ora 文件
sqlnet.ora 文件的存放路径为 $ORACLE_HOME/network/admin
以下是一个示例
NAMES.DEFAULT_DOMAIN = localdomain
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
说明
NAMES.DEFAULT_DOMAIN 指定网络域名 NAMES.DIRECTORY_PATH指定当解析客户端连接标识符时命名方法 naming metthods 采用的优先顺序从左至右递减, CAMS 应用中, 这两个参数采用上述所示的系统缺省值

六、tnsnames.ora 文件
tnsnames.ora 文件的存放路径为 $ORACLE_HOME/network/admin 以下是一个示例:
OID.LOCALDOMAIN =
 (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT =1521))
     )
     (CONNECT_DATA =
       (SERVICE_NAME = oid)
     )
 )
CAMS.LOCALDOMAIN =
 (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT =1521))
     )
     (CONNECT_DATA =
       (SERVICE_NAME = cams)
     )
 )
INST1_HTTP.LOCALDOMAIN =
 (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT =1521))
     )
     (CONNECT_DATA =
       (SERVER = SHARED)
       (SERVICE_NAME = MODOSE)
       (divSENTATION = http://admin)
     )
   )
EXTPROC_CONNECTION_DATA.LOCALDOMAIN =
   (DESCRIPTION =
     (ADDRESS_LIST =
       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
     )
     (CONNECT_DATA =
       (SID = PLSExtProc1)
       (divSENTATION = RO)
     )
   )
说明:
tnsnames.ora 文件中定义一个或多个网络服务 net service cams 实例对应的网络服务为
CAMS.LOCALDOMAIN =
 (DESCRIPTION =
   (ADDRESS_LIST =
    (ADDRESS =
      (PROTOCOL = TCP)
       (HOST = localhost.localdomain)
       (PORT = 1521))
    )
   (CONNECT_DATA =
    (SERVICE_NAME = cams)
   )
)
注意:这里 ADDRESS项包含三个子参数
PROTOCOL :默认协议TCP
HOST :ip地址
PORT:端口,默认1521
CAMS.LOCALDOMAIN为数据名
要确保在监听文件中也有对应的一个 ADDRESS 项也包含同样的三个子参数并且子参数的值对应都相等另外这里 SERVICE_NAME 的值必需确保与监听文件中SID_DESC项下的 SID_NAME参数的值相等。
 
原创粉丝点击