我开发了一个有趣的剧本来自动在CentOS7上安装Oracle 12c Release 2,并且获得了完整的安装。但是,我无法使用startup
启动数据库实例,我使用模板中的ansible var从模板生成dbca.rsp
,并使用以下命令生成它:
- name: create database
command: '{{ oracle_home }}/bin/dbca -silent -createDatabase -sid {{ oracle_sid }} -templateName General_Purpose.dbc -responseFile {{ installation_folder }}/dbca.rsp'
预期结果将是正常安装并创建文件initSID.ora
,但是我只得到init.ora
文件,因为没有SID附加到文件中,因此没有它的核心,因此我无法启动数据库实例。
当我使用sqlplus / as sysdba
作为SYSDBA进行连接以获得特权时,请使用startup
或STARTUP PFILE ='/oracle/app/oracle/product/12201/dbhome_1/dbs/init.ora';
我得到了错误:
ORA-01261: Parameter db_recovery_file_dest destination string cannot be translated
ORA-01262: Stat failed on a file destination directory
Linux-x86_64 Error: 2: No such file or directory
创建新的PFILE或SPFILE将返回相同的错误
我怀疑是dbca.rsp
不能生成良好的启动文件,因为其他响应文件正在生成安装设置(db_install.rsp
)和linstener(netca.rsp
)和数据这些文件上的文件被正确地完整归档。
请注意,我正在使用的模板是从oracle12c第2版的全新安装中提取的,其中仅变量包含剧本本身的变量值,例如SID,安装位置,库存位置等。