Oracle报错ORA-01078、LRM-00109

虚拟机异常关机后,rac数据库备机无法启动数据库,报错如下

解决方法:

找到如下路径文件

执行:

cp init.ora.016202516818 /u01/app/oracle/product/19.3.0/db/dbs/

mv init.ora.016202516818 initplm2.ora

再次进入命令行sqlplus / as sysdba

startup

若有报错ORA-271407,27300,27301,27302,27303,则需检查主机的oracle和grid用户家目录下的bin目录下的oracle文件属性,正常是6751,如果不是,则需要修改回来

<think>好的,我现在需要帮助用户解决关于Oracle数据库版本之间命令差异的问题。用户提到在Oracle 10g中使用了一个特定的oradim.exe命令,现在想知道在Oracle 21c中对应的命令应该是什么。首先,我需要确认用户的需求到底是什么。他们可能正在升级或迁移数据库,需要了解新版本中的工具和命令是否有变化。 首先,我应该回忆一下oradim.exe这个工具的作用。oradim是Oracle在Windows上的一个实用程序,用于创建、删除、启动和停止Oracle服务实例。在10g中,用户使用了命令来新建一个SID为orcl的实例,并指定手动启动模式和spfile。现在的问题是,这个命令在21c中是否仍然适用,或者是否有新的方法。 接下来,我需要检查Oracle 21c的文档,确认oradim.exe是否仍然存在,或者是否有替代工具。根据我的知识,Oracle在之后的版本中仍然支持oradim.exe,尤其是在Windows环境中,因为这是管理服务的主要工具。不过,参数或语法可能有所变化,或者推荐使用其他方法,比如SQL*Plus或Oracle提供的图形界面工具。 用户给出的命令是:D:\oracle\product\10.2.0\bin\oradim.exe -new -sid orcl -startmode manual -spfile。这里的关键参数是-new(新建实例)、-sid指定实例名、-startmode manual(手动启动)、-spfile指定使用spfile。我需要确认在21c中这些参数是否仍然有效,或者是否有不同的参数名称。 另外,Oracle 21c可能引入了新的管理方式,比如使用ORADIM的更高版本,或者推荐使用Oracle Restart、srvctl等工具,但通常在Windows上,ORADIM仍然是主要的服务管理工具。因此,可能需要调整路径,因为Oracle 21c的安装路径可能不同,例如D:\oracle\product\21c\...,但用户需要替换实际安装路径。 需要注意的是,从Oracle 12c开始,引入了多租户架构,但ORADIM本身可能不直接处理CDB或PDB,而是管理实例服务。因此,命令参数可能不会有太大变化。不过,应该验证参数是否兼容,比如-spfile是否仍然有效,或者是否需要其他参数。 另外,用户可能需要知道,除了使用oradim.exe,还可以通过SQL*Plus创建SPFILE,或者使用DBCA(数据库配置助手)来创建数据库实例,这可能更符合Oracle当前的最佳实践。不过,用户可能希望继续使用命令行工具,所以需要给出对应的命令。 可能需要检查的步骤包括: 1. 确认Oracle 21c的ORADIM.exe路径是否正确,通常位于ORACLE_HOME的bin目录下。 2. 验证命令参数在21c中是否有效,特别是-spfile是否存在,或者是否需要其他参数。 3. 是否需要以管理员身份运行命令提示符,因为涉及服务创建。 4. 是否在创建实例后还需要执行其他步骤,如创建数据库等。 可能的陷阱包括路径错误、权限不足、参数变更等。例如,某些版本的ORADIM可能需要使用-pfile而不是-spfile,或者-startmode的参数可能有不同的选项。需要查阅21c的官方文档确认参数的正确性。 总结来说,用户的问题核心在于将Oracle 10g的命令迁移到21c的环境,需要确保命令语法和工具路径的更新。同时,可能建议用户使用更现代的方法,但必须提供直接的命令对应。</think>在Oracle 21c中,`oradim.exe`工具仍然用于管理Windows服务,但需要注意路径、参数兼容性及Oracle新版本的最佳实践。以下是具体对应步骤和注意事项: --- ### **1. 命令的对应关系** 原Oracle 10g命令: ```bash D:\oracle\product\10.2.0\bin\oradim.exe -new -sid orcl -startmode manual -spfile ``` 对应Oracle 21c的命令: ```bash <ORACLE_HOME>\bin\oradim.exe -new -sid ORCL -startmode manual -spfile ``` --- ### **2. 关键调整说明** #### **(1) ORADIM路径** Oracle 21c默认安装路径可能与10g不同,需替换为实际路径。例如: ```bash # 假设Oracle 21c安装在 D:\app\oracle\product\21c D:\app\oracle\product\21c\dbhomeXE\bin\oradim.exe -new -sid ORCL -startmode manual -spfile ``` #### **(2) 参数兼容性** - `-new`:仍用于创建新实例。 - `-sid`:指定实例名(建议大写,如`ORCL`)。 - `-startmode manual`:服务启动模式设为手动。 - `-spfile`:指定使用SPFILE初始化参数文件(21c仍支持)。 #### **(3) 权限要求** 以**管理员身份运行CMD**,否则会报错: ```bash ORA-27101: Shared memory realm does not exist ``` --- ### **3. 验证操作是否成功** 1. **检查Windows服务**: 在服务列表中应看到新服务 `OracleServiceORCL`(状态为“已停止”)。 2. **通过SQL*Plus连接**: ```bash sqlplus / as sysdba startup # 手动启动数据库 ``` --- ### **4. Oracle 21c的额外建议** #### **(1) 使用DBCA(推荐)** Oracle推荐通过图形化工具 **Database Configuration Assistant (DBCA)** 创建数据库,可自动处理实例和服务配置: ```bash dbca -silent -createDatabase -gdbName ORCL ... ``` #### **(2) 多租户架构(CDB/PDB)** 若使用多租户架构,需在创建实例后通过SQL命令创建PDB: ```sql CREATE PLUGGABLE DATABASE pdb1 ADMIN USER pdbadmin IDENTIFIED BY password; ``` --- ### **5. 常见问题** #### **(1) 报错`LRM-00109: could not open parameter file`** - **原因**:未生成SPFILE或路径错误。 - **解决**:手动创建SPFILE: ```sql CREATE SPFILE FROM PFILE; ``` #### **(2) 服务未生成** - **原因**:`oradim.exe`路径错误或权限不足。 - **解决**:检查路径并以管理员身份运行CMD。 --- ### **总结** Oracle 21c仍兼容`oradim.exe`命令,核心参数(`-new`, `-sid`, `-spfile`)无需修改,但需注意路径和权限。建议结合DBCA工具简化操作,并根据需求选择是否启用多租户架构。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值