==============================================================================

Until Oracle 8i DBAs have been using a text file called the pfile (parameter file) to store the database initialization parameters.  ---8i之前使用文本参数文件

The pfile is read at instance startup time to get specific instance characteristics. Any changes made the pfile would only take effect when the database is restarted.

However, parameters that were dynamically alterable could be changed using the appropriate ALTER SYSTEM or ALTER SESSION statement, which would take effect immediately.

As of Oracle9i, new feature called the spfile (server parameter file). The spfile is a binary file that contains the same information as the old pfile.  --9i开始引入和服务参数文件,二进制类型

The spfile is a server-side initialization parameter file; parameters stored in this file are persistent across database startups.

This makes all the changes made to the instance using the ALTER SYSTEM statement persistent. Oracle requires that you start an instance for the first time using the pfile and then create the spfile.

The server parameter file (also called SPFILE) is in a single location where all the necessary parameters are defined and stored. The defined parameter values are applicable for all the instances in the cluster.

The SPFILE permits dynamic changes without requiring you to bring down the instance.

You can still use the client side parameter file to manage parameter settings in Real Application Clusters; however, administrative convenience is sacrificed and the advantage of dynamic change is lost.

By default, if you do not specify PFILE in your STARTUP command, Oracle will use a server parameter file.    ---数据库启动的时候默认使用spfile

SERVER PARAMETER FILE ( SPFILE ) ---服务参数文件
================================

A server parameter file is basically a repository for initialization parameters.

Initialization parameters stored in a SPFILE are persistent, meaning any parameter changes made while an instance is running can persist across instance shutdown and startup.

In this way, all the initialization parameters manually updated by ALTER SYSTEM SET commands become persistent.

It also provides a basis for the Oracle database server to self-tune.

Another advantage, particularly for multi-instance RAC systems, is that a single copy of the parameter file can be used by all instances. Even though a single file is used to specify parameters, it has different format styles to support both the common values for all instances, as well as the specific values for an individual instance.

A server parameter file is initially built from the traditional text initialization parameter file, using the create SPFILE statement. It is a binary file that cannot be browsed or edited with a text editor.

Oracle provides other interfaces for viewing and modifying parameter settings.  At system startup, the default behavior of the STARTUP command is to read a SPFILE to obtain initialization parameter settings. If the STARTUP command doesn't have a PFILE clause, it reads the SPFILE from a location 
specified by the operating system.

If you choose to use the traditional text initialization parameter file, you must specify the PFILE clause when issuing the STARTUP command.

SETTING THE SERVER PARAMETER FILE VALUES ---设置参数文件的values
=========================================

Use the SID designator to set instance-specific parameter values in the server parameter file.

For settings across the database, use a '*', and for a specific instance, set the prefix with SID as indicated below.  数据库范围使用“*”,实例范围使用“SID.”

*.OPEN_CURSORS=400 # For database-wide setting
RACDB1.OPEN_CURSORS=800# For RACDB1 instance

Note that even though open_cursors is set at 400 for all instances in the first entry, the value of 800 remains in effect for the SID 'RACDB1'.   ---相当于就近原则,优先级不一样

Some initialization parameters are dynamic since they can be modified using the ALTER SESSION or ALTER SYSTEM statement while an instance is running. Use the following syntax to dynamically alter 
initialization parameters:

ALTER SESSION SET parameter_name = value
ALTER SYSTEM SET parameter_name = value [DEFERRED]

Use the SET clause of the ALTER SYSTEM statement to set or change initialization parameter values. Additionally, the SCOPE clause specifies the scope of a change as described below:

SCOPE = SPFILE    ----对所有的动态参数和静态参数,使用这个语句都是在下次重启之后生效

(For both static and dynamic parameters, changes are recorded in the spfile, to be given effect in the next restart.)

SCOPE = MEMORY  ---- 对于动态参数进行调整,下次重启失效

(For dynamic parameters, changes are applied in memory only. No static parameter change is allowed.)

SCOPE = BOTH  ---对于动态参数有效,当前和重启均生效,可以指定DEFERRED参数,延迟生效

