| 導購 | 订阅 | 在线投稿
分享
 
 
 

詳細講解Oracle數據庫運行錯誤的解決方法

來源:互聯網  2008-07-12 07:37:37  評論

Oracle數據庫運行錯誤的解決方法:

錯誤1:ORA-01034: ORACLE not available

Oracle安裝、啓動後用sqlplus "/ as sysdba" 登陸,執行任何select語句都出現錯誤:

select * from dictionary

*

ERROR at line 1:

ORA-01034: ORACLE not available

但是用toad等客戶端工具正常!

爲什麽sqlplus不行呢?

另,我用的是:

oracle9

redhat as 4

解決方法:

更改一下linux用戶的環境變量ORACLE_SID就可以了。

錯誤2:ORA-27101: shared memory realm does not exist

我試圖連接數據庫時的ORA-01034 和 ORA-27101錯誤信息,它總是顯示這樣的信息,「ORA-01034 - Oracle not available」和「ORA-27101 - shared memory realm does not exist」。

不能連接到我的Oracle 數據庫上。

因爲碰到防火牆的問題次數比較多,這次也先看看,發現根本就沒什麽攔截的。查看了一下監聽,數據庫實例也是運行著的。

奇怪的事情,剛才還好好的,重啓了機器就不行了。

解決方法:解決的方法倒是不麻煩...

首先看一下 ORACLE_BASE\ORACLE_HOME\DATABASE 下面的 ORADIM.LOG 文件

如果裏邊有這個錯誤

ORA-12640: 驗證適配器初始化失敗

那麽問題就是它了.

到ORACLE_BASE\ORACLE_HOME\NETWORK\ADMIN下面找sqlnet.ora文件

把sqlnet.authentication_services=(NTS) 改成

sqlnet.authentication_services=(NONE)

然後手動重起一下你的哪個數據庫服務..在開始->控制面板->管理工具->服務裏然後把這個服務的啓動帳號改成你的帳號吧...其實不改大概也沒有毛病.我就沒改。。

看了這個方法,出錯的原因大概有兩種情況,修改了帳戶,實例有些變動等。

如果還不行,重啓電腦試試.

ERROR - ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

關于「ORA:12541:TNS 沒有監聽器」 的問題

1.看看是不是監聽服務沒有起來

2.檢查有沒有修改IP地址,計算機名稱

對于2,一般情況下是機器的IP地址更改了,我就碰到過這種情況,oracle10g的安裝是在沒有聯網的狀態下,結

果聯上網後OracleDBConsole*服務啓動不了,在此情況下我的解決方案是斷網啓動服務就好用了.

其實問題在于初始配置的監聽/服務中的主機信息與現在的信息不符,如果要改便主機IP/名稱的話,也必須同時

修改oracle中的相應配置,否則oracle找不到主機當然啓動不了。

必須啓動的服務:OracleOraDb10g_home1TNSListener(監聽器),OracleService[sid]這兩項,後者可選爲手動

啓動(因爲吃資源厲害).

後來又遇到OracleOraDb10g_home1TNSListener服務無法啓動的問題,google了下原來是被優化大師清注冊表時幹掉的,服務啓動路徑要在注冊表中添加。

方法如下:

看\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome92TNSListener有無ImagePath的字符串,沒有的話就加一個,值爲..\oracle\product\10.1.0\db_1\TNSLSNR(不只一處).類似還有,優化大師幹掉VS2003中的.NET framework的注冊表信息,當時我重裝了。

Windows下默認完成後不用填寫主機字符就可以直接用戶名密碼登錄。

Oracle數據庫運行錯誤的解決方法: 錯誤1:ORA-01034: ORACLE not available Oracle安裝、啓動後用sqlplus "/ as sysdba" 登陸,執行任何select語句都出現錯誤: select * from dictionary * ERROR at line 1: ORA-01034: ORACLE not available 但是用toad等客戶端工具正常! 爲什麽sqlplus不行呢? 另,我用的是: oracle9 redhat as 4 解決方法: 更改一下linux用戶的環境變量ORACLE_SID就可以了。 錯誤2:ORA-27101: shared memory realm does not exist 我試圖連接數據庫時的ORA-01034 和 ORA-27101錯誤信息,它總是顯示這樣的信息,「ORA-01034 - Oracle not available」和「ORA-27101 - shared memory realm does not exist」。 不能連接到我的Oracle 數據庫上。 因爲碰到防火牆的問題次數比較多,這次也先看看,發現根本就沒什麽攔截的。查看了一下監聽,數據庫實例也是運行著的。 奇怪的事情,剛才還好好的,重啓了機器就不行了。 解決方法:解決的方法倒是不麻煩... 首先看一下 ORACLE_BASE\ORACLE_HOME\DATABASE 下面的 ORADIM.LOG 文件 如果裏邊有這個錯誤 ORA-12640: 驗證適配器初始化失敗 那麽問題就是它了. 到ORACLE_BASE\ORACLE_HOME\NETWORK\ADMIN下面找sqlnet.ora文件 把sqlnet.authentication_services=(NTS) 改成 sqlnet.authentication_services=(NONE) 然後手動重起一下你的哪個數據庫服務..在開始->控制面板->管理工具->服務裏然後把這個服務的啓動帳號改成你的帳號吧...其實不改大概也沒有毛病.我就沒改。。 看了這個方法,出錯的原因大概有兩種情況,修改了帳戶,實例有些變動等。 如果還不行,重啓電腦試試. ERROR - ORA-12514: TNS:listener does not currently know of service requested in connect descriptor 關于「ORA:12541:TNS 沒有監聽器」 的問題 1.看看是不是監聽服務沒有起來 2.檢查有沒有修改IP地址,計算機名稱 對于2,一般情況下是機器的IP地址更改了,我就碰到過這種情況,oracle10g的安裝是在沒有聯網的狀態下,結 果聯上網後OracleDBConsole*服務啓動不了,在此情況下我的解決方案是斷網啓動服務就好用了. 其實問題在于初始配置的監聽/服務中的主機信息與現在的信息不符,如果要改便主機IP/名稱的話,也必須同時 修改oracle中的相應配置,否則oracle找不到主機當然啓動不了。 必須啓動的服務:OracleOraDb10g_home1TNSListener(監聽器),OracleService[sid]這兩項,後者可選爲手動 啓動(因爲吃資源厲害). 後來又遇到OracleOraDb10g_home1TNSListener服務無法啓動的問題,google了下原來是被優化大師清注冊表時幹掉的,服務啓動路徑要在注冊表中添加。 方法如下: 看\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome92TNSListener有無ImagePath的字符串,沒有的話就加一個,值爲..\oracle\product\10.1.0\db_1\TNSLSNR(不只一處).類似還有,優化大師幹掉VS2003中的.NET framework的注冊表信息,當時我重裝了。 Windows下默認完成後不用填寫主機字符就可以直接用戶名密碼登錄。
󰈣󰈤
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有