windows2003系統,oracle9i崩潰後的恢復

如下是我從網上找到的資料,以供參考。
具體狀況是這樣的,今年7年,杭州天氣炎熱,機房的溫度很高,恰恰這時候空調壞了,結果形成幾臺服務器死機,其中一臺出現的情況比較嚴重,重啓後,其餘幾臺都恢復正常,但這臺老是藍屏,重啓不行,最後採用了強制關機。
開機後,這臺機器上的oracle9i數據庫的服務從系統服務中消失,從命令行採用sqlplus測試,顯示,命令不合法。
但原來數據庫的數據文件都在,諮詢了DBA後,建議從新裝,但只裝軟件,不用裝數據庫。
一、首先找到原來的安裝文件,執行安裝,仍然安裝在之前安裝的位置,但要把以前的文件先備份,以防萬一,記着,只裝軟件,不裝數據庫
二、數據庫軟件裝好後,從命令行測試,oracle9i的服務已經恢復,接下來要恢復數據。
3,可是當登陸數據庫的時候,老是提示錯誤

ORA-12560: TNS: 協議適配器錯誤 sql

後來參考下面的文檔,問題解決啦。數據庫

 

用戶的系統崩潰,此次的環境是Oracle 9i,操做系統是windows2003。 數據庫的數據都存在,須要恢復。

具體作法和恢復10G有些相似: windows

1.將之前的目錄更名,從新按照之前的結構安裝數據庫軟件。 安全

2.將之前數據文件中的 d:「oracle「oradata 和d:「oracle「admin 文件拷貝到對應新建的目錄下。 服務器

3.將參數文件,listener.ora,密碼文件拷貝到對應的目錄下。 oracle

4.啓動數據庫tcp

C:「Documents and Settings「Administrator>sqlplus /nolog 工具

SQL*Plus: Release 9.2.0.1.0 - Production on 星期六 10月 11 22:36:27 2008 測試

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. 操作系統

SQL> conn / as sysdba

ERROR:

ORA-12560: TNS: 協議適配器錯誤

5。配置察看監聽:

C:「Documents and Settings「Administrator>lsnrctl

LSNRCTL for 32-bit Windows: Version 9.2.0.1.0 - Production on 11-10月-2008 22:

:04

Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.

來到LSNRCTL,請鍵入"help"以得到信息。

LSNRCTL> status

正在鏈接到 (ADDRESS=(PROTOCOL=tcp)(PORT=1521))

TNS-12541: TNS:無監聽器

TNS: 協議適配器錯誤

TNS-00511: 無監聽器

32-bit Windows Error: 61: Unknown errorITPUB我的空間h)Im[ u

LSNRCTL> start

啓動tnslsnr:請稍候...

Failed to open service , error 1060.

TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production

寫入e:「oracle「ora92「network「log「listener.log的日誌信息

監聽:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver31)(PORT=1521)))

正在鏈接到 (ADDRESS=(PROTOCOL=tcp)(PORT=1521))

LISTENER 的 STATUS

別名 LISTENER

版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - ProducITPUB我的空間 i b f5k x p W D!t

tion

啓動日期 11-10月-2008 22:38:11

正常運行時間 0 天 0 小時 0 分 0 秒

跟蹤級別 off

安全性 OFF

SNMP OFF

監聽器日誌文件 e:「oracle「ora92「network「log「listener.log

8L)f,「3A.f0監聽端點概要...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver31)(PORT=1521)))

監聽器不支持服務

命令執行成功

狀態是不正確的,說明沒有監聽程序。拷貝監聽的listen.ora後,

LSNRCTL> start

啓動tnslsnr:請稍候...

TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Production

系統參數文件爲e:「oracle「ora92「network「admin「listener.ora

寫入e:「oracle「ora92「network「log「listener.log的日誌信息

監聽:(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=「「.「pipe「EXTPROC0ipc)))

監聽:(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver31)(PORT=1521)))

正在鏈接到 (ADDRESS=(PROTOCOL=tcp)(PORT=1521))

LISTENER 的 STATUS

別名 LISTENER

版本 TNSLSNR for 32-bit Windows: Version 9.2.0.1.0 - Produc

tion

啓動日期 11-10月-2008 22:40:52

正常運行時間 0 天 0 小時 0 分 4 秒

跟蹤級別 off

安全性 OFF

SNMP OFF

監聽器參數文件 e:「oracle「ora92「network「admin「listener.ora

監聽器日誌文件 e:「oracle「ora92「network「log「listener.log

監聽端點概要

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=「「.「pipe「EXTPROC0ipc)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver31)(PORT=1521)))

服務摘要

服務 "PLSExtProc" 包含 1 個例程。

例程 "PLSExtProc", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...

服務 "orc1" 包含 1 個例程。

例程 "orc1", 狀態 UNKNOWN, 包含此服務的 1 個處理程序...

命令執行成功

6.啓動數據庫仍報錯:

SQL> conn / as sysdba

ERROR:

TNS: 協議適配器錯誤

解決ORA-12560: TNS: 協議適配器錯誤,與你們共享

遭遇ORA-12560: TNS: 協議適配器錯誤的問題,通過一番努力問題已經解決,與你們共享。

形成ORA-12560: TNS: 協議適配器錯誤的問題的緣由有三個:

1.監聽服務沒有起起來。windows平臺個一以下操做:開始-程序-管理工具-服務,打開服務面板,

啓動oraclehome92TNSlistener服務。

2.database instance沒有起起來。windows平臺以下操做:開始-程序-管理工具-服務,打開服務

面板,啓動oracleserviceXXXX,XXXX就是你的database SID.

3.註冊表問題。regedit,而後進入HKEY_LOCAL_MACHINE「SOFTWARE「ORACLE「HOME0將該環境變量ORACLE_SI

D設置爲XXXX,XXXX就是你的database SID.或者右幾個人電腦,屬性高級環境變量-系統變量新建

,變量名=oracle_sid,變量值=XXXX,XXXX就是你的database SID.或者進入sqlplus前,在command line下

輸set oracle_sid=XXXX,XXXX就是你的database SID.

通過以上步驟,就能夠解決問題。

相關文章
相關標籤/搜索