浅谈oracle10G spfile与pfile(转)
转自:http://blog.csdn.net/onebigday/article/details/6108348,http://www.linuxidc.com/Linux/2012-11/73715.htm
大家都知道,spfile是oracle 9i之后引入的,目的是提高系统安全性。在Oracle8i下初始化参数文件为文本文件,可以使用文本编辑器进行编辑,当需要修改初始化参数时,需要在init.ora文件中修改,再重新启动数据库实例。
在Oracle10g,引入了服务器参数文件(SPFILE),可以简化初始参数的管理。spfile文件是一个二进制文件,不能使用文件编辑器编辑(虽然通过文本编辑器打开后,能够看到参数内容),否则可能造成Oracle无法识别SPFILE文件。
我下面以我自己系统安装的ORACLE与大家讨论这两者的用法,E盘是oracle10G的主安装目录,那么分别在
1) E:/oracle/product/10.2.0/admin/orcl/pfile/init.ora.2192009203642 // pfile文件
2) E:/oracle/product/10.2.0/db_1/database/initorcl.ora // 储存spfile文件路径
3) E:/oracle/product/10.2.0/db_1/dbs/SPFILEORCL.ORA // spfile文件
1.如果spfile被损坏了,那么重启数据库就会报找不到spfile的错误,这时需要通过pfile创建spfile:
create spfile from pfile=' E:/oracle/product/10.2.0/admin/orcl/pfile/init.ora.2192009203642';
并且重启数据库时用:
startup pfile=' E:/oracle/product/10.2.0/admin/orcl/pfile/init.ora.2192009203642'。
2. 如果2被修改了路径,那么3的位置要做相应的调整,不然数据库重启会报同样的错误。3. 如果1被损坏或删除了,没有关系,数据库可以照常启动,但为了保险,我们还是重新
创建一个pfile:
create pfile=' E:/oracle/product/10.2.0/admin/orcl/pfile/init.ora.2192009203642' from spfile;
问题:
1)创建spfile后,该文件方到哪了?
答:使用create spfile from pfile=’..’ , 生成的spfile文件(文件名还是SPFILEORCL.ORA),但存放目录发生变化,存放在2的那个目录下,可是initorcl.ora内容却没有发生变化???
为了使spfile恢复的原来的目录下,指定目录,使用如下命令:
Create spfile=’ E:/oracle/product/10.2.0/db_1/dbs/SPFILEORCL.ORA’
From pfile=' E:/oracle/product/10.2.0/admin/orcl/pfile/init.ora.2192009203642'
show parameter spfile; // 查看spfile位置
2)如何查看oracle是以spfile还是pfile启动?
答:Select isspecified,count(*) from v$spparameter group by isspecified;
如果isspecified里有true,表明用spfile进行了指定配置
如果全为false,则表明用pfile启动
3)spfile和pfile启动oracle 有何区别?
附:
从spfile获取pfile
Create pfile='d:pfileSID.ora' from spfile;
Create pfile='d:pfileSID.ora' from spfile='spfile_location';
从pfile获取spfile
Create spfile from pfile='Your_pfile_location'
Create spfile='spfile_location' from pfile='Your_pfile_location'
动态修改参数
alter system set parameter=Value scope=spfile|both|memory
SCOPE参数有三个可选值:
MEMORY:只改变当前实例运行;
SPFILE:只改变SPFILE的设置(如果修改的是静态参数,则必须指定SCOPE=SPFILE,否则将会报ORA-02095错。);
BOTH:改变实例及SPFILE(使用BOTH选项实际上等同于不带参数的ALTER SYSTEM语句)。
Startup nomount的时候需要读去spfile或pfile,两者共存,spfile优先
用startup(默认)启动的顺序
1、直接在默认路径下查找spfileSID.ora
--(spfile)
如果没有再查找2
2、直接在默认路径下查找spfile.ora
如果没有再查找3
3、直接在默认路径下查找initSID.ora
--(pfile)
如果还没有 就会报错……
强制用pfile启动
SQL>startup pfile='Your_Pfile.ora'
startup spfile='/data/oracle/product/10.2.0/db_1/dbs/dbs/spfile_mqq.ora' force
通过pfile连接到spfile启动
修改pfile文件
数据库的初始化参数文件分析
内容 说明
MTS 多线程服务器配置标识,Oracle 9i 里称为共享服务器配置
dispatchers="(PROTOCOL=TCP)
(SERVICE=testXDB)" 多线程服务器配置
Optimizer 最优化
hash_join_enabled=TRUE 优化程序选择散列连接
query_rewrite_enabled=FALSE 启动或禁用对实体化视图的查询重写
star_transformation_enabled=FALSE 确定基于成本的查询转换是否应用到星型查询中
# Job
Queues 作业列队
job_queue_processes=10 作业列队进程数
# Instance
Identification 实例标识
instance_name=test 实例名
#
Miscellaneous 其他
aq_tm_processes=1
compatible=9.2.0.0.0 兼容性
# Security and
Auditing 安全审核
remote_login_passwordfile=EXCLUSIVE 指定操作系统或口令文件是否有检查用户口令的权限。
# Sort, Hash
Joins, Bitmap
Indexes 排序, 散列联接, 位图索引
pga_aggregate_target=25165824 指定PGA的最大内存量
sort_area_size=524288 指定排序区使用的最大内存量
# Database
Identification 数据库标识SID
db_domain=domin
db_name=test
# File
Configuration 文件配置
control_files=("C:oracleoradatatestCONTROL01.CTL",
"C:oracleoradatatestCONTROL02.CTL",
"C:oracleoradatatestCONTROL03.CTL") #
Pools 池
java_pool_size=33554432
java池用于存储 Java 的方法、类定义和 Java 对象。
large_pool_size=8388608 大型池用于共享服务器的会话内存、并行执行的消息缓冲区以及RMAN 备份和恢复的磁盘 I/O 缓冲区。
shared_pool_size=50331648 共享池用于存储共享游标、存储的过程、控制结构和并行执行消息缓冲区等对象。
# Cursors and
Library
Cache 游标和库高速缓存
open_cursors=300 指定一次会话可打开的游标量
# System Managed
Undo and Rollback
Segments 系统管理的撤消和回退段
undo_management=AUTO 指定系统使用的撤消空间管理方式为SUM(外部分配)
undo_retention=10800
undo_tablespace=UNDOTBS1 指定回滚表空间
# Diagnostics
and
Statistics 诊断和统计
background_dump_dest=C:oracleadmintestbdump 后台进程跟踪文件
core_dump_dest=C:oracleadmintestcdump 核心转储跟踪文件
timed_statistics=TRUE 收集操作系统的计时信息(优化)
user_dump_dest=C:oracleadmintestudump 用户进程跟踪文件
# Processes and
Sessions 进程和会话
processes=150 同时连接到数据库的用户进程数量
# Redo Log and
Recovery 重做日志和恢复
fast_start_mttr_target=300 指定从单个
fast_start_mttr_target=300 指定从单个数据库例程数据库例程崩溃中恢复所需的时间
# Cache and
I/O 高速缓存和I/O
db_block_size=8192 指定数据块大小(数值不能改变)
db_cache_size=25165824 指定数据缓冲区的大小
db_file_multiblock_read_count=16 涉及一个完全连续扫描的一次I/O操作中读取块的最大数量
浅谈oracle10G spfile与pfile(转)的更多相关文章
- 浅谈 Fragment 生命周期
版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Fragment 文中如有纰漏,欢迎大家留言指出. Fragment 是在 Android 3.0 中 ...
- 浅谈 LayoutInflater
浅谈 LayoutInflater 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/View 文中如有纰漏,欢迎大家留言指出. 在 Android 的 ...
- 浅谈Java的throw与throws
转载:http://blog.csdn.net/luoweifu/article/details/10721543 我进行了一些加工,不是本人原创但比原博主要更完善~ 浅谈Java异常 以前虽然知道一 ...
- 浅谈SQL注入风险 - 一个Login拿下Server
前两天,带着学生们学习了简单的ASP.NET MVC,通过ADO.NET方式连接数据库,实现增删改查. 可能有一部分学生提前预习过,在我写登录SQL的时候,他们鄙视我说:“老师你这SQL有注入,随便都 ...
- 浅谈WebService的版本兼容性设计
在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...
- 浅谈angular2+ionic2
浅谈angular2+ionic2 前言: 不要用angular的语法去写angular2,有人说二者就像Java和JavaScript的区别. 1. 项目所用:angular2+ionic2 ...
- iOS开发之浅谈MVVM的架构设计与团队协作
今天写这篇博客是想达到抛砖引玉的作用,想与大家交流一下思想,相互学习,博文中有不足之处还望大家批评指正.本篇博客的内容沿袭以往博客的风格,也是以干货为主,偶尔扯扯咸蛋(哈哈~不好好工作又开始发表博客啦 ...
- Linux特殊符号浅谈
Linux特殊字符浅谈 我们经常跟键盘上面那些特殊符号比如(?.!.~...)打交道,其实在Linux有其独特的含义,大致可以分为三类:Linux特殊符号.通配符.正则表达式. Linux特殊符号又可 ...
- 浅谈Angular的 $q, defer, promise
浅谈Angular的 $q, defer, promise 时间 2016-01-13 00:28:00 博客园-原创精华区 原文 http://www.cnblogs.com/big-snow/ ...
随机推荐
- google gtest window 平台应用
下载gtest:https://code.google.com/p/googletest/downloads/detail?name=gtest-1.7.0.zip 编译: 会出现的问题:error ...
- Apache2.4.6服务器安装及配置
一.系统环境 系统版本:Aliyun Linux release 5.7 内核版本:2.6.18-274.el5 apr版本:apr-1.4.8 apr-util版本:apr-util-1.5.2 p ...
- 初涉hash
今天和朋友讨论一个问题 有两百亿个数,我给出一个数,找到这两百亿个数中两数相加等于它的组合.要求时间复杂度为线性,空间2G 解决思路是开一个hash表比如a[1000]将所有数存入hash表中,a[i ...
- Python之路,day5-Python基础
for#列表生成式 data = [1,2,3,4,5,6,7] #####列表生成式 #data = [i+1 for i in data] data = [i*2 if i>5 else i ...
- CentOS以及Oracle数据库发展历史及各版本新功能介绍, 便于构造环境时有个对应关系
CentOS版本历史 版本 CentOS版本号有两个部分,一个主要版本和一个次要版本,主要和次要版本号分别对应于RHEL的主要版本与更新包,CentOS采取从RHEL的源代码包来构建.例如CentOS ...
- MYCAT 配置(转)
server.xml配置 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mycat:se ...
- [原]php远程odbc连接sqlsvr数据库,自定义端口,命名实例的连接方式
远程odbc连接sqlsvr数据库,自定义端口,命名实例的连接方式,默认如果不修改的话sqlsvr的端口号是1433,默认实例名就是机器名,,如果既用了命名实例,又改了默认端口,改怎么连接数据库呢? ...
- [redis] Node is not empty. Either the node already knows other nodes
Connecting to node 172.168.63.202:7001: OK [ERR] Node 172.168.63.202:7001 is not empty. Either the n ...
- crontab服务详解(任务计划)
crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序使用cron服务,用 service crond status 查看 cron服务状态,如果没有启动则 servi ...
- Excel 读取字符串引发的问题
将EXCEL数据导出的时候如果同一列数据中既有文字,又有数字!读取时一列中要么文字丢失只剩下数字,要么数字丢失,只剩下文字,这是由第一行的数据类型决定的.出现这种问题是由于数据类型不统一造成的. 连接 ...