標籤:des style blog http os io strong 檔案
第一次安裝Oracle,裝在虛擬機器中,用PL/SQL Dev串連遠端資料庫的時候老是彈出空白提示框,網上找了很久,解決方案也很多,可是就是沒法解決我這種情況的。
沒辦法,只能自己研究,經過大概一天時間吧,還是搞好了,寫個總結。
出現這種問題,解決方案大概有這幾種:
1.許可權不夠,導致彈出空吧提示框。(直接上連結)
http://jingyan.baidu.com/article/066074d6760959c3c21cb0d6.html
就PL/SQL表徵圖上點右鍵---屬性---相容性--管理員身份運行此程式的勾打上,即可
2.環境變數沒設對。
①在安裝oracle伺服器的機器上搜尋下列檔案,oci.dllocijdbc10.dll(其中10代表oracle版本,若是其他版本,則需要修改之,例如改成ocijdbc9.dll或者ocijdbc11.dll)ociw32.dllorannzsbb10.dll(其中10代表oracle伺服器版本,若是其他版本,則需要修改之,例如改成orannzsbb9.dll或者orannzsbb11.dll)oraocci10.dll(其中10代表oracle伺服器版本,若是其他版本,則需要修改之,例如改成oraocci9.dll或者oraocci11.dll)oraociei10.dll(可能伺服器沒有,如果沒有,就不用找了)sqlnet.ora,tnsnames.ora,classes12.jar,ojdbc14.jar 把這些找到的檔案複製放到一個檔案夾,如 oraclient,將此檔案夾複製到用戶端機器上。如放置路徑為 D:\oraclient ②配置tnsnames.ora,修改其中的資料庫連接串。 oracledata = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.58)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = oracledata) ) ) 其中,oracledata是要已連線的服務名;HOST = 192.168.0.58,是伺服器IP地址;PORT = 1521是連接埠號碼。 ③添加第一個環境變數,名為TNS_ADMIN,值為tnsnames.ora檔案所在路徑(如:D:\oraclient,特別是重裝後或其它操作,忘了TNS_ADMIN變數,plsql登陸就會報無法解析指定的串連標識符),這是為了能夠 找到上面說的tnsnames.ora。這步是最重要的。 添加第二個環境變數(可有可無):“NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,(AMERICAN_AMERICA.US7ASCII 是ASCII編碼類別型,其它類型可自己到伺服器看一下或網上尋找一下)(本步驟暫時要做對,如果編碼不對,會產生亂碼) ④下載並安裝
PL
SQL Developer配置應用:開啟
PL
SQL Developer,登入介面點取消,進入後選擇功能表列 tools->preferences->connection設定:Oracle Home=D:\oracleclientOCI library=D:\oracleclient\oci.dll ⑤再次開啟plsql則會在database中有oracledata 選項輸入使用者名稱密碼就可以登陸。
這幾個系統變數很重要,如果設定的不對,PL/SQL讀取不到“資料庫”和“串連為”。
參考:http://www.linuxidc.com/Linux/2014-01/94787.htm
3.修改時區(多見於綠色版Oracle或者PL/SQL)
修改時區
需要檔案(前半部分路勁可能不同,以自己的安裝路徑為準):
a:D:\oracle\product\10.2.0\db_1\WJLMGQS-PC_WJLMGQS\sysman\config\emd.properties
b:D:\oracle\product\10.2.0\db_1\sysman\config\emd.properties
c:D:\oracle\product\10.2.0\db_1\sysman\admin\supportedtzs.lst
具體操作:
a:開啟兩個emd.properties檔案,定位到檔案的最後一行,發現agentTZRegion=GMT
b:開啟supportedtzs.lst檔案,在其中找到自己定位的時區然後選取參數,
如:agentTZRegion=Asia/Shanghai
4.windows的防火牆所致[關閉防火牆測試即可]
5.還可能是監聽器服務無法啟動,那麼需要開啟Net Configuration Assistant修複,或者建立監聽器服務。
我自己嘗試了上面所有方法,可還是遇到提示空白窗,真是蛋疼。。最後想,可能是oraclient裡面檔案不全,通常都應該檔案不全或者版本不對導致的。
結果按照網上另一種方法[其實同方法②,只不過到Oracle官網上下載精簡的用戶端檔案instantclient-basic-nt-11.2.0.4.0.zip而已],我把解壓的檔案
覆蓋到oraclient檔案中,再次串連,終於成功了!耶~ 呵呵,希望能協助到所有遇到問題的朋友~