Oracle集群ORA-03113:end-of-file on communication channel

2024-04-28 11:28

本文主要是介绍Oracle集群ORA-03113:end-of-file on communication channel,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、问题场景描述

      今天Oracle集群要更新各数据库的数据,折腾的启动不了了:

      --》数据量比较大,数据泵方式导出的dmp文件 准备导入集群

      --》由于之前的生产数据库数据比较少,需要增大表空间。

      --》于是在sqlplus命令窗口,写了一个增加表空间的语句,但后来太慢 整个都卡了,取消了

      --》有点心急,同时准备删除原用户重新建一个空用户进行导入

      --》drop用户时提示有连接无法删除,v$session 查看连接太多,懒得kill了

      --》😅想着数据库没其他的,重启一下也不要紧。结果shutdown immediate 写成shutdown 

      --》手一抖,回车  结果太慢,取消     再次shutdown immediate 不行了,改为shutdown abort

      --》关是关了:startup  完了,报错了,启动到mounted 就提示报错了,如下:

                 用startup  force  也不管用

           😱 反复尝试,shutdown abort  ;startup   都不管用~~~~

      (注意:startup force 是shutdown abort+startup的组合,强制关闭数据库+正确启动,强制关闭可能会有数据丢失)

二、网上的资料:

            前两种尝试了,失败告终。第三种 需要看日志,而且机器没有开rman,着急就忽略了。

     

       反正机器上没什么重要的数据库,于是😅出现如下mount:甚至recover都不行。

       启动到mount,再open 也不行。(注意:除非还原操作,resetlogs  要谨慎

     再次强调:open resetlog 操作比较危险的 容易丢数

三、解决办法--同事沟通、师傅指导

         思路:找最新的alert日志,查找问题根源。

(1)查看日志

        A.准备看一下日志的路径参数,结果报错。

sqlplus 进去  show parameter dump ,结果报错:

     B.切换oracle用户,cd  $ORACLE_BASE,一层层进目录,看结果。

su - oracle

cd $ORACLE_BASE

$ORACLE_BASE/diag/rdbms/orcl/orcl1/trace

trace下面 alert_x.日志:


      终于看到结果了,归档日志空间不足。

      C.看是否有进程在,查看数据库状态

ps -ef|grep ASM

ps -ef|grep smon


sqlplus "/as sysdba"
select instance_name,status from gv$instance;

ora_smon_orcl1 哪里来的?

查看集群数据库状态:
sqlplus "/as sysdba"
select instance_name,status from gv$instance;

结果:

 echo $ORACLE_SID

疑问:

ps -ef|grep LOCAL=NO|wc -l
ps -ef|grep LOCAL=NO

tail -f al* 

shutdown abort 
startup  

查看最新日志

D.进入集群,查看数据

查看共享存储的大小:
su  - grid
asmcmd  
lsdg

 结果: free_MB  太小了,512G的共享存储基本满了

archive  log  list

无法查看:

F.处理

pwd

cd   data

du 
ls

 

cd  archivelog

rm -rf  2022*

然后,再执行shutdown immediate  ->>startup   ,ok   成功启动

(2)备选方案(以上已ok,以下没有尝试)

如果执行上面仍不可以,则执行以下:

select instance_name,status from gv$instance;    

---recover database until cancel;

四、总结  及后续探讨

总结:

      show parameter dump

      $ORACLE_BASE/diag/rdbms/orcl/orcl1/trace

      su - grid

      asmcmd     lsdg

      cd data/archivelog/2024_04_05

      rm -rf  2022*

     shutdown immediate

     startup

后续探讨的问题:如何快速删除原用户的所有元数据,表、过程、包、视图、索引?

                                如何导入时把过程、视图、包,直接覆盖?

如果有实际使用过的,好的解决办法:欢迎探讨。

这篇关于Oracle集群ORA-03113:end-of-file on communication channel的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/943136

相关文章

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

IDEA下"File is read-only"可能原因分析及"找不到或无法加载主类"的问题

《IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题》:本文主要介绍IDEA下Fileisread-only可能原因分析及找不到或无法加载主类的问题,具有很好的参... 目录1.File is read-only”可能原因2.“找不到或无法加载主类”问题的解决总结1.File

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

Oracle 通过 ROWID 批量更新表的方法

《Oracle通过ROWID批量更新表的方法》在Oracle数据库中,使用ROWID进行批量更新是一种高效的更新方法,因为它直接定位到物理行位置,避免了通过索引查找的开销,下面给大家介绍Orac... 目录oracle 通过 ROWID 批量更新表ROWID 基本概念性能优化建议性能UoTrFPH优化建议注

PostgreSQL 序列(Sequence) 与 Oracle 序列对比差异分析

《PostgreSQL序列(Sequence)与Oracle序列对比差异分析》PostgreSQL和Oracle都提供了序列(Sequence)功能,但在实现细节和使用方式上存在一些重要差异,... 目录PostgreSQL 序列(Sequence) 与 oracle 序列对比一 基本语法对比1.1 创建序

Redis高可用-主从复制、哨兵模式与集群模式详解

《Redis高可用-主从复制、哨兵模式与集群模式详解》:本文主要介绍Redis高可用-主从复制、哨兵模式与集群模式的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录Redis高可用-主从复制、哨兵模式与集群模式概要一、主从复制(Master-Slave Repli

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

Redis分片集群的实现

《Redis分片集群的实现》Redis分片集群是一种将Redis数据库分散到多个节点上的方式,以提供更高的性能和可伸缩性,本文主要介绍了Redis分片集群的实现,具有一定的参考价值,感兴趣的可以了解一... 目录1. Redis Cluster的核心概念哈希槽(Hash Slots)主从复制与故障转移2.

Oracle数据库常见字段类型大全以及超详细解析

《Oracle数据库常见字段类型大全以及超详细解析》在Oracle数据库中查询特定表的字段个数通常需要使用SQL语句来完成,:本文主要介绍Oracle数据库常见字段类型大全以及超详细解析,文中通过... 目录前言一、字符类型(Character)1、CHAR:定长字符数据类型2、VARCHAR2:变长字符数

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre