1. 程式人生 > >記一次斷電恢復ORA-01033錯誤

記一次斷電恢復ORA-01033錯誤

客戶的電腦因為頻繁斷電,造成orcle無法連線,報ORA-01033:oracle初始化或者關閉錯誤.

按照傳統方法

進入cmd

sqlplus sys/[email protected] as sysdba 

可以連線.關閉資料庫
shutdown immediate

ORA-01109: 資料庫未開啟
已經解除安裝資料庫。
ORACLE 例程已經關閉。

再重新開啟,就打不開了,提示 TNS: 監聽程式當前無法識別連線描述符中請求的服務

遂修改listener.ora

原始listener.ora檔案是這樣的:

# listener.ora Network Configuration File: D:\app\LIHE\product\11.2.0\dbhome_2\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\app\LIHE\product\11.2.0\dbhome_2)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:D:\app\LIHE\product\11.2.0\dbhome_2\bin\oraclr11.dll")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = USER-20160412KB)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = D:\app\LIHE


改成:
# listener.ora Network Configuration File: D:\app\LIHE\product\11.2.0\dbhome_2\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\app\LIHE\product\11.2.0\dbhome_2)
      (PROGRAM = extproc)
     )
    (SID_DESC=
       (GLOBAL_DBNAME=sde)
       (ORACLE_HOME = D:\app\LIHE\product\11.2.0\dbhome_2)
       (SID_NAME = sde)
     )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = USER-20160412KB)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = D:\app\LIHE


再次重複資料庫關閉/開啟的操作,這次報 ORA-12528 TNS: 監聽程式: 所有適用例程都無法建立新連線

遂修改tnsnames.ora

原始的tnsnames.ora是這樣的

# tnsnames.ora Network Configuration File: D:\app\LIHE\product\11.2.0\dbhome_2\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )
SDE=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = sde)
    )
  )
LISTENER_SDE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = SDE) ) )
修改後:
# tnsnames.ora Network Configuration File: D:\app\LIHE\product\11.2.0\dbhome_2\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

SDE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = sde)
      (UR=A)
    )
  )

LISTENER_SDE =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = SDE)
    )
  )

修改後可以開啟資料庫,但是又報這個錯 ORA-00600: 內部錯誤程式碼, 引數: [kcratr_nab_less_than_odr]

遂按照如下程式碼去處理

--嘗試直接recover database
SQL> RECOVER DATABASE ;
ORA-00283: 恢復會話因錯誤而取消
ORA-00264: 不要求恢復
--提示不用恢復
 
--再開啟資料庫,還是kcratr_nab_less_than_odr錯誤警告
SQL> ALTER DATABASE OPEN;
ALTER DATABASE OPEN
*
第 1 行出現錯誤:
ORA-00600: 內部錯誤程式碼, 引數: [kcratr_nab_less_than_odr], [1], [99189],
[43531], [43569], [], [], [], [], [], [], []
 
--嘗試不完全恢復
SQL> RECOVER DATABASE UNTIL CANCEL;
ORA-10879: error signaled in parallel recovery slave
ORA-01547: 警告: RECOVER 成功但 OPEN RESETLOGS 將出現如下錯誤
ORA-01152: 檔案 1 沒有從過舊的備份中還原
ORA-01110: 資料檔案 1: 'D:\DBDMS\DATA\SYSTEM01.DBF'
 
--重建控制檔案
SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE AS 'D:/1.TXT';
 
資料庫已更改。
 
SQL> SHUTDOWN IMMEDIATE;
ORA-01109: 資料庫未開啟
 
 
已經解除安裝資料庫。
ORACLE 例程已經關閉。
SQL> STARTUP NOMOUNT;
ORACLE 例程已經啟動。
 
Total System Global Area  417546240 bytes
Fixed Size                  2176328 bytes
Variable Size             268438200 bytes
Database Buffers          138412032 bytes
Redo Buffers                8519680 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "DBDMS" NORESETLOGS  NOARCHIVELOG
  2      MAXLOGFILES 16
  3      MAXLOGMEMBERS 3
  4      MAXDATAFILES 100
  5      MAXINSTANCES 8
  6      MAXLOGHISTORY 18688
  7  LOGFILE
  8    GROUP 1 'D:\DBDMS\LOG\REDO01.LOG'  SIZE 50M BLOCKSIZE 512,
  9    GROUP 2 'D:\DBDMS\LOG\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,
 10    GROUP 3 'D:\DBDMS\LOG\REDO03.LOG'  SIZE 50M BLOCKSIZE 512
 11  DATAFILE
 12    'D:\DBDMS\DATA\SYSTEM01.DBF',
 13    'D:\DBDMS\DATA\SYSAUX01.DBF',
 14    'D:\DBDMS\DATA\RBSG01.DBF',
 15    'D:\DBDMS\DATA\DATA01.DBF',
 16    'D:\DBDMS\DATA\INDX01.DBF',
 17    'D:\DBDMS\DATA\DATA02.DBF',
 18    'D:\DBDMS\DATA\DATA03.DBF',
 19    'D:\DBDMS\DATA\DATA04.DBF',
 20    'D:\DBDMS\DATA\INDX02.DBF',
 21    'D:\DBDMS\DATA\SYSTEM02.DBF'
 22  CHARACTER SET ZHS16GBK
 23  ;
 
控制檔案已建立。
 
--繼續嘗試恢復
SQL> RECOVER DATABASE ;
完成介質恢復。
SQL> ALTER DATABASE OPEN;

最後一步OPEN的時候又報這個錯誤ORA-01589錯誤 要開啟資料庫則必須使用 RESETLOGS 或 NORESETLOGS 選項

又按照教程輸入如下程式碼:

SQL> recover database using backup controlfile

SQL> recover database using backup controlfile

指定日誌: {=suggested | filename | AUTO | CANCEL}

E:\oracle\oradata\orcl\redo02.log -------此處要求給出最新的logfile,到logfile的路徑下檢視這幾個檔案,如果能看到時間就直接給出最新的logfile絕對路徑,如果看不到就一個個的實驗一下就好了;

已應用的日誌。

完成介質恢復。

SQL> alter database open resetlogs;      

最終重新開啟庫

相關推薦

斷電恢復ORA-01033錯誤

客戶的電腦因為頻繁斷電,造成orcle無法連線,報ORA-01033:oracle初始化或者關閉錯誤. 按照傳統方法 進入cmd sqlplus sys/[email protected] as sysdba 可以連線.關閉資料庫 shutdown imm

Servlet中getAttribute的錯誤.

轉發 pat send exception new end auto rec login package com.ykmimi.order.servlet; import java.io.IOException; import javax.servlet.Reques

與Shiro有關的錯誤,404導致session丟失需要重新登入

一 問題描述 前段時間上司突然叫我幫忙解決老專案上的一個bug,出現的問題是不同使用者賬號,進入同一個頁面,有個別用戶重新整理一下當前頁面就會重定向到登入頁面,需要重新登入。 這是一個幾年前的一個專案,使用的是Srping + Spring MVC + Shiro + Jsp的專案,之前沒用過Shiro,

nginx負載均衡轉發錯誤 “no live upstreams while connecting to upstream ”

