Oracle 参数文件、v$parameter动态视图、OMF特性、启动

  • PFILE与SPFILE

1、  含义:PFILE是parameterfile的缩写,SPFILE是server parameter file的缩写,通过全称的字面含义,我们可以得到pfile和spfile都是oracle提供的参数文件,里面写着各种参数的初始值,比如Database Buffer的值为196M等,文件后缀名都是.ora;

2、  区别:spfile是oracle9i release2引进的新事物,在这之前oracle中只有pfile的概念。Pfile是一种静态参数文件,可以通过任何文本编辑器进行打开、编辑和保存。而spfile是一种二进制文件,只能通过ALTER SYSTEM SET …… SCOPE=SPFILE语句修改,修改后需要重启数据库实例后才能生效。相比pfile而言,spfile具有安全的优势;

3、  启动方式:oracle9i以后,数据库实例启动时如果不明确指定使用pfile启动数据库实例,则会去默认路径寻找spfile文件,这里需要补充的是pfile与spfile的默认路径是$oracle_home/database,在我的数据库本机上,我的路径就是:E:\app\neusoft\product\11.2.0\dbhome_1\database;

4、  默认pfile与spfile文件名:正常默认情况下,pfile文件的文件名应该为INIT+数据库实例名+.ORA后缀名,比如我本机数据库的实例名是orcl,则默认pfile的文件名应该为INITorcl.ORA;而spfile的默认文件名SPFILE+数据库实例名+.ORA的后缀名,例如我本机的spfile的文件名是SPFILEorcl.ORA;

5、  创建方式:如果需要创建pfile文件,我们可以根据本机数据库的spfile来创建,创建语法是:CREATE PFILE FROM SPFILE;也可以对于即将生成的pfile文件指定生成目录和自定义名称,例如:CREATE PFILE=’F:\PFILE123.ORA’ FROM SPFILE;但是我们无法在当前数据库实例正在使用的spfile默认路径重新生成默认名称的spfile文件,即我们无法使用下面语句:CREATE SPFILE FROM PFILE;因为这句话代表在默认路径即database路径下生成默认名称SPFILEorcl.ORA的spfile文件,而这个文件已经被当前数据库实例使用。

6、  创建权限要求:创建pfile或spfile文件需要用户拥有sysdba权限,默认sys用户具备sysdba权限,如果使用其他用户(如system),请先对system用户赋予sysdba权限,授权语句是:GRANTSYSDBA TO system;

7、  查看当前数据库实例是否使用spfile启动:sqlplus窗口执行showspfile,如果spfile有值(spfile路径),则代表当前数据库实例是通过spfile方式启动的;

  • V$PARAMETER动态视图

1、  我们可以通过v$parameter动态视图查看指定参数的值、修改情况;

2、  查询语句:

select name, value, ismodified, issys_modifiable  from v$parameter

where name like ‘db_create_file_dest%‘;

3、  关于字段ismodified的说明:

字段含义是表示参数在实例启动后是否被修改,值有3个:MODIFIED\SYSTEM_MOD\FALSE

MODIFIED表示实例启动后使用alter session修改过;

SYSTEM_MOD表示实例启动后使用alter system修改过;

FALSE表示实例启动后从未修改过;

4、  关于字段issys_modifiable的说明:

字段含义是表示参数是否可以被altersystem修改并且修改后产生影响的时间,值有3个:

IMMEDIATE:表示可以使用alter system修改并且修改后立即生效;

DEFERRED:表示可以使用alter system修改并在下一个会话中生效;

FALSE:除对于启动实例有影响的参数外其他都不可以修改并且需要重启实例;

selectnameas参数名称,

valueas当前参数值,

decode(ismodified,

‘MODIFIED‘,

‘使用altersession修改过‘,

‘SYSTEM_MOD‘,

‘使用altersystem修改过‘,

‘未被修改过‘) as实例启动后修改方式,

decode(ISSYS_MODIFIABLE,

‘IMMEDIATE‘,

‘当前会话立即生效‘,

‘DEFERRED‘,

‘延迟下个会话生效‘,

‘重启实例生效‘) as生效时间

fromv$parameter

  • OMF技术

1、  OMF是ORACLE MANAGED FILES的简写,翻译过来即oracle管理文件,是从oracle 10g新推出的概念,已在指定默认路径信息后,简化日常操作命令书写;

2、  查看是否启用OMF,可以在sqlplus窗口界面输入:showparameter db_create_file_dest,如果该参数有值(路径信息),则代表启用了OMF管理;

3、  可以使用altersystem或alter session启用db_create_file_dest参数,参数的路径默认应该为数据库实例的数据库文件所在目录,示例如下:

ALTER  SYSTEM SET db_create_file_dest=’ E:\app\neusoft\oradata\orcl’;

4、  按照上述第3个步骤操作完毕后,就可以启用OMF技术特性了。

5、  下面我们举个例子进行说明,如果我们没有开启OMF技术特性,比如我们需要创建一个表空间test,我们至少应该这么写语句:CREATE TABLESPACE test DATAFILE ‘E:\app\neusoft\oradata\orcl\TEST.DBF’;语句中包含数据表空间的存放路径,不指明的话,oracle会提示错误并创建失败。如果我们指定了db_create_file_dest的默认路径即代表开启了OMF技术特性,那么我们在以后创建表空间、日志文件、控制文件的时候,就可以省略表空间创建的路径信息、大小,新创建的表空间会在默认路径下生成。但是在实际生产环境中酌情使用。

6、  Windows操作系统正常情况下,oracle数据文件、日志文件、控制文件的所属路径都应该是在oradata目录下,例如我本机数据库的目录是:E:\app\neusoft\oradata\orcl

如果我们将参数db_create_file_dest的值设定为E:\app\neusoft\oradata

我们可以这样实现:

Alter  system  setdb_create_file_dest=’ E:\app\neusoft\oradata’;

然后我们来创建一个表空间test01,我们可以直接这样写

Create  tablespace test01;

然后我们就会发现oracle在E:\app\neusoft\oradata\orcl目录下自动创建了一个datafile的新目录,里面存放着我们刚创建的表空间,表空间的大小默认是100M,名称默认是:O1_MF_DUSHUAI_BBQ2GWSK_.DBF,名称中包含我们指定的表空间名称;

我们可以通过内置的函数包查看我们新建的表空间的属性信息,语句如下:

selectdbms_metadata.get_ddl(‘TABLESPACE‘,‘DUSHUAI‘) from dual;

得到的大文本CLOB结果如下:

CREATE TABLESPACE"DUSHUAI" DATAFILE

SIZE 104857600

AUTOEXTEND ON NEXT 104857600MAXSIZE 32767M

LOGGING ONLINE PERMANENTBLOCKSIZE 8192

EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULTNOCOMPRESS  SEGMENT SPACE MANAGEMENT AUTO

 

  • 数据库实例启动层次

1、  Nomount:仅是知道挂在各类实例启动所需文件的地址等基本信息;

2、  Mount:已经挂载实例启动,但是没有进行一致性检查等操作;

3、  Open:默认数据库实例启动startup的缺省项目,表示正常启动数据库实例;

附:数据库异常关闭后启动的顺序
1.前滚所有未写入数据文件的REDO
2.打开数据库
3.回滚所有未提交的数据

时间: 2024-10-31 18:49:46

Oracle 参数文件、v$parameter动态视图、OMF特性、启动的相关文章

(转)Oracle 参数文件

