用戶的系統崩潰這次的環境是Oracle i操作系統是windows數據庫的數據都存在需要恢復
具體做法和恢復G有些類似
將以前的目錄改名重新按照以前的結構安裝數據庫軟件
將以前數據文件中的 d:\oracle\oradata 和d:\oracle\admin 文件拷貝到對應新建的目錄下
將參數文件listenerora密碼文件拷貝到對應的目錄下
啟動數據庫
C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release Production on 星期六 月 ::
Copyright (c) Oracle Corporation All rights reserved
SQL> conn / as sysdba
ERROR:
ORA: TNS: 協議適配器錯誤
配置察看監聽
C:\Documents and Settings\Administrator>lsnrctl
LSNRCTL for bit Windows: Version Production on 月 :
:
Copyright (c) Oracle Corporation All rights reserved
歡迎來到LSNRCTL請鍵入help以獲得信息
LSNRCTL> status
正在連接到 (ADDRESS=(PROTOCOL=tcp)(PORT=))
TNS: TNS無監聽器
TNS: 協議適配器錯誤
TNS: 無監聽器
bit Windows Error: : Unknown errorITPUB個人空間h)Im[u
LSNRCTL> start
啟動tnslsnr請稍候
Failed to open service error
TNSLSNR for bit Windows: Version Production
寫入e:\oracle\ora\network\log\listenerlog的日志信息
監聽(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver)(PORT=)))
正在連接到 (ADDRESS=(PROTOCOL=tcp)(PORT=))
LISTENER 的 STATUS
別名 LISTENER
版本 TNSLSNR for bit Windows: Version ProducITPUB個人空間i bfkxpW D!t
tion
啟動日期 月 ::
正常運行時間 天 小時 分 秒
跟蹤級別 off
安全性 OFF
SNMP OFF
監聽器日志文件 e:\oracle\ora\network\log\listenerlog
L)f\Af監聽端點概要
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver)(PORT=)))
監聽器不支持服務
命令執行成功
狀態是不正確的說明沒有監聽程序拷貝監聽的listenora後
LSNRCTL> start
啟動tnslsnr請稍候
TNSLSNR for bit Windows: Version Production
系統參數文件為e:\oracle\ora\network\admin\listenerora
寫入e:\oracle\ora\network\log\listenerlog的日志信息
監聽(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\\pipe\EXTPROCipc)))
監聽(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver)(PORT=)))
正在連接到 (ADDRESS=(PROTOCOL=tcp)(PORT=))
LISTENER 的 STATUS
別名 LISTENER
版本 TNSLSNR for bit Windows: Version Produc
tion
啟動日期 月 ::
正常運行時間 天 小時 分 秒
跟蹤級別 off
安全性 OFF
SNMP OFF
監聽器參數文件 e:\oracle\ora\network\admin\listenerora
監聽器日志文件 e:\oracle\ora\network\log\listenerlog
監聽端點概要
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\\pipe\EXTPROCipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=xjserver)(PORT=)))
服務摘要
服務 PLSExtProc 包含 個例程
例程 PLSExtProc 狀態 UNKNOWN 包含此服務的 個處理程序
服務 orc 包含 個例程
例程 orc 狀態 UNKNOWN 包含此服務的 個處理程序
命令執行成功
啟動數據庫仍報錯
SQL> conn / as sysdba
ERROR:
TNS: 協議適配器錯誤
解決ORA: TNS: 協議適配器錯誤與大家共享
今天遭遇ORA: TNS: 協議適配器錯誤的問題經過一番努力問題已經解決與大家共享
造成ORA: TNS: 協議適配器錯誤的問題的原因有三個
監聽服務沒有起起來windows平台個一如下操作開始程序管理工具服務打開服務面板
啟動oraclehomeTNSlistener服務
database instance沒有起起來windows平台如下操作開始程序管理工具服務打開服務
面板啟動oracleserviceXXXXXXXX就是你的database SID
注冊表問題regedit然後進入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME將該環境變量ORACLE_SI
D設置為XXXXXXXX就是你的database SID或者右幾我的電腦屬性高級環境變量系統變量新建
變量名=oracle_sid變量值=XXXXXXXX就是你的database SID或者進入sqlplus前在command line下
輸set oracle_sid=XXXXXXXX就是你的database SID
經過以上步驟就可以解決問題
最後發現是沒有指定oracle_sid造成指定後數據庫正常啟動
本次恢復遇到個不太順利的事情
沒有指定ORACLE的ORACLE_SIDI需要手工指定
崩潰前數據庫的安裝文件是在E盤下崩潰後重新安裝的數據庫在D盤(由於光驅的緣故)結果第一次安裝不成功這個問題的解決可以找到d:/oracle/ora/db_/network/admin/listenerora 中察看具體的路徑
曾報areasqueries的錯誤結果查明是數據庫不支持中文路徑
From:http://tw.wingwit.com/Article/program/Oracle/201311/18799.html