本文主要是介绍docker解决oracle中ORA-12514和ORA-03113问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务;
1、进入docke容器
docker exec -it 容器id bash
2、找到并修改listener.ora文件
查看oracle的位置
命令:cat /etc/profile
这是listener.ora文件的位置
/home/oracle/app/oracle/product/11.2.0/dbhome_2/network/admin/listener.ora
在文件中的SID_LIST_LISTENER中添加代码段
(SID_DESC =(GLOBAL_DBNAME = ORCL)(ORACLE_HOME = /home/oracle/app/oracle/product/11.2.0/dbhome_2) (SID_NAME = ORCL) )
GLOBAL_DBNAME:全局数据库名;
ORACLE_HOME:填写oracle安装目录;
SID_NAME:一般默认都是ORCL(也可以修改,如果修改tnsnames.ora文件也需要改动)
全部内容:
到此第一个问题就解决了,如果还是没有解决请继续往下执行!
oracle-rac实例不能启动 报ORA-03113
1、登录sqlplus
SQL> sqlplus /nolog
SQL> conn / as sysdba;
2、启动数据库(mount方式)
SQL> startup mount
ORACLE instance started.
3、查看v$log
直接reset不成功
SQL> select * from v$log;
GROUP # THREAD# SEQUENCE # BYTES BLOCKSIZE MEMBERS ARC
/---------- ---------- ---------- ---------- ---------- ---------- —
STATUS FIRST_CHANGE# FIRST_TIM NEXT_CHANGE# NEXT_TIME
/---------------- ------------- --------- ------------ ---------
1 1 112 52428800 512 1 NO
INACTIVE 3826382 16-JUL-23 3857158 17-JUL-23
3 1 114 52428800 512 1 NO
CURRENT 3886899 17-JUL-23 2.8147E+14
2 1 113 52428800 512 1 NO
INACTIVE 3857158 17-JUL-23 3886899 17-JUL-23
4、reset log
SQL> alter database open resetlogs 2;
alter database open resetlogs 2
*
ERROR at line 1:
ORA-02288: invalid OPEN mode
5、恢复数据库日志
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:ORA-01139: RESETLOGS option only valid after an incomplete database recovery
SQL> recover database until time ‘2013-07-05 00:00:00’
Media recovery complete.
SQL> alter database open resetlogs;
Database altered.
到此第二个问题也就解决了
这篇关于docker解决oracle中ORA-12514和ORA-03113问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!