oracle11g启动过程中加载配置文件

news/2024/11/7 11:07:01/文章来源:https://www.cnblogs.com/ywdba668/p/18531755

oracle指定配置文件启动,要是不指定配置文件启动的话 默认找的参数文件顺序如下:
在oracle11g中 oracle启动过程中默认会加载相应的配置文件来启动oracle服务。检查参数文件有两个,一个是spfile<ORACLE_SID>.ora文件,另一个是inti<ORACLE_SID>.ora文件。
oracle软件服务安装完成后,spfile文件和pfile文件默认会存放在/u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs 这个路径下,本示例ORACLE_SID为orcl,所以spfile文件名为spfileorcl.ora,pfile文件是init.ora。
本示例spfile和pfile具体文件路径如下:

[oracle@oracle dbs]$ ll /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/init.ora ;ll /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/bak-spfileorcl.ora.ori 
-rw-r--r-- 1 oracle oinstall 3181 Sep 25 11:01 /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/init.ora
-rw-r----- 1 oracle oinstall 3584 Sep 19 11:35 /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/spfileorcl.ora

Oracle在启动到nomount状态下时,会先读取spfile文件,如果spfile不存在,再读取pfile文件。因此,只要spfile文件存在,就不需要管pfile文件是否存在了

下面示例演示环境为centos7.8 X86_64位最小化安装系统, 安装linux版本oracle-11.2.0.1.0

样例演示一:模拟Oracle在启动到nomount状态下时,让其读取pfile文件来启动oracle实例

1.1 对文件dbs/spfileorcl.ora进行改名称

cd /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs
mv spfileorcl.ora  bak-spfileorcl.ora.ori

1.2 dbs/initorcl.ora文件参数默认如下:


[oracle@oracle dbs]$ egrep -v "^$|^#" init.ora 
### Change '<ORACLE_BASE>' to point to the oracle base (the one you specify at install time)
db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='<ORACLE_BASE>/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='<ORACLE_BASE>/flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='<ORACLE_BASE>'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
# You may want to ensure that control files are created on separate physical
# devices
control_files = (ora_control1, ora_control2)
compatible ='11.2.0'

1.3演示过程:

Oracle在启动到nomount状态下时的具体指令如下
sqlplus / as  sysdba
startup ;或者startup nomount;

第一次启动报错如下:

SQL> startup ;
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/initorcl.ora'
报错提示不存在文件initorcl.ora,于是修改init.ora文件为initorcl.ora

第二次启动报错如下:

SQL> startup ;
ORA-48108: invalid value given for the diagnostic_dest init.ora parameter
ORA-48140: the specified ADR Base directory does not exist [/u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/<ORACLE_BASE>]
ORA-48187: specified directory does not exist
Linux-x86_64 Error: 2: No such file or directory
Additional information: 1
SQL> 
报错提示不存在路径,找不到路径,于是修改initorcl.ora文件中的<ORACLE_BASE>为实际路径 /u01/oracle/tools/oracle11g

第三次启动报错如下:

SQL> startup ;
ORACLE instance started.Total System Global Area 1068937216 bytes
Fixed Size                  2220200 bytes
Variable Size             616566616 bytes
Database Buffers          444596224 bytes
Redo Buffers                5554176 bytes
ORA-00205: error in identifying control file, check alert log for more info提示识别不到control file文件 
提示在initorcl.ora 中 指定具体的控制文件实际路径
control_files = ("/u01/oracle/tools/oracle11g/oradata/orcl/control01.ctl", "/u01/oracle/tools/oracle11g/flash_recovery_area/orcl/control02.ctl")

第四次启动成功:

第三次启动虽然找不到控制文件,但是oracle实例已经启动,所以需要先关闭掉,然后再进行第四次启动
SQL> shutdown immediate ;
ORA-01507: database not mounted
ORACLE instance shut down.
SQL> startup ;
ORACLE instance started.Total System Global Area 1068937216 bytes
Fixed Size                  2220200 bytes
Variable Size             616566616 bytes
Database Buffers          444596224 bytes
Redo Buffers                5554176 bytes
Database mounted.
Database opened.

修改后的配置文件参数如下:

