Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1013046
  • 博文数量: 584
  • 博客积分: 2293
  • 博客等级: 大尉
  • 技术积分: 3045
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-28 11:15
文章分类

全部博文(584)

文章存档

2012年(532)

2011年(47)

2009年(5)

我的朋友

分类: Oracle

2012-01-04 13:17:04

创建参数文件 


pfile(initialization parameter file)用于 oracle8i,在 oracle9i 中也可以用,以文本形式存在,可以用文本编辑器对其中参数进行修改;spfile(server-side initialization  parameter file)用于 oracle9i,以二进制文本形式存在,不能用文本编辑器对其中参数进行修改。spfile 改正了 pfile 管理混乱的问题,在多结点的环境里,pfile 会有多个 image,启动时候需要跟踪最新的 image。这是个烦琐的过程。用 spfile 以后,所有参数改变都写到 spfile 里面(只要定义scope=spfile 或 both)


1)查看 spfile location(show parameter pfile/spfile;)
show parameter spfile
2)从 spfile 获取 pfile
sqlplus /nolog
connect / as sysdba 
create pfile='/directory_name1/pfilesid.ora' from '/directory_name2/spfile';
create pfile='/directory_name1/pfilesid.ora' from spfile='/directory_name2/spfile';


sqlplus /nolog 
connect / as sysdba 
create pfile='/directory_name1/pfilesid.ora' from spfile; 
create pfile='/directory_name1/pfilesid.ora' from spfile='/directory_name2/spfile'; 


3)从 pfile 获取 spfile
shutdown immediate
create '/directory_name1/spfile' from pfile='/directory_name2/pfile'
create spfile='/directory_name1/spfile' from pfile='/directory_name2/pfile'


shutdown immediate 
create '/directory_name1/spfile' from pfile='/directory_name2/pfile'
create spfile='/directory_name1/spfile' from pfile='/directory_name2/pfile' 


4)动态修改参数
alter system set parameter=value scope=spfile|both|memory
alter system set parameter=value scope=spfile|both|memory 
(1)scope=spfile
对参数的修改仅记录在服务器初始化参数文件中。该选项同时适用于动态与静态的初始化参数。修改后的参数只有下一次启动数据库时更改才会生效。
(2)scope=memory

对参数的修改记录在内存中,对于动态初始化参数,更改立即生效。修改并不会被记录在服务器端
的初始化参数中。下一次启动数据库时更改失效,不能用于静态初始化参数。
(3)scope=both
对参数的修改同时记录在内存中和服务器端的初始化参数文件中。为默认使用值。


5)查看初始化参数
show parameters 
6)执行 startup 时,按如下顺序寻找初始化参数文件:
(1)spfile.ora
(2)pfile.ora
(3)都没找到,则在默认位置寻找默认名称的服务器端初始化参数文件。
(4)还没找到,则在默认位置寻找默认名称的文本初始化参数文件。


7)查看系统全局区大小:
show sga;
select * from v$sga;


8)使用 pfile/spfile 启动数据库
如果你想使用 pfile 启动数据库,你可以在启动时指定 pfile 或者删除 spfile.
startup pfile='/directory_name/pfile/init.ora';
不能以同样的方式指定 spfile,但是可以创建一个包含 spfile 参数的 pfile 文件,指向 spfile. spfile是一个自 oracle9i 引入的初始化参数,类似于 ifile 参数。spfile 参数用于定义非缺省路径的 spfile文件。
可以在 pfile 链接到 spfile 文件,同时在 pfile 中定义其他参数,如果参数重复设置,后读取的参数将取代先前的设置。


9)查看系统是以 pfile 还是 spfile 启动
(1)查询 v$parameter 动态视图,如果以下查询返回空值,那么你在使用 pfile.
select name,value from v$parameter where name='spfile';
(2)可以使用 show 命令来显示参数设置,如果以下结果 value 列返回空值,那么说明你在使用 pfile:
show parameter spfile
(3)查询 v$spparameter 视图
如果以下查询返回 0 值,表示你在使用 pfile,否则表明你使用的是 spfile:
select count(*) from v$spparameter where value is not null; 
或者使用以下查询,如果 true 值返回非 0 值,那么说明我们使用的是 spfile.
select isspecified, count(*) from v$spparameter group by isspecified; 


10)查询 oracle 游标使用情况的方法
select * from v$open_cursor where user_name = 'TRAFFIC';

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