0
点赞
收藏
分享

微信扫一扫

Oracle 11g 新特性 -- 管理 SPFILE 说明

楠蛮鬼影 2022-09-02 阅读 94



 

 

 

      在Oracle 11g 以前,我们可以从spfile来创建pfile,或者利用pfile来创建spfile。 在Oracle 11g中,在管理spfile方面得到增强,可以从memory来创建pfile和spfile。

 

语法如下:

创建 PFILE [= 'pfile_name' ]

FROM { { SPFILE [= 'spfile_name'] } |内存 } ;

 

创建 SPFILE [= 'spfile_name' ]

FROM { { PFILE [= 'pfile_name' ] } |内存 } ;

 

 

 

示例:

 

[15:43 oracle@dave /u01/backup]$ora和

 

SQL*Plus: 发布 11.2.0.3.0 生产于 2012 年 10 月 12 日星期五 15:43:22

 

版权所有 (c) 1982、2011、甲骨文。保留所有权利。

 

 

连接到:

Oracle 数据库 11g 企业版发布 11.2.0.3.0 - 64 位生产

使用分区、OLAP、数据挖掘和实际应用程序测试选项

 

SQL> create pfile from memory;

 

File created.

 

SQL> create spfile from memory;

create spfile from memory

*

ERROR at line 1:

ORA-32002: cannot createSPFILE already being used by the instance

--对于open 状态的实例,不能从memory创建spfile。

 

SQL> startup mount force;

ORACLE 实例已启动。

 

系统全局总区域 730714112 字节

固定大小2231952字节

可变大小285213040字节

数据库缓冲区 419430400 字节

重做缓冲区23838720字节

数据库已装入。

SQL>从 v$database 中选择open_mode;

 

OPEN_MODE

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

安装

 

SQL>从内存创建 spfile;

从内存创建 spfile

*

第 1 行错误:

ORA-32002:无法创建实例已在使用的SPFILE

--mount 状态也不可以使用

 

SQL>启动 nomount force;

ORACLE 实例已启动。

 

系统全局总区域 730714112 字节

固定大小2231952字节

可变大小285213040字节

数据库缓冲区 419430400 字节

重做缓冲区23838720字节

SQL>从内存创建 spfile;

从内存创建 spfile

*

第 1 行错误:

ORA-32002:无法创建实例已在使用的SPFILE

--nomount 状态也不可以

 

SQL> 关机中止;

ORACLE 实例已关闭。

SQL>从内存创建 spfile;

create spfile from memory

                   *

ERROR at line 1:

ORA-00922: missing or invalid option

--数据库关闭后,语法不可以用。

 

 

我们用pfile启动数据库,在来创建spfile:

SQL> startuppfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initdave.ora'

ORACLE instance started.

 

Total System Global Area  730714112 bytes

Fixed Size                  2231952 bytes

Variable Size             285213040 bytes

Database Buffers          419430400 bytes

Redo Buffers               23838720 bytes

Database mounted.

Database opened.

SQL> create spfile from memory;

 

File created.

--这次创建成功。

 

注意:

    (1)如果是RAC 环境,那么生成的脚本会包含所有节点的参数。

     (2)执行这个命令需要使用sysdba或sysoper角色来执行。

 

 

 

 

 

 


举报

相关推荐

0 条评论