Oracle中無法解析TNS的陷阱

2021-09-05 15:15:36 字數 1415 閱讀 7482

在中小企業中由於專案經費的限制,如果使用oracle,經常採用的乙個程式部署策略就是

將資料庫管理程式和應用程式伺服器部署在同一臺伺服器上:

-----------------

|    oracle           |       

|    iis                |---->server 

|    dal             |

------------------

由於資料訪問層部署在伺服器端,那麼要訪問資料的時候,就需要安裝oracle客戶端,如

odp.net等元件。如果部署不小心或者說安裝策略不對,那麼經常會造成一些問題。

假設您已經安裝了oracle伺服器和客戶端元件,並使用net manager配置好了tns:

【現象1】

要使用exp命令匯出資料庫的時候,提示無法解析指定的tns

【現象2】

要使用exp命令匯出資料庫的時候,提示無***

【現象3】

在伺服器端使用一些管理工具enterprise manger console可以登入到資料庫,但是從客戶端

登入的時候總是提示無法解析tns或者或者無***,造成登入失敗。

這是什麼原因呢?其中乙個重要的原因就是由於伺服器段和客戶端安裝配置造成的問題。

oracle安裝程式都是遵循其所謂osf來部署程式的,也就是說其程式是按照其固定的路徑的安

裝的,如果同時安裝了伺服器程式和客戶端元件,且不從同乙個根開始的話,那麼就會產生

兩個osf。從開始選單中我們也可以看到這種區別,伺服器程式和客戶端元件各有乙個資料夾。

這裡面臨的乙個陷進就是如果是從伺服器端資料夾的net manager的快捷方式啟動配置的話,

那麼這個tns只會被伺服器認識,如果從客戶端元件快捷資料夾的net manager的快捷方式啟

動配置的話,那麼這個tns只會被客戶端元件認識。且看安裝了伺服器和客戶端的資料夾布局:

【客戶端】

-oracle

-product

-10.1.0

-client_1

-network

-admin

-tnsnams.ora

【伺服器】

-oracle

-product

-10.2.0

-db_1

-network

-admin

-tnsnams.ora

其中tnsnames.ora檔案就是存放tns配置資訊的檔案。

從這個布局中我們可以回答,為什麼會出現上面所說的現象。

那麼怎麼避免這個問題呢?

1。在安裝的時候將伺服器和客戶端元件安裝在同乙個根下面

2。使用伺服器和客戶端的net manager配置一樣的tns。

3.   伺服器使用unix而不是nt。

TNS 無法解析指定的連線識別符號

plsql連不上oracle,報tns 無法解析指定的連線識別符號 解決方法 選擇 開始 程式 oracle configuration and migration tools net manager 在 服務命名 樹結點下新建 服務命名 第一頁 net服務名隨便取 第二頁 使用預設的tcp ip ...

TNS 03505 名稱無法解析

tns 03505 名稱無法解析 oracle db01 admin tnsping pri tns ping utility for linux version 11.2.0.4.0 production on 15 jun 2015 21 57 52 used parameter files t...

檢查本地oracle的tns

在確認你的oracle伺服器是否啟動,並且投入使用的時候,一般會考慮通過pl sql工具來看是否登入上。而你想知道本地的tns配置是否奏效的另外一種方式就是敲擊cmd,開啟dos環境,使用tnsping vms 這樣就可以知道tns是否奏效了。這裡vms就是你定義的名稱,常見定義如下 vms des...