您的位置:首页 > 其它

参数文件启动顺序及修改方式

2012-01-03 21:59 393 查看
实验目的:测试参数文件的启动顺序

1.查看参数文件,生成文本文件参数文件

$ cd $ORACLE_HOME/dbs

$ cp spfilezwb.ora spfile.ora

$ export ORACLE_SID=zwb

$ sqlplus "/as sysdba"

SQL> create pfile from spfile;

2.三个文件都存在的情况下,测试结果为spfilezwb.ora文件启动

SQL> startup nomount

SQL> show parameter spfile;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

spfile string /oracle/app/product/10.2.0/db_

1/dbs/spfilezwb.ora

3.spfilezwb.ora文件丢失后,启动顺序测试为spfile.ora文件启动

$ mv spfilezwb.ora spfilezwb.ora.bak

SQL> startup nomount

SQL> show parameter spfile;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

spfile string /oracle/app/product/10.2.0/db_

1/dbs/spfile.ora

4.再把spfile.ora文件丢失,查询为空反向腿倒出为initzwb.ora文件启动

$ mv spfile.ora spfile.ora.bak

SQL> startup nomount

SQL> show parameter spfile;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

spfile string

5.实验结果:优先顺序为spfilezwb.ora > spfile.ora > initzwb.ora

实验目的:修改为文本文件启动的参数文件initzwb.ora

一.修改process参数为200

1.检查参数

SQL> show parameter process

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

aq_tm_processes integer 0

db_writer_processes integer 1

gcs_server_processes integer 0

job_queue_processes integer 10

log_archive_max_processes integer 2

processes integer 150

2.通过alter system set修改均报错,测试该种方式无法修改

SQL> alter system set processes=200 scope=memory;

alter system set processes=200 scope=memory

*

ERROR at line 1:

ORA-02095: specified initialization parameter cannot be modified

SQL> alter system set processes=200 scope=spfile;

alter system set processes=200 scope=spfile

*

ERROR at line 1:

ORA-32001: write to SPFILE requested but no SPFILE specified at startup

SQL> alter system set processes=200 scope=both;

alter system set processes=200 scope=both

*

ERROR at line 1:

ORA-02095: specified initialization parameter cannot be modified

3.通过vi修改重启后正常

$ vi initzwb.ora ---修改

SQL> shutdown immediate

SQL> startup nomount

二.修改aq_tm_processes参数为10

1.通过alter system set 成功,spfile修改失败,重启后丢失

SQL> alter system set aq_tm_processes=10 scope=memory;

System altered.

SQL> show parameter process

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

aq_tm_processes integer 10

db_writer_processes integer 1

gcs_server_processes integer 0

job_queue_processes integer 10

log_archive_max_processes integer 2

processes integer 150

2.通过警告日志$ cd $ORACLE_BASE/admin/zwb/bdump 可查看具体修改方式

3.重启后丢失,必须通过$ vi initzwb.ora (如没有即添加)修改。

实验结果:文本文件启动的参数文件initzwb.ora,要修改参数必须通过$ vi initzwb.ora (如没有即添加)修改。

实验目的:修改二进制参数文件spfilezwb.ora

1.重命名回来并重启数据库

$ mv spfilezwb.ora.bak spfilezwb.ora

SQL> shutdown immediate

SQL> startup nomount

2.查看是否spfilezwb.ora启动

SQL> show parameter spfile;

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

spfile string /oracle/app/product/10.2.0/db_

1/dbs/spfilezwb.ora

3.同样测试修改processes 和 aq_tm_processes参数

1)修改processes 参数

SQL> show parameter process

NAME TYPE VALUE

------------------------------------ ----------- ------------------------------

aq_tm_processes integer 0

db_writer_processes integer 1

gcs_server_processes integer 0

job_queue_processes integer 10

log_archive_max_processes integer 2

processes integer 200

SQL> alter system set processes=150 scope=memory; ---修改内存失败

alter system set processes=150 scope=memory

*

ERROR at line 1:

ORA-02095: specified initialization parameter cannot be modified

SQL> alter system set processes=150 scope=spfile; ---修改SPFILE成功

System altered.

2)查看参数文件spfilezwb.ora是否已被修改

通过$ more spfilezwb.ora 查看已被成功修改,由于只是修改到spfile,但需要重启后生效

3)修改aq_tm_processes参数

SQL> alter system set aq_tm_processes=9 scope=both;

System altered. ---修改内存和spfile均成功

4)可查看警告日志和二进制参数文件spfilezwb.ora 确认修改成功

4.注意点:二进制参数文件不能用VI编辑修改,如修改对当前库没有影响,但重启后系统不认该参数文件。会导致无法启动数据库及调优数据丢失。

实验结果:二进制参数文件spfilezwb.ora必须用alter system set 来修改

参数文件小技巧:

1.文本文件转二进制文件

SQL> create spfile from pfile;

2.二进制文件转文本文件

SQL> create pfile from spfile;

3.也可另立路径文件名生成,如

SQL> create spfile='/tmp/111.ora' from pfile;

File created.

SQL> !ls /tmp/111.ora

/tmp/111.ora
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: