LRM-00109错误解决

解决Oracle启动错误
本文记录了解决Oracle数据库启动时遇到的ORA-01078和LRM-00109错误的过程,通过调整环境变量ORACLE_SID的大小写实现问题解决。
LRM-00109错误解决
好久没有写我的oracle 学习笔记了,今天再装了一个数据库打算再继续好好学。
SQL> startup
ORA-01078: failure in processing system parameters
LRM-00109: could not open parameter file '/opt/app/oracle/product/11.2.0/dbhome_                      1/dbs/initORCL.ora'
XX的一开始就遇到错误,赶紧去google 了一下,原来是oracle 用户环境变量ORACLE_SID 的原因。额,我ORACLE_SID 的设置应该没有错的啊,检查一下,发现设置成ORACLE_SID=ORCL 了。
linux 下大小写敏感。。。。进行如下的修改并保存,logout 再login 就设置就生效了。
(这里的ORA-01078 是由 LRM-00109 引起的。)
[oracle@ora-lover ~]$ vi .bash_profile
ORACLE_SID=orcl
[oracle@ora-lover ~]$ exit
logout
[root@ora-lover ~]# su - oracle
[oracle@ora-lover ~]$ sqlplus / as sysdba
SQL> startup
ORACLE instance started.
外篇:
这半个月时间很少接触oracle,忙着找实习。系统也重装了数据库一直拖着没安装,虽然没人收我做初级oracle 方面的管理工作,我还是选择继续学习下去,Oracle I love you.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26110315/viewspace-735487/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26110315/viewspace-735487/

### 问题描述 Oracle 数据库在启动过程中出现错误 `LRM-00109: could not open parameter file`,表明数据库无法找到或打开指定的初始化参数文件(`init<sid>.ora` 或 `spfile<sid>.ora`)。该错误通常出现在执行 `startup` 命令时,伴随 `ORA-01078` 错误[^2]。 ### 原因分析 1. **初始化参数文件路径错误** Oracle 数据库在启动时会尝试从 `$ORACLE_HOME/dbs` 目录下加载参数文件。如果环境变量 `ORACLE_SID` 设置错误,或参数文件未放置在正确路径下,则会导致此错误[^3]。 2. **参数文件缺失或损坏** 如果 `init<sid>.ora` 或 `spfile<sid>.ora` 文件不存在或权限配置不当,将导致数据库无法读取配置文件。 3. **ORACLE_SID 设置不正确** 如果当前会话的 `ORACLE_SID` 与数据库实例名不一致,会导致 Oracle 无法找到对应的参数文件[^3]。 4. **文件权限问题** 参数文件的访问权限未正确配置,可能导致数据库无法读取文件内容。 ### 解决方案 #### 检查并设置正确的 `ORACLE_SID` 执行以下命令查看当前 `ORACLE_SID`: ```bash echo $ORACLE_SID ``` 如果 `ORACLE_SID` 设置错误,应更正为实际的数据库实例名: ```bash export ORACLE_SID=orcl ``` 在 Windows 系统中,可以使用以下命令: ```cmd set ORACLE_SID=orcl ``` 确保 `ORACLE_SID` 与数据库实例名称一致[^3]。 #### 检查参数文件是否存在 进入 `$ORACLE_HOME/dbs` 目录并检查是否存在 `init<sid>.ora` 或 `spfile<sid>.ora` 文件: ```bash cd $ORACLE_HOME/dbs ls -l init*.ora spfile*.ora ``` 若文件不存在,需手动创建 `init<sid>.ora` 文件,内容如下: ```ora db_name=orcl memory_target=1G processes=150 audit_file_dest='/oracle/app/oracle/admin/orcl/adump' audit_trail='db' db_block_size=8192 db_domain='' db_recovery_file_dest='/oracle/app/oracle/fast_recovery_area' db_recovery_file_dest_size=2G diagnostic_dest='/oracle/app/oracle' dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)' open_cursors=300 remote_login_passwordfile='EXCLUSIVE' undo_tablespace='UNDOTBS1' ``` #### 创建服务器参数文件(SPFILE) 如果存在 `init<sid>.ora` 文件但没有 `spfile<sid>.ora`,可以在 SQL*Plus 中创建 SPFILE: ```sql CREATE SPFILE FROM PFILE; ``` 重启数据库后,Oracle 将优先使用 SPFILE。 #### 检查文件权限 确保参数文件具有正确的读取权限: ```bash chmod 640 initorcl.ora chown oracle:oinstall initorcl.ora ``` #### 指定参数文件路径启动数据库 如果参数文件不在默认目录中,可以在启动时指定路径: ```sql STARTUP PFILE='/u01/app/oracle/product/19.0.0/db_1/dbs/initcdb2.ora' ``` 此方式适用于临时调试或恢复操作。 ### 示例:检查 `ORACLE_SID` 并创建参数文件 查看当前 `ORACLE_SID`: ```bash echo $ORACLE_SID ``` 切换到 `$ORACLE_HOME/dbs` 目录并创建参数文件: ```bash cd $ORACLE_HOME/dbs vi initorcl.ora ``` 输入参数内容并保存。随后在 SQL*Plus 中创建 SPFILE: ```sql SQL> CREATE SPFILE FROM PFILE; ``` 重启数据库实例: ```sql SQL> SHUTDOWN IMMEDIATE; SQL> STARTUP; ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值