oracle連線teradata透明閘道器配置

jst143發表於2011-04-13

oracle連線別的資料庫產品時,透明閘道器是個不錯的選擇,如果網路好的話,效果還是理想的。

以下td為teradata的簡稱。

借鑑了網上的oracle連線sqlserver的過程,整理一下連線td的過程。

1,前提,teradata和oracle都安裝

2,建立odbc,連線到td。假設名稱為 odbc_ora2td。

3,安裝oracle的Transparent Gateway元件。oracle9的話,在那3張光碟中,oracle10的話,可以去官網下載這個10201_gateways_win32.zip。當然我說的都是在windows32伺服器上。linux應該也差不多。在安裝的過程中,會出現視窗要求輸入配置的odbc名稱。輸入odbc_ora2td。然後下一步直到完成。會發現在%ORACLE_HOME%\tg4tera\admin\inittg4tera.ora。出現這個檔案,其中tg4tera是給TG"SID",預設為tg4tera。

3.1 其實第3步的效果表現為在%ORACLE_HOME%\tg4tera\admin\inittg4tera.ora 這個檔案中

HS_FDS_CONNECT_INFO=odbc_ora2td

這句話。所以如果以後odbc有修改,可以來修改這個地方。

4,修改listener.ora

新增
  (SID_DESC =
      (SID_NAME = tg4tera)
      (ORACLE_HOME = d:\oracle)
      (PROGRAM = tg4tera)
    )

其中SID_NAME = tg4tera 就是第3步所謂的預設sid,為了方便還是別改了。

5,修改tnsnames.ora

新增
  xxxx =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
      )
      (CONNECT_DATA =
        (SERVER = DEDICATED)
        (SID=tg4tera)
      )
      (HS=OK)
    )

xxxx,你隨便叫。localhost就是安裝transparent getway的機器

6,重啟監聽和服務。(好像只重啟監聽也行)

7,建立dblink。

create database link ora2td connect to username  identified by password using 'xxxx';

8,select * from sometables@ora2td  測試一下。

ps:中途遇上的錯誤

ORA-28545錯誤,在我這發生的原因是因為配置了listner之後沒有重新啟動它。

 ORA-00600: 內部錯誤程式碼,引數: [HO define: Long fetch], [], [], [], [], [], [], [] 。這個是因為你查的表 欄位太多超出什麼限制了,換個表試試,或者別 select *。我說的是在plsql裡

ORA-00904 無效的列名或者識別符號。檢查一下TD建的表是不是用雙引號括起來的列名,如果是,那麼你的語句也需要完全匹配並加上雙引號。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23577591/viewspace-692454/,如需轉載,請註明出處,否則將追究法律責任。

相關文章