[oracle@oracle dbs]$ egrep -v "^$|^#" /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/initorcl.ora 
db_name='ORCL'
memory_target=1G
processes = 150
audit_file_dest='/u01/oracle/tools/oracle11g/admin/orcl/adump'
audit_trail ='db'
db_block_size=8192
db_domain=''
db_recovery_file_dest='/u01/oracle/tools/oracle11g/flash_recovery_area'
db_recovery_file_dest_size=2G
diagnostic_dest='/u01/oracle/tools/oracle11g'
dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'
open_cursors=300 
remote_login_passwordfile='EXCLUSIVE'
undo_tablespace='UNDOTBS1'
control_files = ("/u01/oracle/tools/oracle11g/oradata/orcl/control01.ctl", "/u01/oracle/tools/oracle11g/flash_recovery_area/orcl/control02.ctl")
compatible ='11.2.0'

样例演示二:模拟Oracle在启动到nomount状态下时,让其直接读取spfile文件来启动oracle实例
修改文件名称:

mv bak-spfileorcl.ora.ori spfileorcl.ora
mv initorcl.ora bak-initorcl.ora.ori 

关闭oracle实例:

SQL> shutdown immediate ;
Database closed.
Database dismounted.
ORACLE instance shut down.

然后再次nomount启动oracle,日志提示已经启动成功,说明nomount下启动,直接通过spfile文件spfileorcl.ora启动的

SQL> startup nomount;
ORACLE instance started.
Total System Global Area 1586708480 bytes
Fixed Size                  2213736 bytes
Variable Size             922749080 bytes
Database Buffers          654311424 bytes
Redo Buffers                7434240 bytes[oracle@oracle dbs]$ ss -lntup|grep oracle
udp    UNCONN     0      0         [::1]:31518              [::]:*                   users:(("oracle",pid=4922,fd=16))
udp    UNCONN     0      0         [::1]:42350              [::]:*                   users:(("oracle",pid=4924,fd=16))
udp    UNCONN     0      0         [::1]:58791              [::]:*                   users:(("oracle",pid=4890,fd=17))
tcp    LISTEN     0      128    [::]:30904              [::]:*                   users:(("oracle",pid=4922,fd=17))
[oracle@oracle dbs]$ 

特别说明:
本文演示当然也可以直接使用spfile创建pfile文件 然后来演示,这样就不会出现样例演示一中演示过程中启动报错了。本着学习的目的样例一演示繁琐了点

使用spfile创建pfile文件:

[oracle@oracle dbs]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.1.0 Production on Wed Sep 25 12:02:34 2024Copyright (c) 1982, 2009, Oracle.  All rights reserved.Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> create pfile from spfile;
File created.

生成的文件内容具体如下:

[oracle@oracle dbs]$ cat /u01/oracle/tools/oracle11g/product/11.2.0/dbhome_1/dbs/initorcl.ora 
orcl.__db_cache_size=654311424
orcl.__java_pool_size=16777216
orcl.__large_pool_size=16777216
orcl.__oracle_base='/u01/oracle/tools/oracle11g'#ORACLE_BASE set from environment
orcl.__pga_aggregate_target=637534208
orcl.__sga_target=956301312
orcl.__shared_io_pool_size=0
orcl.__shared_pool_size=251658240
orcl.__streams_pool_size=0
*.audit_file_dest='/u01/oracle/tools/oracle11g/admin/orcl/adump'
*.audit_trail='db'
*.compatible='11.2.0.0.0'
*.control_files='/u01/oracle/tools/oracle11g/oradata/orcl/control01.ctl','/u01/oracle/tools/oracle11g/flash_recovery_area/orcl/control02.ctl'
*.db_block_size=8192
*.db_domain='oracle'
*.db_name='orcl'
*.db_recovery_file_dest='/u01/oracle/tools/oracle11g/flash_recovery_area'
*.db_recovery_file_dest_size=4070572032
*.diagnostic_dest='/u01/oracle/tools/oracle11g'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'
*.memory_target=1580204032
*.open_cursors=300
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.undo_tablespace='UNDOTBS1'

样例演示三:指定配置文件通过挂载方式来启动oracle实例