For dynamic parameters, the change is applied in both the server parameter file and memory. No static parameter change is allowed.)

For dynamic parameters, we can also specify the DEFERRED keyword. When specified, the change is effective only for future sessions.

HERE ARE A FEW EXAMPLES   一些例子
===========================

The following statement affects all instances. However, the values are only effective for the current instances, they are not written to binary SPFILE.

ALTER SYSTEM SET OPEN_CURSORS=500 SID='*' SCOPE=MEMORY;

The next statement resets the value for the instance 'RACDB1'. 
At this point, the database-wide setting becomes effective for SID of RACDB1.

ALTER SYSTEM RESET OPEN_CURSORS SCOPE=SPFILE sid='RACDB1';

To reset a parameter to its default value throughout the cluster database, use the command:

ALTER SYSTEM RESET OPEN_CURSORS SCOPE=SPFILE sid='*';

CREATING A SERVER PARAMETER FILE ---创建一个参数文件

=================================

The server parameter file is initially created from a text initialization parameter file (init.ora).

It must be created prior to its use in the STARTUP command. 
The create SPFILE statement is used to create a server parameter file.

The following example creates a server parameter file from an initialization parameter file.

CREATE SPFILE FROM PFILE='/u01/oracle/product/920/dbs/initRAC1.ora';

Below is another example that illustrates creating a server parameter file and supplying a name.

CREATE SPFILE='/u01/oracle/product/920/dbs/racdb_spfile.ora'
FROM PFILE='/u01/oracle/product/920/dbs/init.ora';

EXPORTING THE SERVER PARAMETER FILE   --- 导出参数文件
===================================

We can export the server parameter file to create a traditional text initialization parameter file.

This would be useful for:(作用)
1) Creating backups of the server parameter file. --备份
2) For diagnostic purposes to list all of the parameter values currently used by an instance. 诊断
3) Modifying the server parameter file by first exporting it, editing the output file, and then recreating it. 外部编辑

The following example creates a text initialization parameter file from the server parameter file:

CREATE PFILE FROM SPFILE;

The example below creates a text initialization parameter file from a server parameter file, where the names of the files are specified:

CREATE PFILE='/u01/oracle/product/920/dbs/racdb_init.ora'
FROM SPFILE='/u01/oracle/product/dbs/racdb_spfile.ora';

Refer to 'Oracle 9i Database Reference' for all the parameters that can be changed with an ALTER SYSTEM command...

IS MY DATABASE USING SPFILE ?

=============================

Am I using spfile or pfile ?

The following query will let you know..

1) SQL> SELECT name,value FROM v$parameter WHERE name = 'spfile';

NAME VALUE
---------- --------------------------------------------------
spfile /fsys1/oracle/product/9.2.0/spfileTEST.ora

2) SQL> show parameter spfile;

The v$spparameter view
The contents of the SPFILE can be obtained from the V$SPPARAMETER view:   修改后的静态参数,重启数据库前可以从这个视图里面查到修改后的值

SQL> ALTER SYSTEM SET timed_statistics=FALSE SCOPE=SPFILE;
System altered. SQL> SELECT name,value FROM v$parameter WHERE name='timed_statistics'; NAME VALUE
-------------------- ---------------------
timed_statistics TRUE SQL> SELECT name,value FROM v$spparameter WHERE name='timed_statistics'; NAME VALUE
-------------------- ---------------------
timed_statistics FALSE RELATED DOCUMENTS
----------------- Oracle 9, Oracle 10g

