Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1379944
  • 博文数量: 247
  • 博客积分: 10147
  • 博客等级: 上将
  • 技术积分: 2776
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-24 15:18
文章分类

全部博文(247)

文章存档

2013年(11)

2012年(3)

2011年(20)

2010年(35)

2009年(91)

2008年(87)

我的朋友

分类: Oracle

2008-02-20 11:51:48

打算写一系列的文章介绍11g的新特性和变化。

11g对于初始化增加了一个很实用的功能,可以根据内存中的参数设置来创建初始化参数文件。

 

 

9i推出了SPFILE之后,就给出了使用PFILE创建SPFILE以及由SPFILE创建PFILE的语法。

11g中,Oracle增强了这种语法,使得创建PFILESPFILE时,不在需要指定一个物理的文件,而是可以从当前内存中的设置来获取参数配置。

采用这种方式创建的PFILESPFILE,可以保证获得的参数就是当前运行的参数,而如果从PFILESPFILE则无法确保文件中的参数设置与运行的参数设置一致。

语法其实很简单,将创建时的FROM语句后面的文件类型PFILESPFILE改为MEMORY即可:

[oracle@yangtk ~]$ sqlplus "/ as sysdba"

SQL*Plus: Release11.1.0.6.0 - Production on Thu Jan 10 15:06:30

Copyright (c) 1982, 2007, Oracle.  All rights reserved.


Connected to:
Oracle Database11gEnterprise Edition Release11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> create pfile='/home/oracle/initora11g_p.ora' from memory;

File created.

SQL> create spfile='/home/oracle/spfileora11g_p.ora' from memory;

File created.

这种方式要求数据库至少处于NOMOUNT状态,否则会报错:

SQL> shutdown immediate
Database dismounted.
ORACLE instance shut down.
SQL> create pfile='/home/oracle/initora11g_p.ora' from memory;
create pfile='/home/oracle/initora11g_p.ora' from memory

ERROR at line 1:
ORA-00922: missing or invalid option

SQL> create spfile='/home/oracle/spfileora11g_p.ora' from memory;
create spfile='/home/oracle/spfileora11g_p.ora' from memory

ERROR at line 1:
ORA-00922: missing or invalid option


SQL> startup nomount
ORACLE instance started.

Total System Global Area  267825152 bytes
Fixed Size                  1299316 bytes
Variable Size             176163980 bytes
Database Buffers           88080384 bytes
Redo Buffers                2281472 bytes

SQL> create pfile='/home/oracle/initora11g_p.ora' from memory;

File created.

SQL> create spfile='/home/oracle/spfileora11g_p.ora' from memory;

File created.

阅读(1096) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~