ORA-01012: not logged on

问题描述

明明已经shutdown immediate一致性关库,但是查进程时发现oracle进程依然存在。sqlplus / as sysdba登录提示ORA-01012: not logged on报错,着重强调,服务器上就一个实例。

分析过程

查看进程

我通常会在shutdown immediate之后查下进程是否还在,头一回碰到进程还在的情况。

查看数据库日志

日志中已显示Completed: ALTER DATABASE CLOSE NORMAL

......
SMON: disabling tx recovery
SMON: disabling cache recovery
Fri May 17 17:48:45 2024
Shutting down archive processes
Archiving is disabled
Archive process shutdown avoided: 0 active
Thread 1 closed at log sequence 5879
Successful close of redo thread 1
Fri May 17 18:00:27 2024
Completed: ALTER DATABASE CLOSE NORMAL

尝试再次启动

[oracle@host-10-35-76-7 ~]$ export ORACLE_SID=topeocps
[oracle@host-10-35-76-7 ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Fri May 17 18:12:01 2024

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected.
SQL> startup
ORA-01012: not logged on

查看资源

IPC资源未释放

--查看所有的IPC资源,包括共享内存,共享队列
[oracle@host-10-35-76-7 dbs]$ ipcs -a 

------ Shared Memory Segments --------
key        shmid      owner      perms      bytes      nattch     status      
0x00000000 131075     oracle     640        134217728  14                      
0x00000000 163844     oracle     640        20132659200 14                      
0x6b2b0e34 196613     oracle     640        2097152    14                      

------ Semaphore Arrays --------
key        semid      owner      perms      nsems     
0x17d6a1bc 163842     oracle     640        250       
0x17d6a1bd 196611     oracle     640        250       
0x17d6a1be 229380     oracle     640        250       
0x17d6a1bf 262149     oracle     640        250       
0x17d6a1c0 294918     oracle     640        250       
0x17d6a1c1 327687     oracle     640        250       
0x17d6a1c2 360456     oracle     640        250       
0x17d6a1c3 393225     oracle     640        250       
0x17d6a1c4 425994     oracle     640        250       

------ Message Queues --------
key        msqid      owner      perms      used-bytes   messages   

解决办法

shutdown abort停止库

群里有大佬引导可用shutdown abort停止库,起初有些担心毕竟是生产库,还未开归档,没有备份。万一库启动不起来咋弄,但是也没更好的办法了,只能大胆的尝试了shutdown abort停止库

SQL> shutdown abort
ORACLE instance shut down.

启动数据库

万幸启动数据库成功。

SQL> startup      
ORACLE instance started.

Total System Global Area 2.0176E+10 bytes
Fixed Size		    2261928 bytes
Variable Size		 3422555224 bytes
Database Buffers	 1.6710E+10 bytes
Redo Buffers		   41463808 bytes
Database mounted.
Database opened.

总结

停库前最好查下是否有会话未断开,如果有进行断开。

--查看不同用户的连接数
select username,count(username) from v$session where username is not null group by username;

--查询用户会话
select username,serial#, sid from v$session where username is not null;
select username,status,schemaname,osuser,process,machine,port,program,serial#, sid from v$session where username is not null;

--删除相关用户会话
alter system kill session 'sid,serial#';

补充:
--源库杀用户连接 不建议 该步骤慎重 该文档未进行该操作  该方法迫不得已不用
ps -ef|grep LOCAL=NO|awk '{print $2}'|xargs kill -9

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。在编写C程序时,需要注意变量的声明和定义、指针的使用、内存的分配与释放等问题。C语言中常用的数据结构包括: 1. 数组:一种存储同类型数据的结构,可以进行索引访问和修改。 2. 链表:一种存储不同类型数据的结构,每个节点包含数据和指向下一个节点的指针。 3. 栈:一种后进先出(LIFO)的数据结构,可以通过压入(push)和弹出(pop)操作进行数据的存储和取出。 4. 队列:一种先进先出(FIFO)的数据结构,可以通过入队(enqueue)和出队(dequeue)操作进行数据的存储和取出。 5. 树:一种存储具有父子关系的数据结构,可以通过中序遍历、前序遍历和后序遍历等方式进行数据的访问和修改。 6. 图:一种存储具有节点和边关系的数据结构,可以通过广度优先搜索、深度优先搜索等方式进行数据的访问和修改。 这些数据结构在C语言中都有相应的实现方式,可以应用于各种不同的场景。C语言中的各种数据结构都有其优缺点,下面列举一些常见的数据结构的优缺点: 数组: 优点:访问和修改元素的速度非常快,适用于需要频繁读取和修改数据的场合。 缺点:数组的长度是固定的,不适合存储大小不固定的动态数据,另外数组在内存中是连续分配的,当数组较大时可能会导致内存碎片化。 链表: 优点:可以方便地插入和删除元素,适用于需要频繁插入和删除数据的场合。 缺点:访问和修改元素的速度相对较慢,因为需要遍历链表找到指定的节点。 栈: 优点:后进先出(LIFO)的特性使得栈在处理递归和括号匹配等问题时非常方便。 缺点:栈的空间有限,当数据量较大时可能会导致栈溢出。 队列: 优点:先进先出(FIFO)的特性使得

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

董小姐yyds

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值