--======================== -->Oracle 参数文件 --======================== /* 参数文件(10g中的参数文件) 主要用来记录数据库的配置文件,在数据库启动时,Oracle读取参数文件,并根据参数文件中的参数设置来配置数据库. 如内存池的分配,允许打开的进程数和会话数等. 两类参数文件: pfile:文本文件的参数文件,可以使用vi,vim等编辑器修改,文件名通常为init<sid>.ora spfile:二进制的参数文件,不

第09章 oracle 参数文件

2015-10-23 目录 参考资料 [1] 林树泽.Oracle 11g R2 DBA操作指南[M].北京:清华大学出版社,2013 [2] Oracle参数文件 [3] Oracle 参数文件 [4] Oracle 参数文件介绍 [5] oracle 11G参数文件之服务器参数文件(spfile)与实例启动的关系 [6] ORACLE 参数文件 [7] DBA入门之Oracle数据库参数文件 [8] oracle参数文件 [9] 参数文件的备份与恢复 [10] Oracle静态参数文件 [1

ORACLE 参数文件介绍

ORACLE数据库启动以后,通过select * from v$parameter这个语句可以查看到oracle数据库使用的所有参数. 对于oracle的参数文件,分为spfile 二进制文件和pfile 文本文件,现在的数据库一般都是使用spfile二进制文件作为启动oracle的参数文件.对于spfile和pfile之间的区别: 1 spfile是二进制文件(可以通过 string spfileorcl.ora进行二进制的文件查看),不可以使用文本编辑器修改,只能在sqlplus中使用命令动

ORACLE参数文件

环境:oracle 单机 11.2.0.4 参数文件位置:>show parameter spfile 编辑参数文件:>create pfile='D:\init.ora' from spfile *.optimizer_index_caching=80 #这个初始化参数代表一个百分比,取值范围在0到99之间.缺省值是0,代表当CBO使用索引访问数据时,在内存中发现数据的比率是0%,这意味着通过索引访问数据将需要产生物理读取,代价昂贵.如果使用缺省设置,Oracle评估成本的时候,很多时候就会

oracle参数文件spfile和pfile

一.参数文件说明 PFILE(Initialiazation Parameter Files)初始化参数文件,是文本文件,可直使用文本编辑器查看.如果数据库使用的是初始化参数文件PFILE,要想永久修改初始化参数,DBA必须要先关闭数据库,再修改该文件,然后用修改后的PFILE重新启动数据库.文件名:init.ora SPFILE(Server Parameter Files)服务器参数文件,位于服务端,是二进制文件,不能直接修改,在数据库运行的过程中也可以修改该文件.路径:$ORACLE_HO

oracle参数文件、控制文件、数据文件、日志文件的位置及查询方法

参数文件:所有参数文件一般在  $ORACLE_HOME/dbs 下 sqlplus查询语句:show parameter spfile; 网络连接文件: $ORACLE_HOME/dbs/network/admin 目录中 控制文件:select * from v$controlfile; 数据文件:一般在oracledata/实例名  目录下 select FILE_NAME from dba_data_files; 日志文件:一般在oracledata/实例名  目录下 select *

参数文件spfile的修改以及数据库的启动关闭

由于参数文件spfile是二进制文件,所以不能直接使用文本编辑器进行修改,我们可以再启动数据库以后使用sql命令进行修改: alter system 参数名=参数值, scope=both|spfile|memory sid=*|'orcl' 等,其中具体的权威参数请参考官方文档 1 修改processes 这个参数不能修改内存中的值, Alter system processes=2000 scope=spfile; Show parameter dump 可以查看跟踪日志文件存放的路径. 修

Oracle的参数文件

1.参数文件 与Oracle数据库相关的参数文件有很多,但是最重要的是数据库的参数文件,如果没有这个参数文件,甚至无法启动数据库. 数据库的参数文件通常称为初始化文件(init file),或init.ora文件.这是因为历史上它的默认名就是init<ORACLE_SID>.ora.这所以称为"历史上"的默认名,原因是Oracle Database 9i Release 1 以来,对于存储数据库的参数设置,引入了一个很大改进的新方法:服务器参数文件(server param

也谈oracle参数和参数文件

我们错误修改了oracle系统参数,有的时候会导致数据库无法启动,参数保存在spfile中,我们无法通过直接编辑这个文件来恢复我们的误操作,因为 这个文件是个二进制文件,切勿直接更改!但是在以前的版本中有个pfile文件,那个文件是个文本文件,可以直接编辑修改!恢复的思路就是通过spfile文件创建pfile文件,更改完配置以后,再通过pfile文件来创建我们的spfile文件! 下面就是详细的操作步骤,以及我在实验的时候遇到的问题!  1.修改参数 SQL> alter system set