先描述一下環境,前段的負載均衡轉發給nginx,nginx再轉發給後端的應用伺服器。 nginx配置檔案如下: upstream ads {         server ap1:8888 max_fails=1 fail_timeout=60s;

#fragment使用空指標錯誤NullPointerException

最近 研究研究一個 主介面 裡面用到了fragment 巢狀 結果 出現了最讓人頭疼的東西 NullPointerException - 空指標引用異常 其實並不是什麼難題 但是很容易出錯 今天貼出來 給大家分享一下 希望對大家有幫

log4j日誌寫到錯誤檔案的問題

背景 專案採用log4j2記錄日誌,其中WARN級別日誌單獨記錄,日誌檔案採用RollingFileAppender,每天一個日誌檔案。 問題現象 在10月20號的日誌檔案中,發現了一條10月22日生成的日誌檔案,導致排查問題時漏看了一條日誌。 程式碼

AD域共享訪問錯誤(There are Currently No Logon Servers Available)的解決過程

內容摘要:本文描述了一次典型的域問題故障處理過程,現記錄如下以供同僚們參考 背景 起因 失敗狀態 解決思路 解決 結論 背景 起因 公司內有兩個獨立的域分別為:domA.contoso.com domB.contoso.

redis主從連線的錯誤

Redis版本 redis-4.0.11 安裝後多例項均可正常使用,將其中一個例項設定為從伺服器後,呼叫info replication報master_link_status:down; 外部原因: 1.因為redis部署在阿里雲伺服器上,首先在阿里雲控制

第一遇到死鎖——程式卡住問題的錯誤排查過程

10月24日,週四   我負責的遊戲啟動程式(Launcher)更新上線後,臨下班前接到運營訊息,反映部分網咖啟動Launcher後無反應。跑到客服現場,通過QQ遠端桌面觀察到如下現象:雙擊程式圖示後,程式出現在工作管理員程序列表裡,但無任何其它反應,沒有任何介面彈出;然

自動恢復的支付故障

故障描述 作為一個老牌OTA公司,公司早些年訂單主要來源是PC網站和呼叫中心。我在入職公司大約半年後,遇到一次非常詭異的故障。有一天早上,大概也是這個季節,陽光明媚,程式猿剛起床,洗洗涮涮,準備去迎接初戀般的工作日,卻突然收到一大堆報警,線上訊息佇列大量積壓;當然,我還是一如既往的非常勤奮地在9點之前就到公

redo損壞導致ora-600[4000]的恢復

據說今天是光棍節,逢年過節,必有大事。快下班的時候,一位朋友碰到了一個大問題,資料庫伺服器異常斷電重啟以後,資料庫無法啟動,報ora-600[4000]錯誤,嘗試了使用隱藏引數,還是無法開啟。 ORA-00704: bootstrap process failure ORA

impdp匯入資料時的ORA-31696錯誤

今天幫一同事從一個dump檔案中匯入資料到測試庫中,結果死活出現ORA-31696的錯誤: [[email protected]]$ impdp pebank/pebank directory=dumpdir dumpfile=mcj123.1011.dmp

錯誤的系統參數設置導致無法保持登錄狀態

linux如題,某天用xshell登錄華為雲(Centos 7),發現每間隔15分鐘自動斷開連接。百度後,備份並修改了/etc/profile,將TMOUT鍵值由900修改為1h。 保存後,source /etc/profile 使之生效,發現ssh剛連接進來1秒即斷開。不僅ssh登錄,從華為雲的遠程控制臺登

TokuMX數據庫集群恢復

關鍵詞 安裝路徑 bsp -a 連接 sys cfg and 安排 中午在昏睡中接到電話,服務器擴容後數據庫啟動不了了,於是不假思索的想到了TokuMX需要關閉對透明大頁的使用才可以正常啟動,而這點恰巧大家都不是很清楚,在這裏寫下關閉的shell: echo never

代碼錯誤的排查

rar temp 命名 microsoft 基礎 新建 事情 緩存 編譯 事情是這樣的   之前我們做了一個項目,已經做完了,我想將項目框架整理一下,就新建了一個項目,新項目的基礎框架直接從原來項目中copy了一份。 修改了命名空間後直接運行,發現出現了如下錯誤:

openstack 雲主機熱遷移失敗與恢復過程

openstack 遷移失敗 背景:最近把openstack上的所有機器的磁盤逐一重新分區,之前是兩塊磁盤用RAID1,但是ceph已經配置了3份副本,這樣相當於存6份副本了,目前磁盤資源不太夠。機器用的是HP P440ar的陣列卡,支持建立不同模式的邏輯卷,所以把磁盤分區修改為RAID1系統盤+RA

mysql數據庫刪除恢復的案例

mysql 數據恢復 linux emmmmm 今天晚上十一點有個朋友說他的數據庫刪除了。是昨天刪除的。我就日了mmp 了數據庫不做備份的??????????what fuck 那就登陸服務器看看吧看到還有一個4 月22 號的。那麽就新建一個數據庫導入進去唄導入導入之後改下源代碼看看能不能訪問e

測試環境Hbase數據備份恢復以及恢復後部分表無法刪除的問題處理

localhost mkdir folder max 一個表 任務 spa file config 一、Hbase數據備份恢復說明:因為測試環境要修改hadoop配置文件hdfs-site.xml的參數hdfs.rootdir修改前的配置 <property>

the account is locked數據庫錯誤

-a art ont scott ora user 文件中 use 配置 the account is locked錯誤(oracle) 1、原因:配置文件中的數據庫鏈接密碼設置錯誤,導致多次訪問數據庫之後,數據庫用戶鎖死。 2、用system用戶登錄後執行“alter u

幫朋友解決apache站點403錯誤的過程

efault 網上 .html blog x86 main comm 單獨 span apache版本: [root@iZ25eby2utyZ web]# rpm -qa | grep httpd httpd-tools-2.2.15-47.el6.centos.3