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迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

Go语言使用select监听多个channel的示例详解

《Go语言使用select监听多个channel的示例详解》本文将聚焦Go并发中的一个强力工具,select,这篇文章将通过实际案例学习如何优雅地监听多个Channel,实现多任务处理、超时控制和非阻... 目录一、前言:为什么要使用select二、实战目标三、案例代码:监听两个任务结果和超时四、运行示例五

Oracle查询表结构建表语句索引等方式

《Oracle查询表结构建表语句索引等方式》使用USER_TAB_COLUMNS查询表结构可避免系统隐藏字段(如LISTUSER的CLOB与VARCHAR2同名字段),这些字段可能为dbms_lob.... 目录oracle查询表结构建表语句索引1.用“USER_TAB_COLUMNS”查询表结构2.用“a

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满

Redis分片集群、数据读写规则问题小结

《Redis分片集群、数据读写规则问题小结》本文介绍了Redis分片集群的原理,通过数据分片和哈希槽机制解决单机内存限制与写瓶颈问题,实现分布式存储和高并发处理,但存在通信开销大、维护复杂及对事务支持... 目录一、分片集群解android决的问题二、分片集群图解 分片集群特征如何解决的上述问题?(与哨兵模

SpringBoot连接Redis集群教程

《SpringBoot连接Redis集群教程》:本文主要介绍SpringBoot连接Redis集群教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 依赖2. 修改配置文件3. 创建RedisClusterConfig4. 测试总结1. 依赖 <de

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指

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

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