Oracle 連接玩我!ORA-12514及ORA-28547錯誤解決


安裝了Oracle11g整整數據庫,以前正Oracle都是安裝好修改配置NET Manager就可以連接了。可是今天出現了一點小意外,這里總結一下。

(一) 安裝檢查的問題

  在Win7中安裝Oracle11g 企業版,在安裝的過程中出現一個問題:

Environment variable:  " PATH " - This test checks whether the length of the environment variable  " PATH " does not exceed the recommended length.
預期值
 :  1023
實際值
 :  0
 錯誤列表: 
 - PRVF- 3916 : Environment variable name  " PATH "  is not  set on node  " ywl-PC "  - Cause:  Environment variable value could not be determined.  - Action:  Ensure that the environment variable  is  set and access permissions  for the Oracle user allow access to read the environment variables. Restart the installer after correcting the setting  for environment variable. 

    google了一下,原來是windows系統中環境變量Path配置的太多了,右鍵點擊我的電腦->進階-》環境變量,找到Path,把一些不用的部分去掉就可以了。重新檢測通過繼續安裝完成。

 

(2) Oracle數據庫服務沒有安裝成功

 安裝的過程中出現了一些小問題,系統報錯說缺少相應的模板文件,感覺很奇怪。但是Oracle你是知道的,取消安裝重新再來過問題就大了,而且本身對Oracle 的結構就並不是很了解,所以安裝出現問題我就直接忽略掉了。但是發現安裝完成之后沒有安裝Oracle數據庫服務,悲劇的安裝,安裝了使用不了。

Oracle11g中有一個Database Configuration Assistant.

 

啟動這個程序,就可以重新安裝數據庫服務。安裝完成之后在服務管理中可以看到相應的服務項。

 

(3) Oracle 數據庫不能連接

安裝完成之后,立馬安裝了PL/SQL,在啟動PL/SQL中並沒有發現相應DataBase配置項。於是又在NET Manager中配置客戶端連接,重新打開PL/SQL仍然沒有相應的配置連接項。

在SQLPlus 命令行中登錄,使用安裝的時候設置的密碼可以登錄,問題就很奇怪了。

考慮問題應該還是在客戶端配置中,在SQLPLUS中登錄沒有問題,說明服務沒有問題。在登錄的過程中出現錯誤ORA-12514及ORA-28547,在網上查找也還是一樣的問題都是說.NET Manager的配置問題,但是我修改了也還是登錄不上,重啟也不行。於是根據網上的說明找到NET Manager中連接監聽的文件。文件目錄如下:\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN\listener.ora. 用UE打開這個文件:

# listener.ora Network Configuration File: D:\Oracle11g\Administrator\product\ 11.2. 0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = D:\Oracle11g\Administrator\product\ 11.2. 0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS =  " EXTPROC_DLLS=ONLY:D:\Oracle11g\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll ")
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT =  1521))
    )
  )
ADR_BASE_LISTENER = D:\Oracle11g\Administrator 

  在文件中發現SID_NAME=CLREXTPROC 我的服務ID名不是這個而是OracleRoot,SID其實就是全局數據庫名。我將其修改為OracleRoot,重新啟動監聽服務,連接仍然失敗。於是我刪除上訴文件中的PROGRAM=extproc 保存文件重啟服務即連接成功。

 

  總結:

平時很少整Oracle,昨日聽朋友說了一個Oracle的問題於是安裝想試試。結果安裝就出現了這么多問題,很多人在安裝軟件的時候出現問題就選擇了退步不安裝了,其實努力解決問題的心態很重要特別是對做程序有崇高興趣的人。想想解決辦法,問題總是會解決的。 (文章沒啥水准就不發首頁了,希望對大家有幫助)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM