ORACLE 10g新手入門常見錯誤整理
- 一、安裝錯誤/TNS:無法決議指定的連接識別符號
- 二、OEM配置與啟動錯誤
- 1、OEM配置與啟動錯誤
- 2、找不到服務器IP地址
- 3、時區錯誤Java.lang.Exception
- 三、如何連接ORACLE
- 1、使用sql *plus連接資料庫
- 2、PL/SQL Developer連接資料庫
- 3、用cmd連接資料庫
- 四、Listener監聽程式相關錯誤
- 1、ORA-12560:TNS:協議配接器錯誤
- 2、Listener服務啟動后停止
- 五、startup重啟資料庫失敗
- 1、解決方法一:指定ORACLE_SID
- 2、解決方法二:修改監聽檔案
- 六、無法啟動聯機備份,未啟用介質恢復
配置環境:Win 10系統 64位 ORACLE 32位
一、安裝錯誤/TNS:無法決議指定的連接識別符號
oracle 10g和PLSQL Developer在安裝時報錯或者安裝后無法登陸大多都是安裝路徑的問題!
如:ORA-12154: TNS:無法決議指定的連接識別符號

PL/SQL Developer默認安裝路徑一般是這樣,oracle也差不多,而它們的路徑是不允許有括號等特殊字符,因此這里建議安裝路徑不要有空格、括號、中文等,推薦參考如下安裝路徑:

二、OEM配置與啟動錯誤
1、OEM配置與啟動錯誤
首先要檢查資料庫和監聽是否都已經啟動并正常作業,可以在服務中找到對應選項右擊啟動/重新啟動,

2、找不到服務器IP地址
出現這種情況可能是由于IP更改了的原因,包括很多其他造成OEM無法正常啟動的原因,大多能通過emca命令重新配置ORACLE EM來解決,

①在這之前需要在cmd中創建EM資料庫,emca -repos create(已創建的可以直接看②)
其中監聽埠號可在該檔案目錄下查看(以記事本打開):
F:\oracle\product\10.2.0\db_2\NETWORK\ADMIN\listener.ora
我們可以看到監聽埠號是1521,

在cmd中輸入命令(口令不顯示,管自己輸入即可):

②配置dbcontrol,emca -config dbcontrol db
按要求輸入資訊(電子郵件地址和發件服務器可以直接回車不填),繼續選擇Y,耐心等待即會提示已成功完成Enterprise Manager的配置,如圖所示的四個資訊也是我們之后經常要用到的,


其中倒數第三行顯示的URL即為我們訪問OEM的鏈接,這時就能正常登錄了


3、時區錯誤Java.lang.Exception
Java.lang.Exception: IOException in sending Request :: Connection refused: connect 錯誤,

出現這個錯誤的原因是我們Oracle的時區是默認的,和我們所在的時區不符,所以產生例外,需要手動修改時區,下面介紹一下步驟:
①在oracle安裝目錄下找到emd.properties檔案
F:\oracle\product\10.2.0\db_2\DESKTOP-HE6O2QJ.mshome.net_orcl\sysman\config

②右擊選擇以記事本方式打開,滑到最后,將agentTZRegion= GMT改為Asia/Shanghai,保存,

③若提示無法修改,只要在屬性里修改一下權限就可以啦,

之后重新服務(可能需要重啟多次),此時oem的時區就對啦~
三、如何連接ORACLE
1、使用sql *plus連接資料庫
在“開始”里找到Oracle-OraDblog_home2下找到SQL Plus,輸入登錄用戶名、口令、主機字串(要連接的資料庫名稱)


2、PL/SQL Developer連接資料庫


3、用cmd連接資料庫
以管理員身份打開cmd,輸入命令sqlplus 用戶名@資料庫名 as sysdba/sysoper

四、Listener監聽程式相關錯誤
1、ORA-12560:TNS:協議配接器錯誤
這通常是由于服務沒有啟動,在服務中心啟動相關服務即可,


2、Listener服務啟動后停止
本地計算機上的OracleOraDb10g_home2TNSListener服務啟動后停止,某些服務在未由其他服務或程式使用時將自動停止

這通常是由于清理掉了一些組態檔,需要重新配置,.在“開始”里找到Oracle-OraDblog_home2下的Net Configuration Assistant,其他步驟按照默認設定來,



之后Listener可以正常啟動了,

五、startup重啟資料庫失敗
ORA-12514:TNS:監聽程式當前無法識別連接描述符中請求的服務
ORA-24324:未初始化服務句柄
ORA-01041:內部錯誤,hostdef擴展名不存在

1、解決方法一:指定ORACLE_SID
通過查找原因,知道這個報錯的根本原因是監聽中已經沒有了實體的注冊資訊;可能和多資料庫有關,可以嘗試指定ORACLE_SID,
①先從sql環境中退出 exit
②指定ORACLE_SID為你想要重新啟動的資料庫實體名 set oracle_sid=booksale
③重新連接資料庫 sqlplus sys/tiger as sysdba(tiger指的是初始密碼,若是修改了用自己設定得用戶口令密碼)
④這時就能啟動資料庫實體了 startup

2、解決方法二:修改監聽檔案
①找到目錄F:\oracle\product\10.2.0\db_2\NETWORK\ADMIN下的listener.ora檔案(打開方式、權限修改上文已講過)

②修改檔案內容,這里以orcl和booksale為例,設定GLOBAL_DBNAME,(保存之后需要多次重啟服務)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = F:\oracle\product\10.2.0\db_2)
(SID_NAME = orcl)
)
(SID_DESC =
(GLOBAL_DBNAME = booksale)
(ORACLE_HOME = F:\oracle\product\10.2.0\db_2)
(SID_NAME = booksale)
)

③在cmd中驗證,資料庫可以正常啟動了,

六、無法啟動聯機備份,未啟用介質恢復
在用戶備份表空間時提示無法啟動聯機備份,未啟用介質恢復,按照以下步驟即可(startup mount啟動不了可參照上文)
①shutdown immediate
②startup mount
③alter database archivelog
④alter database open


以上就是新手入門時常見的一些錯誤整理,希望能對你起到幫助~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/184964.html
標籤:其他
