當前位置:首頁 » 數據倉庫 » oracle資料庫不能啟動
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

oracle資料庫不能啟動

發布時間: 2022-04-20 17:21:26

1. oracle 資料庫啟動失敗,求大神解決

datafile 5已經損壞或丟失,如果有備份,可以通過recover datafile 5進行恢復,如果沒有備份文件,恢復會失敗,可以刪除datafile 5後,在重新啟動資料庫

startup mount
alter database datafile 5 offline drop;
alter database open;

2. 修改計算機名或IP後Oracle10g服務無法啟動的解決方法

遇到的問題,問題產生原因不詳。症狀為,windows服務中有一項oracle服務啟動不了,報出如下錯誤。
Windows
不能在
本地計算機
啟動
OracleDBConsoleorcl
。有關更多信息,查閱系統事件日誌。如果這是非
Microsoft
服務,請與服務廠商聯系,並參考特定服務錯誤代碼
2
後從網上尋得一貼,問題解決,解決原因不詳,反正就是解決了。
問題描述:學校機房母盤安裝Oracle10g傳輸到其它機器,母盤的Oracle可以正常使用,而其它機器啟動Oracle服務時無法啟動。
具體為:在「服務」中啟動「OracleDBConsoleorcl」時出現「Windows不能在本地計算機啟動OracleDBConsoleorcl。
有關更多信息,查閱系統事件日誌。如果這是非Microsoft服務,請與服務廠商聯系,並參考特定服務錯誤代碼2」。
原因分析:安裝Oracle的電腦修改計算機名或IP後將無法啟動服務。
解決方法:
1、刪除原資料庫實例「orcl」(注意:最好在傳輸前在母盤上完成此步,否則刪除後必須重新啟動電腦):
開始->所有程序->Oracle-OraDb10g_home1->配置和移植工具->Database
Configuration
Assistant->下一步->
刪除資料庫->下一步->完成->是->是->取消->是。
---------------------------
2、重新配置監聽程序:
開始->所有程序->Oracle-OraDb10g_home1->配置和移植工具->Net
Configuration
Assistant->
「監聽程序配置」下一步->「重新配置」下一步->下一步->下一步->下一步->「否」下一步->(取消->)完成。
3、重新安裝資料庫實例「orcl」:
開始->所有程序->Oracle-OraDb10g_home1->配置和移植工具->Database
Configuration
Assistant->下一步->
創建資料庫->下一步->下一步->「全局資料庫名」輸入「orcl」(「SID」將自動填充相同字元)下一步->下一步->
為「所有帳戶使用同一口令」輸入原來安裝時的口令和確認口令(「welcome」)下一步->下一步->下一步->下一步->下一步->下一步->下一步->下一步->
完成->確定->退出。
4、本地Net服務名配置:
開始->所有程序->Oracle-OraDb10g_home1->配置和移植工具->Net
Configuration
Assistant->
「本地Net服務名配置」下一步->「刪除」下一步->下一步->是->下一步->下一步->
「本地Net服務名配置」下一步->「添加」下一步->「服務名」輸入「orcl」下一步->下一步->
輸入本機真實的「主機名」(可在「我的電腦」屬性中查得)下一步->「是,進行測試」下一步->
更改登錄->口令修改為「welcome」確定->下一步->網路伺服器名為「orcl」下一步->下一步->下一步->(取消->)完成。
5、試用PL/sqldev是否能登錄。
6、登錄「http://主機名或IP:1158/em」(注意此時有可能1158已變成了5500或其它埠了),
用戶名「system」口令「orcl」登錄->我同意->管理。

3. oracle undo表空間被刪除,資料庫無法啟動,請問如何恢復

首先,undo表空間滿是正常的,oracle自然會重用或者擴展它,一般不用管它。
然後,現在要解決的話,需要先把undo
tablespace設置成手動,啟動資料庫,創建新的undo
tablespace。把新的設置成默認的。
假設你的庫現在是mounted狀態
1
創建PFILE(如果已有就是更新)
SQL>create
pfile
from
spfile;
2
關閉資料庫
SQL>shutdown
immediate
3
在你的$ORACLE_HOME/dbs目錄下面找個叫做
init<資料庫>.ora的文件,把其中有undo_management=AUTO的一行改成
undo_management=MANUAL
如果沒有就在文件末尾填一行
4
以sysdba身份連接資料庫
SQL>connect
"/
as
sysdba"
用剛才改過的文件啟動資料庫
SQL>
startup
pfile=<剛才的文件全路徑和名字>
這步是最關鍵的,如果成功,後面就沒問題了
5
drop掉原來的表空間
SQL>
drop
tablespace
<原來的undo表空間名字>
including
contents;
6
創建新的undo表空間
SQL>
create
UNDO
tablespace
undotbs2
datafile
'/u01/app/oracle/oradata/orcl/undotbs02.dbf'
size
100M
autoextend
on;
7
關閉資料庫,
SQL>shutdown
immediate
在開始那個init文件里設置UNDO_MANAGEMENT=AUTO

UNDO_TABLESPACE=UNDOTBS2
8
再做一次第四步
9
更新spfile
SQL>create
spfile
from
pfile;
10
關閉資料庫,正常重新啟動
SQL>shutdown
immediate
SQL>startup
11
去網上教你刪undo那個地方罵它。非常想當然的做法。沒有任何理由這么做
12
讓你的工程師去學oracle
培訓
以上步驟的中的第5步可能會出問題。我不確認。。。
但是即使第5步不成功,問題應該也不大

4. 為什麼我的電腦啟動不了oracle資料庫

法 1: 手動啟動 Oracle 資料庫服務
更改啟動行為的 Oracle 資料庫服務在運行 Oracle 資料庫的計算機上手動類型,然後手動啟動 Oracle 資料庫服務。 這樣做,請按照下列步驟操作:
Oracle 資料庫服務的啟動類型更改為手動方式。這樣做,請按照下列步驟操作:
單擊 開始,指向 設置,然後單擊 控制面板。
在 $ 控制面版中雙擊 管理工具。
在管理工具窗口中雙擊 服務。
在服務的右窗格窗口,雙擊 OracleService<sid>.
在 $ OracleService<sid>屬性中 (本地計算機) 對話框框中,單擊 常規 選項卡。
單擊 手動啟動鍵入 列表中,然後單擊 確定。
更改啟動設置的實例的 Oracle 資料庫如 Oracle 資料庫服務啟動時的 Oracle 資料庫實例未自動啟動。這樣做,請按照下列步驟。

重要此分區、 方法,或任務包含告訴您如何修改注冊表的步驟。但是,如果注冊表修改不當可能會出現嚴重問題。因此,請確保您仔細按照這些步驟。附加的保護注冊表之前先備份您對其進行修改。然後,您可以在出現問題時還原注冊表。有關如何備份和還原注冊表的詳細信息,請單擊下面的文章編號,以查看 Microsoft 知識庫中相應的文章:
322756 (http://support.microsoft.com/kb/322756/ ) 如何備份和還原在 Windows 注冊表
單擊 開始,然後單擊 運行。
在 打開 框中鍵入 regedit,然後單擊 確定。
在注冊表編輯器中找到以下注冊表項: HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0

注意數字零 (0) 不字母 o 以結束此注冊表項的名稱。
在注冊表編輯器的右窗格,雙擊 ORA_ <sid>_AUTOSTART.

注意: <sid>替換 Oracle 資料庫服務的名稱。
編輯字元串 對話框中在 數值數據 框中鍵入 FALSE,然後單擊 確定。
關閉注冊表編輯器。
以下的批處理文件創建名為 StartupOracleORCL.sql:
connect <username>/<password>
startup PFILE=<Full path of the INIT.ORA file for the instance of Oracle database>

exit

創建以下 Windows 批處理文件中關閉 net start < Oracle 服務名稱 > 步驟 3:
@echo off

net start <Oracle Service Name>
set ORACLE_SID=<Oracle SID>
svrmgrl @<Full path of startupOracleORCL.sql created in Step 3>

exit

注意您必須替換 < Oracle 服務名稱 > 和 < Oracle SID > 與 Oracle 資料庫服務名稱和的 Oracle 資料庫服務,SID 分別。
在命令提示符處運行 Orastart.bat 文件。

注意您可能會注意到 Oracle 資料庫的實例已成功啟動。
回到頂端
方法 2: 通過使用 Windows 資源工具包實用程序自動化 Oracle 服務的啟動
通過使用服務安裝程序實用程序 (Instsrv.exe) 和應用程序服務實用程序 (Srvany.exe) 作為自動啟動的 Oracle 服務,請按照下列步驟操作。

注意該服務安裝程序實用程序 (Instsrv.exe) 和應用程序服務實用程序 (Srvany.exe) 作為將包含在 Windows Server 2003 資源工具包。
下載並安裝 Windows 資源工具包實用程序。收起這個圖片展開這個圖片Download the Rktools.exe package now. (http://www.microsoft.com/downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&DisplayLang=en)
創建一個文件夾來將 OracleStartup 上被命名為根的驅動器 c。
In the C:\OracleStartup folder, create a text file that is named OracleStartup.reg and that contains the following information:
REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleStartup\Parameters]
"Application"="C:\\OracleStartup\\OracleStartup.cmd"

[HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0]
"ORA_ORCL_AUTOSTART"=hex(2):34,00,36,00,2c,00,30,00,30,00,2c,00,34,00,31,00,2c,00,30,00,30,\
00,2c,00,34,00,63,00,2c,00,30,00,30,00,2c,00,35,00,33,00,2c,00,30,00,30,00,\
2c,00,34,00,35,00,2c,00,30,00,30,00,2c,00,30,00,30,00,2c,00,30,00,30,00,00,\
00

雙擊 C:\OracleStartup\Oracle.reg 文本文件,以將此信息導入到您的注冊表。
C:\OracleStartup 文件夾中創建名為 OracleStartup.cmd 的文本文件,並包含以下信息:
sleep 60
net start OracleServiceORCL
SET ORACLE_SID=ORCL
svrmgrl @C:\OracleStartup\OracleStartup.sql
sleep 15
EXIT

創建一個 C:\OracleStartup\OracleStartup.sql 的文本文件,其中包含以下信息:
connect internal/oracle
startup PFILE=C:\init.ora

筆記 的啟動參數必須包含 Init.ora 文件的完全限定的路徑。

重要C:\OracleStartup\OracleStartup.cmd 文件包含用戶憑據以明文形式。 因此,限制對管理員和 Oracle 服務啟動帳戶僅此文件的訪問。您可以通過配置在 Oracle 伺服器的 Windows 身份驗證來避免包括 C:\OracleStartup\OracleStartup.cmd 文件中的用戶憑據。 有關如何配置 Oracle 的 Windows 身份驗證獲得筆記: 60634.1 (贏得: 安裝操作系統身份驗證) 從 Oracle 公司。有關如何與 Oracle 公司的信息,請訪問以下網站:
http://www.oracle.com/ (http://www.oracle.com/)
作為服務啟動 OracleStartup,通過使用該 InstSrv.exe 和 $ SrvAny.exe 資源工具包實用程序,以及通過使用以下命令:

"是 Files\Resource Kit\instsrv.exe"OracleStartup"是 Files\Resource Kit\SRVAny.exe"
sc 配置"OracleServiceORCL"開始 = 請求
退出
重新啟動 Windows。

5. 菜鳥求幫助.Oracle資料庫啟動不了

是不是沒有啟動oracle服務或者監聽器沒有開?

6. oracle 資料庫不能隨操作系統自動啟動

首先打開服務,在控制面板的管理工具中,看看
OracleOraDb10g_home1iSQL*Plus
OracleOraDb10g_home1TNSListener
OracleServiceORACLE(這里要改成:OracleService加上你的資料庫名稱
,我的資料庫就叫ORACLE,所以是OracleServiceORACLE
)幾個進程是自動還是其他的,自動的就不用管他了,這時候如果啟動計算機的時候資料庫啟動不了就有可能是你的系統問題或者oracle沒有裝好,如果是手動的,解決方法如下:
net
start
OracleOraDb10g_home1iSQL*Plus
net
start
OracleOraDb10g_home1TNSListener
net
start
OracleServiceORACLE(這里要改成:OracleService加上你的資料庫名稱
,我的資料庫就叫ORACLE,所以是OracleServiceORACLE

我給你這段腳本,你把它放在.bat文件中,再把這個bat文件放在「開始菜單--所有程序--啟動
」中這樣開機的時候就會啟動了

7. Oracle資料庫實例啟動不了怎麼辦

只能將表空間刪除了,首先
shutdown immediate;

然後啟動到mount狀態:

startup mount;

確定你少了那些文件:
sys@ORCL>select * from v$recover_file;

FILE# ONLINE ONLINE_ ERROR
---------- ------- ------- -----------------
4 ONLINE ONLINE FILE NOT FOUND

除了system和sysaux表空間以外,其它的表空間刪除就行了,執行下面語句,使表空間的數據文件offline:

8. oracle資料庫實例啟動不了

只能將表空間刪除了,首先
shutdown
immediate;
然後啟動到mount狀態:
startup
mount;
確定你少了那些文件:
sys@ORCL>select
*
from
v$recover_file;
FILE#
ONLINE
ONLINE_
ERROR
----------
-------
-------
-----------------
4
ONLINE
ONLINE
FILE
NOT
FOUND
除了system和sysaux表空間以外,其它的表空間刪除就行了,執行下面語句,使表空間的數據文件offline:
sys@ORCL>alter
database
datafile
4
offline;
然後就可以打開資料庫了:
alter
database
open;
接著刪除表空間:
drop
tablespace
users;

9. oracle 資料庫啟動失敗,該怎麼辦

PRM-DUL 可以直接從Oracle .DBF數據文件中抽取出表的數據。

Oracle DBA神器:PRM災難恢復工具,Schema級別數據恢復。PRM For Oracle Database – schema級別oracle資料庫數據恢復特性 ,PRM即ParnassusData Recovery Manager是企業級別Oracle資料庫災難恢復工具。PRM可以在無備份的情況下恢復被truncated掉的表,也可以恢復無法打開的Oracle資料庫(Alter Database Open失敗)中的數據。

10. oracle 資料庫異常停止,現在不能啟動資料庫

1,首先排除設置了正確的SID連接
如:C:\Users\Administrator>set ORACLE_SID = orcl //確定本機資料庫實例名
linux下用export ORACLE_SID=orcl

2,以sysdba連接,關閉資料庫

sqlplus / as sysdba
shutdown immediate
如果不能關閉,windows下殺掉oracle進程,停掉oracle的服務
linux下:ps -ef|grep smon找到對應的pid
kill -9 <pid>

3,重新啟動試試
startup
如果還是不行,查看報錯原因,這里可能有很多,比如數據文件錯誤

4.這里假如你的錯誤是數據文件引起

shutdown immediate

startup mount
recover datafile <datafile number>;
alter database open;
就可以了

如果不是數據文件錯誤,貼出來看看吧