前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >未完全关闭数据库导致ORA-01012: not logged的解决

未完全关闭数据库导致ORA-01012: not logged的解决

作者头像
Java学习123
发布2018-05-16 14:12:26
5.5K0
发布2018-05-16 14:12:26
举报
文章被收录于专栏:Java学习123

首先使用SHUTDOWN NORMAL方式关闭数据库,在数据库未关闭时CTRL+Z停止执行,退出用SQLPLUS重登陆,出现报错:ORA-01012: not logged on

实验如下:

首先执行 SYS@bys1>shutdown ORA-01013: user requested cancel of current operation [oracle@bys001 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Sat Sep 7 09:05:08 2013 Copyright (c) 1982, 2009, Oracle.  All rights reserved. Connected. ERROR: ORA-01012: not logged on Process ID: 0 Session ID: 0 Serial number: 0 SYS@bys1>startup ORA-01012: not logged on SYS@bys1>conn / as sysdba Connected to an idle instance. ERROR: ORA-01012: not logged on Process ID: 0 Session ID: 0 Serial number: 0 SYS@bys1>conn esb/esb ERROR: ORA-01090: shutdown in progress - connection is not permitted Process ID: 0 Session ID: 0 Serial number: 0 Warning: You are no longer connected to ORACLE.

解决方法:

找到进程,kill掉就可以了。

[oracle@bys001 ~]$ ps -ef |grep ora_dbw0_ oracle    6519     1  0 Sep06 ?        00:00:15 ora_dbw0_bys1 oracle   20947 20924  0 09:08 pts/0    00:00:00 grep ora_dbw0_ [oracle@bys001 ~]$ kill -9 6519 [oracle@bys001 ~]$ ps -ef |grep ora_dbw0_ oracle   20949 20924  0 09:08 pts/0    00:00:00 grep ora_dbw0_ [oracle@bys001 ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.1.0 Production on Sat Sep 7 09:08:22 2013 Copyright (c) 1982, 2009, Oracle.  All rights reserved. Connected to an idle instance. SYS@bys1>startup ORACLE instance started. Total System Global Area  631914496 bytes Fixed Size                  1338364 bytes Variable Size             264242180 bytes Database Buffers          360710144 bytes Redo Buffers                5623808 bytes Database mounted. Database opened. SYS@bys1>

ORA-01012:not logged on的解决办法

conn / as sysdba 报错ORA-01012: not logged on

发生原因:关闭数据库是shutdown 后面没有接关闭参数中的任何一个。

 nomal          --->所有连接都断开时才能关闭;

 transactional  --->等待事务结束后,主动断开连接;

 immediate      --->主动断开事务和连接  www.2cto.com  

 abort          --->立刻关闭数据库,这个操作是危险的,不会同步数据,不触发检查点,回滚段直接清  空,相当于掉电,每次启动都要实例恢复。

所以,数据库关闭很慢,这时我一心急,就直接退出了sqlplus,造成oracle文件被lock,当我再次startup时,操作失败,因为文件依然被锁定状态。报错ORA-01012: not logged on。

后来重启服务,就可以用了,看了oracle的报错解释,更让我费解。虽然问题解决了,但是生产环境是不能随便down机的,所以,这个问题待续。。。

   www.2cto.com  

kill oracle 进程 或者关掉oracle

ps -ef|grep ora_dbw0_$ORACLE_SID

kill  -9 pid

重新启动oracle

sqlplus sys as sysdba

startup;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档