startup pfile='/u01/oracle/interlib/initorcl.ora' mount;
SQL> startup pfile='/u01/oracle/interlib/initorcl.ora' mount;
ORACLE instance started.
Total System Global Area 1586708480 bytes
Fixed Size                  2213736 bytes
Variable Size             922749080 bytes
Database Buffers          654311424 bytes
Redo Buffers                7434240 bytesDatabase mounted.

以上就是oracle启动过程中加载配置文件的简单演示,欢迎一起留言交流学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/828216.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高级语言程序设计第六次个人作业

班级链接:https://edu.cnblogs.com/campus/fzu 作业要求链接:https://edu.cnblogs.com/campus/fzu/2024C/homework/13303 学号:102400130 姓名:杨子旭

【WPF开发】HandyControl Growl控件Error通知不自动消失的问题

Error类型的通知不自动消失,但是又需要他跟其他的统一。 那么翻翻代码看看为啥不消失呗 1、这是决定关闭通知的计时器2、这是通过_staysOpen来控制是否启动计时器 _staysOpen为true的时候就会不启动了3、明显看到Error中如果非IsCustom的情况下会_staysOpen那么最后,我们可以…

centos修改yum源

centos修改yum源 在CentOS中修改YUM源,你需要替换/etc/yum.repos.d/目录下的.repo文件。以下是一个基本的步骤和示例:备份当前的YUM源文件。创建或编辑一个新的.repo文件。添加你的YUM源信息。例如,如果你想要将YUM源更改为阿里云的源,可以按照以下步骤操作:# 1. 备份当前…

C# NET framework 4.5调用系统Toast通知

C# Toast 资源调用dll 资源调用exe最近有一个工控程序,基于net4.5.2开发的,尝试增加win10系统的Toast通知消息,网络收集到如下结论: 1. Toast功能需要net4.8的高版本,调用Microsoft.Toolkit.Uwp.Notifications.dll —— 工控程序不可能升级的 2. 低版本net都是使用winform…

C++ ftp上传文件

目录结构: ftpdemo/include/elapse.h1 /*************************************************2 Copyright (C), 2019-2029, Guide Tech. Co., Ltd.3 File name: elapse.h4 Author: henry5 Version: V1.0.0.0 6 Date: 202410087 Description:计算函数运行时间8 **************…

Schema Free

向量检索服务DashVector在设计上支持Schema Free。向量检索服务DashVector在设计上支持Schema Free,在插入Doc、更新Doc、插入或更新Doc时,可设置任意KeyValue结构的字段(Field),如下所示: Python示例: collection.insert(Doc(id=1,vector=np.random.rand(4),fields={name…

0基础读顶会论文—流程即服务(PraaS):通过无服务器流程统一弹性云和有状态云

细粒度的无服务器函数为许多新应用提供了动力,这些应用受益于弹性扩展和按需付费计费模型,同时将基础设施管理开销降至最低。为了实现这些特性,函数即服务(FaaS)平台将计算和状态分离,PraaS 通过提供数据本地性、快速调用和高效通信改进了当前的 FaaSAbstract 细粒度的无…

安装和配置CentOS9

安装和配置CentOS9 一、下载CentOS9镜像文件 1.访问官网:首先,你需要访问CentOS的官网或阿里云镜像网站 2.选择版本:在官网上,选择CentOS9的64位操作系统版本进行下载。3.等待下载:点击下载链接后,等待镜像文件下载完成。 二、安装CentOS9 1. 创建虚拟机(以VMware WorkS…

wed服务器一览

cs架构 c客户端 s服务端 bs架构 浏览器nb(客户端) 网站是做服务端客户端浏览器 到 服务器 请求 服务器 到 客户端浏览器 相应

WebSocket简介

一、websocket简介 websocket是一种在单个TCP连接上进行全双工通信的协议。 websocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向…

袋鼠云港口数智化解决方案发布,数智引领,加速“智变”丨2024袋鼠云秋季发布会回顾

2023年12月,交通运输部印发《关于加快智慧港口和智慧航道建设的意见》,《意见》贯穿了“3条主线”,其中最首要的主线是“数字化”,数字化是基础,必须通过数字赋能建设、生产、运营、管理、服务的全要素、全过程、全场景,将数据作为新的生产要素,方可夯实智慧港口和智慧航…