oracle创建参数文件,Oracle 参数文件及相关操作介绍

Oracle 参数文件及相关操作介绍

by:授客

QQ:1033553122

1.服务器参数文件

服务器参数文件是一个二进制文件,作为初始化参数的存储仓库。实例运行时,可用ALTER SYSTEM来改变参数值,且任何对初始化参数的改变设置不会随实例的关闭、开启而丢失。

注意:不能手工编辑SPFILE,比如用文本工具打开查看值,会损坏文件,可通过使用STARTUP命令来重写SPFILE:

1)创建一个text类型的初始化参数文件,如spf_init.ora,该文件仅包含一个参数SPFILE,参数值为实际存在的SPFILE(非默认SPFILE)的路径,如下

SPFILE =

/u01/oracle/dbs/test_spfile.ora

2)启动数据库,并指定PFILE参数,参数值指向步骤1中的spf_init.ora文件路径

STARTUP PFILE =

/u01/oracle/dbs/spf_init.ora

参考连接:

SPFILE默认文件名和缺省位置

Platform

SPFILE Default Name

SPFILE Default Location

UNIX and Linux

spfileORACLE_SID.ora

未使用Oracle

ASM:ORACLE_HOME/dbs或和数据文件处于相同未知

使用了Oracle ASM:和数据文件在相同磁盘组

Windows

spfileORACLE_SID.ora

未使用Oracle ASM:ORACLE_HOME\database

使用Oracle ASM:和数据文件在相同磁盘组

2.初始化参数文件

初始化参数文件是一个包含初始化参数列表的文本文件,可以以普通方式编辑。

以下是初始化参数文件中的记录样本:

PROCESSES = 100

OPEN_LINKS = 12

GLOBAL_NAMES = true

如上,对于仅含单个值的参数,记录形式为:parameter_name=value

对于包含多个值的参数,记录形式为:parameter_name=(value[,value] ...)(不推荐)

对于包含多个值的参数,建议分开写,如下,重复同一个参数名,每个参数名对应一个参数值

control_files='/u01/app/oracle/oradata/orcl/control01.ctl'

control_files='/u01/app/oracle/oradata/orcl/control02.ctl'

control_files='/u01/app/oracle/oradata/orcl/control03.ctl'

说明:

1.如果参数不支持多个值,那么仅最后一个值生效。

2.参数值为字符串类型的,必须使用引号,如下:

初始化参数文件名因操作系统平台而异。数据库管理员可以为初始化参数文件指定一个不同的名字。

任何对初始化参数文件的改变,仅在实例关闭并重启后生效。

PFILE的缺省文件名和文件位置:

平台

Default Name

默认位置

UNIX、Linux

initORACLE_SID.ora

例如,如数据库实例名为mynewdb,则PFILE文件名为:initmynewdb.ora

ORACLE_HOME/dbs

Windows

initORACLE_SID.ora

ORACLE_HOME\database

注:实际测试发现,linux下默认PFILE文件名为init.ora

3.创建SPFILE

方式1:为SPFILE指定文件名及文件所在路径

CREATE

SPFILE='ORACLE_HOME/dbs/test_spfile.ora'

FROM

PFILE='ORACLE_HOME/dbs/init.ora';

方式2:根据当前内存中的参数值创建SPFILE文件

CREATE SPFILE FROM MEMORY;

方式3:不指定SPFILE文件名及路径(推荐,便于管理)

CREATE SPFILE FROM

PFILE='ORACLE_HOME/dbs/init.ora';

说明:

1.如果创建成功则会提示

File created

2.ORACLE_HOME为实际的oracle安装主目录

3.如不为SPFILE指定文件名,则在由平台决定的默认位置创建带有默认文件名的SPFILE文件

4.采用默认SPFILE文件名和文件路径,或者指定的SPFILE文件名已存在,创建SPFILE时,会直接覆盖原有文件,且无提示

5.可能遇到的错误>>ORA-32002: cannot create

SPFILE already being used by the instance,,解决方法:为SPFILE指定带文件名及路径,如下

4.改变初始化参数值

参数类型

1)动态初始化参数(Dynamic initialization

parameter):参数设置作用于内存实例,且立即生效

2)静态初始化参数(Static initialization

parameter):参数设置不会立即生效,需要在PFILE或SPFILE中改变这些值,并在重启数据库后生效。

改变参数值

采用ALTER SYSTEM语句

例:设置参数值为CONTROL_MANAGEMENT_PACK_ACCESS值为DIAGNOSTIC+TUNING

SQL> ALTER SYSTEM SET

CONTROL_MANAGEMENT_PACK_ACCESS='DIAGNOSTIC+TUNING'

2 SCOPE=BOTH;

System altered.

例:设置参数值为STATISTICS_LEVEL值为ALL,同时为参数添加注释to enable automatic database

diagnostic monitoring

SQL> ALTER SYSTEM SET

STATISTICS_LEVEL=ALL COMMENT='to enable automatic database

diagnostic monitoring'

2 SCOPE=BOTH;

System altered.

SCOPE说明

SCOPE语句

描述

SCOPE = SPFILE

设置仅对server parameter file起作用.

不对当前实例做任何改变.仅用于静态参数

SCOPE = MEMORY

设置仅对内存实例起作用,且设置立即生效

因为命令不更新SPFILE,所以,重启实例后失效。不能用于静态参数

SCOPE = BOTH(缺省)

设置对内存实例和SPFILE都起作用,且立即生效。

因为命令会更新SPFILE,所以,设置是持久的。不能用于静态参数

附:清空SPFILE中所有参数值ALTER SYSTEM RESET

5.导出SPFILE(创建PFILE文件)

可用CREATE PFILE语句导出SPFILE文件到一个文本初始化参数文件(PFILE。

必须有SYSDBA或SYSOPER系统权限。

法1:CREATE PFILE FROM SPFILE;

说明:不给定文件名和路径时,使用默认的文件名和默认路径

法2:CREATE

PFILE='/u01/oracle/dbs/test_init.ora'

FROM SPFILE='/u01/oracle/dbs/test_spfile.ora';

法3:从当前内存中的初始化参数创建PFILE,并指定文件名和路径

CREATE PFILE='/u01/oracle/dbs/test_init.ora' FROM

MEMORY;

参考连接:

Oracle 主要配置文件介绍:profile文件,oratab 文件,数据库实例初始化文件 initSID.ora,监听配置文件, sqlnet.ora 文件,tnsnames.ora 文件1.2 Oracle 主要配置文件介绍1.2.1 /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.US7ASCII1.2.2 /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 数据库自启动 和关闭 1.2.3 数据库实例初始化文件 initSID.ora 每个数据库实例都有一个初始化 参数文件 其缺省 存放的路径为 $ORACLE_BASE/admin//pfile 其名称为 init.ora 如 cams 实 例 对 应 的 参 数 文 件 为 initcams.ora 缺 省 存 放 路 径 为 $ORACLE_BASE/admin/cams/pfile 即/u01/app/oracle/admin/cams/pfile
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值