Pfile VS Spfile (MOS Note 249664.1)的更多相关文章

  1. 福大软工 · 第七次作业 - 需求分析报告(404 Note Found队)

    目录 组队后的团队项目的整体计划安排 项目logo及思维导图 项目logo 思维导图 产品思维导图 产品思维导图-引导 产品思维导图-后端数据处理.存储 产品思维导图-短信识别 产品思维导图-智能分析 ...

  2. 笔记本POWER部分的应用——(MOS/LDO/BUCK BOOST)

    一.MOSFET 简介: 金属-氧化物半导体场效应晶体管,简称金氧半场效晶体管(Metal-Oxide-Semiconductor Field-Effect Transistor, MOSFET)是一 ...

  3. DBA_Oracle PFile and SPFile文件的管理和使用(案例)

    2014-08-25 Created By BaoXinjian

  4. Oracle pfile与spfile文件参数(转载)

    一.pfile与spfile Oracle中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件.它们是在数据库实例启动时候加载的,决定了数据库的物理 结构.内存.数据库的限制及系统大量的默认值 ...

  5. oracle三个重要参数文件:pfile和spfile和init.ora

    Oracle中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件.它们是在数据库实例启动第一个阶段时候加载的, 决定了数据库的物理 结构.内存.数据库的限制及系统大量的默认值.数据库的各种物理 ...

  6. 【转】PFILE和SPFILE介绍

    原文:http://blog.sina.com.cn/s/blog_77bba23901017xcl.html 一.PFILE Pfile(Parameter File,参数文件)是基于文本格式的参数 ...

  7. Oracle 初始化参数文件pfile和spfile

    pfile和spfile差额 pfile :Oracle 9i之前.ORACLE使用我们一直PFILE存储的初始化参数,,能够在操作系统级别改动. 当spfile文件改动出现错误导致oracle无法启 ...

  8. oracle的参数文件:pfile和spfile

    1.pfile和spfile Oracle中的参数文件是一个包含一系列参数以及参数对应值的操作系统文件.它们是在数据库实例启动时候加载的,决定了数据库的物理 结构.内存.数据库的限制及系统大量的默认值 ...

  9. Oracle:create pfile from spfile:rac下要小心该操作啊!

    默认在原位置创建一个pfile的ora初始化参数文件!! 这在rac下会带来问题,因为rac下,当使用asm存储时,instance的启动参数文件就是pfile(其内容是指向一个spfile).如果不 ...

随机推荐

  1. linux显示git commit id,同时解决insmod模块时版本不一致导致无法加载问题

    linux内核默认会包含git的commit ID. 而linux的内核在insmod模块时,会对模块和内核本身的版本做严格的校验.在开发产品时,改动内核后,由于commit ID变更,会导致linu ...

  2. 线段树 poj 3667

    1-n线段 m个操作 1  a 是否可找到连续a个空位子 有输出最左边(然后使这一段被占)没有0 2 a ,b a~b区间变成未使用 #include<stdio.h> #include& ...

  3. 基于Emgu CV的人脸检测代码

    这个提供的代码例子是Emgu CV提供的源码里面自带的例子,很好用,基本不需要改,代码做的是人脸检测不是人脸识别,这个要分清楚.再就是新版本的Emgu CV可能会遇到系统32位和64位处理方式有区别的 ...

  4. ruby

    :for 是关键字, each是方法. for 后面的变量,是全局变量,不仅仅存在于for .. end 这个作用域之内 module中的 self.xx方法可以被直接调用 module中的普通方法, ...

  5. android md5加密与rsa加解密实现代码

    import java.io.UnsupportedEncodingException;import java.security.MessageDigest;import java.security. ...

  6. 树莓派2系统DietPi简单安装配置使用介绍

    DietPi在Raspberrypi.org上的原帖:http://dwz.cn/HSrmY 版本发布很频繁,给原作者们点个赞.功能会越来越多,而且作者的定制观点很明确,适合树莓派的使用. 之前关于D ...

  7. Java 数据库操作类

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...

  8. [Unity3d]调试问题之UI/Image不显示

    问题描述 在项目中添加的UI/Image资源,在PC和通过Unity Remove测试都没有问题: PC上的效果 手机上Unity Remove测试结果 可真正发布到手机上运行则如下显示,说明imag ...

  9. Matlab中double,im2double,mat2gray区别

    转载:http://blog.sina.com.cn/s/blog_6c41e2f30101559d.html ****************假设某图像数据A(uint8格式)*********** ...

  10. TypedReference

    http://stackoverflow.com/questions/4764573/why-is-typedreference-behind-the-scenes-its-so-fast-and-s ...