1. 程式人生 > >Navicat Premium連線Oracle遇到的一些問題和其解決方法

Navicat Premium連線Oracle遇到的一些問題和其解決方法

1、ORA-28547:

這是因為oci.dll版本不對。Navicat本地的OCI版本與Oracle伺服器伺服器不符造成的。

這裡寫圖片描述

或者

這裡寫圖片描述

開啟Navicat premium客戶端:Tool->Options

這裡寫圖片描述

這裡寫圖片描述

你會發現OCI library的路徑是: 
D:\navicat\Navicat Premium\instantclient_10_2\oci.dll 
即Navivat本身的oci.dll,大小為504KB。而安裝的Oracle中的oci.dll,大小為642KB。明顯兩個不一致

解決方法:

(1)將Oracle中的oci.dll檔案覆蓋Navicat中的oci.dll 
(2)將OCI library的路徑改為Oracle中oci.dll的路徑 
即:D:\app\user\product\11.2.0\dbhome_1\BIN\oci.dll

2、ORA-12514:

TNS 監聽程式當前無法識別連線描述符中請求服務,即Service Name/SID中的值填的有問題,預設的是ORCL,這個值如果在安裝Oracle的時候填的不是ORCL,那就會出現這個錯誤

這裡寫圖片描述

解決方法:

開啟Oracle安裝路勁中的tnsnames.ora檔案 
即:D:\app\user\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora

這裡寫圖片描述

這裡寫圖片描述

Service Name的值為orcl.212.150.104,將Service Name改了即可

3、ORA-12541:

這裡寫圖片描述

解決方法:

開啟Oracle安裝路勁中的tnsnames.ora檔案 
即:D:\app\user\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora 
檢視HOST配置的是什麼ip—這個地方需要和Host Name/IP Address保持一致

這裡寫圖片描述

4、ORA-01017:

這裡寫圖片描述

因為使用者a未建立,需要建立使用者後才能連線

解決方法:

開啟SQL Plus,連線oracle管理員,輸入口令為oracle

這裡寫圖片描述

建立使用者:

這裡寫圖片描述

授權:

這裡寫圖片描述

連線使用者,輸入口令為oracle:

這裡寫圖片描述

顯式當前使用者:

這裡寫圖片描述

5、ORA-28001:

這裡寫圖片描述

Oracle提示錯誤訊息ORA-28001: the password has expired,是由於Oracle11G的新特性所致, Oracle11G建立使用者時預設密碼過期限制是180天(即6個月), 如果超過180天使用者密碼未做修改則該使用者無法登入。

查詢密碼的有效期設定,LIMIT欄位是密碼有效天數

這裡寫圖片描述

解決方法一:

這裡寫圖片描述

直接輸入原來的密碼和你要修改的密碼即可(old password和new password可以一樣!!!)

解決方法二:

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED

即:將口令有效期預設值180天修改成了“無限制”。