錯誤案例一:中斷ORACLE數據庫關閉進程


今天是第一天寫博客,遇到了在適用oracle的shutdown命令時犯的錯誤,具體情況是這樣:首先我用shutdown命令想去關閉oracle數據庫實例,但是命令執行大概有40s左右不動了,我以為是電腦卡了或者是命令有問題,然后就把命令窗口給關了,然后重啟命令窗口,連接到oracle,sqlplus / as sysdba ,可以連接;但是startup命令就開始報錯了,

SQL*Plus: Release 11.2.0.1.0 Production on 星期五 10月 26 17:39:12 2018

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

已連接。
SQL> startup
ORA-01012: not logged on
SQL> shutdown
ORA-24324: 未初始化服務句柄
ORA-24323: 不允許此值
ORA-01090: shutdown in progress - connection is not permitted
SQL> shutdown immediate
ORA-24324: 未初始化服務句柄
ORA-24323: 不允許此值
ORA-01090: shutdown in progress - connection is not permitted
SQL> shutdown abort
ORA-01031: insufficient privileges

 

這個時候發現關也關不了,啟動也啟動不了;然后看了一下監聽狀態:

C:\Users\wangjun>lsnrctl status listener

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 26-10月-2018 17:43:18

Copyright (c) 1991, 2010, Oracle. All rights reserved.

正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
LISTENER 的 STATUS
------------------------
別名 LISTENER
版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
啟動日期 26-10月-2018 13:07:24
正常運行時間 0 天 4 小時 35 分 57 秒
跟蹤級別 off
安全性 ON: Local OS Authentication
SNMP OFF
監聽程序參數文件 D:\SoftWareFiles\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
監聽程序日志文件 d:\softwarefiles\oracle\diag\tnslsnr\LAPTOP-KAM93C7U\listener\alert\log.xml
監聽端點概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=LAPTOP-KAM93C7U)(PORT=1521)))
服務摘要..
服務 "CLRExtProc" 包含 1 個實例。
實例 "CLRExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
服務 "orcl" 包含 1 個實例。
實例 "orcl", 狀態 BLOCKED, 包含此服務的 1 個處理程序...
服務 "orclXDB" 包含 1 個實例。
實例 "orcl", 狀態 BLOCKED, 包含此服務的 1 個處理程序...
命令執行成功

 

發現實例被鎖了,然后就再把窗口關掉,重新用強制關閉命令shutdown abort關閉實例,再startup,搞定


SQL*Plus: Release 11.2.0.1.0 Production on 星期五 10月 26 17:45:44 2018

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

已連接。
SQL> shutdown abort
ORACLE 例程已經關閉。
SQL> startup
ORACLE 例程已經啟動。

Total System Global Area 3373858816 bytes
Fixed Size 2180424 bytes
Variable Size 1845496504 bytes
Database Buffers 1509949440 bytes
Redo Buffers 16232448 bytes
數據庫裝載完畢。

C:\Users\wangjun>lsnrctl status listener

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 26-10月-2018 17:49:52

Copyright (c) 1991, 2010, Oracle. All rights reserved.

正在連接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
LISTENER 的 STATUS
------------------------
別名 LISTENER
版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
啟動日期 26-10月-2018 13:07:24
正常運行時間 0 天 4 小時 42 分 32 秒
跟蹤級別 off
安全性 ON: Local OS Authentication
SNMP OFF
監聽程序參數文件 D:\SoftWareFiles\Oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
監聽程序日志文件 d:\softwarefiles\oracle\diag\tnslsnr\LAPTOP-KAM93C7U\listener\alert\log.xml
監聽端點概要...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=LAPTOP-KAM93C7U)(PORT=1521)))
服務摘要..
服務 "CLRExtProc" 包含 1 個實例。
實例 "CLRExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...
服務 "orcl" 包含 1 個實例。
實例 "orcl", 狀態 READY, 包含此服務的 1 個處理程序...
服務 "orclXDB" 包含 1 個實例。
實例 "orcl", 狀態 READY, 包含此服務的 1 個處理程序...
命令執行成功

 

然后查了一下,oracle的啟動和關閉分別有幾種參數對應不同的場景

shutdown normal--等會話結束,會有點慢

shutdown transactional--不等會話,等事物結束

shutdown immediate--不等事物結束,沒完成的事務自動rollback

shutdown abort--最凶殘的方式,啥都不管直接干掉,但是啟動時自動恢復實例

關閉數據庫時間從長到短,開啟時間從短到長

startup nomount--只啟動實例

startup mount--啟動實例,讀取控制文件,不讀數據 ,備份的時候用

start open --默認是這個,啟動讀文件讀數據

 

 

注釋:

提示錯誤:insufficient privileges

提示錯誤:oracle11g lsnrctl status 提示實例 "orcl", 狀態 BLOCKED

提示錯誤:ORA-12528: TNS: 監聽程序: 所有適用例程都無法建立新連接

提示錯誤:ORA-24324: 未初始化服務句柄

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM