i之前 oracle使用的初始化参数文件是pfile i开始引用了SPFILE 但保留了pfile
初始化参数文件在整个ORACLE系统之中起著关键的作用 启动的过程中 oracle根据初始化参数的设置分配SGA 启动后台进程 数据库打开后 还是依据初始化的参数设置运行数据库
I以后的oracle版本 初始化参数文件有spfileSID ORA spfile ORA init ORA oracle在启动过程中也是按照这个顺序依次查找初始化参数文件 若最终没有找到 则数据库启动失败 同时Alert_sid log报错
i之后的版本 默认启动都是使用spfile参数文件启动 当然也可以指定pfile参数文件启动ORACLE spfile参数文件的格式为spfileSID ORA 而pfile参数文件的格式为initSID ORA
startup pfile= /oradata/oracle/admin/TEST/pfile/init ora *****
另外 pfile和spfile两者可以相互创建 创建默认目录在$ORACLE_HOME/dbs/
CREATE SPFILE FROM PFILE
CREATE PFILE FROM SPFILE
通过spfile创建的的初始化参数格式为 initSID ORA
修改初始化参数有两种方式
一 在mond下修改初始化参数
修改pfile参数 可编辑的修改init ora
修改spfile参数 不可编辑参数文件 只能通过命令或者EM动态修改初始化参数
命令 Alter system set AAA=N scope=MEMORY|SPFILE|BOTH
SCOPE参数有三个选项
MEMORY 修改只对运行的实例有效
SPFILE 修改SPFILE设置
BOTH 同时修改了SPFILE和此实例
注意 在修改静态参数时必须得指定SPFILE参数 否则会报错 亦即修改静态参数时SCOPE参数不允许为BOTH
二 在EM中修改初始化参数设置
以sys用户登录EM
在主界面上选择 管理 标签按钮
在管理页面下选择 数据库配置 下的 所有初始化参数 按钮 转入初始化参数设置页面
默认修改的的是SCOPE=MEMORY的设置 当把 在当前正在运行的实例模式下将更改应用与SPFile 复选框选中时 相当于SCOPE=BOTH的设置
在值那项文本框输入新的值之后 点击右上角的应用按钮 修改生效
修改属性为SCOPE=SPFILE
lishixinzhi/Article/program/Oracle/201311/16518
创建表空间
create tablespace
stock datafile
'c:/oracle/product/10.2.0/oradata/orcl/stock00' size 256M,
'c:/oracle/product/10.2.0/oradata/orcl/stock01' size 256M
autoextend off
extent management local
创建用户
create user stock identified by stock
default tablespace stock
temporary tablespace temp
给权限
grant connect,resource,dba to stock
首先初始化参数的设置的方法就有很多种 可以通过ALTER SYSTEM SET SCOPE = MEMORY的方式仅设置内存的修改 也可以通过ALTER SYSTEM SET SCOPE = SPFILE只修改SPFILE的值 当然也可以同时修改SPFILE和MEMORY中的设置 还有一种初始化参数可以设置延迟生效 也就是说这个修改只对以后连接到数据库的会话生效 而对当前会话以及其他已经连接到Oracle的会话不会生效 如果再考虑RAC环境 数据库中存在多个启动实例的情况 那么查询数据库初始化参数就更加复杂了
所幸Oracle提供的查询初始化参数方法也有很多种 SHOW PARAMETERS SHOW SPPARAMETERS CREATE PFILE V$PARAMETER V$PARAMETER V$SYSTEM_PARAMETER V$SYSTEM_PARAMETER V$SPPARAMETER
SHOW PARAMETERS是SQLPLUS工具提供的查询初始化参数的方法 这个方法查询的初始化参数是当前会话生效的初始化参数
SHOW SPPARAMETERS也是SQLPLUS工具提供的方法 用来查询当前会话生效的SPFILE参数包含的初始化参数 这个命令在 g以后sqlplus版本中有效
CREATE PFILE命令不像其他方法那样直观 这种方法可以将SPFILE中或当前内存中设置的初始化文件保存到PFILE文件中 然后就可以通过文本编辑工具直观的看到SPFILE中或当前内存中设置了哪些初始化参数 虽然这种方法看上去比较麻烦 但是这种方法列出的参数都是用户设置的参数 所有默认值的参数并不会列出来 因此看到的结果要比其他方法直观得多 在 g以后的版本允许CREATE PFILE FROM MEMORY
V$PARAMETER视图提供了当前会话可见的初始化参数的设置 如果像查询RAC数据库的所有实例的设置 可以查询GV$PARAMETER视图
V$PARAMETER 视图和V$PARAMETER差不多 唯一的区别在于对于包括值的初始化参数 从这个视图会返回多条记录 每条记录对应一个值 同样的 对于RAC环境可以查询GV$PARAMETER 视图
V$SYSTEM_PARAMETER视图记录当前实例生效的初始化参数设置 注意这里是实例生效而不是会话生效 同样 GV$SYSTEM_PARAMETER则包含了所有实例生效的初始化参数信息
V$SYSTEM_PARAMETER 视图与V$SYSTEM_PARAMETER视图的关系和V$PARAMETER 视图与V$PARAMETER视图的关系一样 都是对于包含多个值的参数采用了分行处理的方式
V$SPPARAMETER记录了来自SPFILE文件中初始化参数 如果参数在SPFILE文件中没有设置 则字段ISSPECIFIED对应的值为FALSE 同样可以查询GVSPPARAMETER参数来显示RAC环境所有实例的设置
首先看一下V$PARAMETER和V$PARAMETER 的区别 这个区别同样适用于V$SYSTEM_PARAMETER和V$SYSTEM_PARAMETER
SQL>SELECT NAME VALUE FROM V$PARAMETER MINUS SELECT NAME VALUE FROM V$PARAMETER NAME VALUE control_files E:ORACLEORADATAYTK CONTROL CTL E:ORACLEORADATAYTK CONTROL CTL E:ORACLEORADATAYTK CONTROL CTL
lishixinzhi/Article/program/SQL/201311/16401
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)