1. 程式人生 > >從ORACLE到SQL SERVER的透明閘道器的安裝和配置

從ORACLE到SQL SERVER的透明閘道器的安裝和配置

最近專案中需要用到在ORACLE的儲存過程裡訪問SQL SERVER資料庫中的幾張表,就用到了DBLINK。這裡就寫幾個字記錄一下自己的配置步驟和遇到的坑:

第一步:準備

1:oracle資料庫

IP地址:10.201.81.13

ORACLE根目錄:D:\product\11.2.0\dbhome_1

ORACLE埠:1521

2:ORACLE getway11(透明閘道器,這個要和ORACLE資料庫的版本一致)

IP地址:10.201.81.13

gateway11根目錄:D:\product\11.2.0\tg_1

gateway埠:1522

3:SQL SERVER2012

IP地址:192.168.83.24

資料庫名:JZJY

使用者名稱:ls

密碼:ls123

第二部:安裝透明閘道器

1:解壓透明閘道器的壓縮包,點選setup.exe安裝




2:安裝目錄選擇和ORACLE一致


3:選擇元件,因為要連結到SQL SERVER


4:填寫SQL SERVER的主機名和資料庫名稱


5:開始安裝


6:安裝完成後就退出了,因為監聽要手動配置。

第三步:透明閘道器配置

1:來到D:\product\11.2.0\tg_1\dg4msql\admin目錄下

這個目錄下可以看到以下initdg4msql.ora檔案,上面在安裝透明閘道器的時候有配置的要連結SQL SERVER資料的地址和資料庫名稱,在這裡都可以體現:
HS_FDS_CONNECT_INFO= "192.168.81.13:1433//JZJY"
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER

    檢查一下HS_FDS_CONNECT_INFO是否是我們想要連結的地址,格式為:目標資料庫的IP地址:埠//資料庫名。SQL SERVER的預設埠是1433。這個檔名也比較有講究。格式為initSID.ora。現在這個檔名是initdg4msql.ora,為了方便辨認,這裡把檔名修改為initjzjy.ora。此時的SID是jzjy.

2:配置透明閘道器的監聽,來到D:\product\11.2.0\tg_1\NETWORK\ADMIN\listener.ora

# listener.ora Network Configuration File: D:\product\11.2.0\tg_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
 
SID_LIST_LISTENER =
   (SID_LIST =
     (SID_DESC =
     (PROGRAM = dg4msql)
     (SID_NAME = jzjy)
     (ORACLE_HOME = D:\product\11.2.0\tg_1)
    )
  )
 
    
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.201.81.13)(PORT = 1522))
    )
  )
 
ADR_BASE_LISTENER = D:\product\11.2.0\tg_1
這裡需要注意的主要是一下幾點:
  • PROGRAM為dg4msql:因為例項的配置檔案在dg4msql目錄下,就是上面的initjzjy.ora檔案所在的目錄
  • SID_NAME為jzjy:這個sid就是上面的檔名中的sid,initjzjy.ora的sid為jzjy
  • ORACLE_HOME就是我們透明閘道器的安裝目錄
  • ORACLE的監聽埠是1521,我的oracle和透明閘道器是安裝在同一臺機器上的,所以透明閘道器的監聽埠設定為1522。
  • 一個initSID.ora檔案就對應一個SID_DESC,可以根據想要連結的資料庫來配置。
3:啟動透明閘道器的監聽

在命令列執行lsnrctl start,或者直接去服務那啟動監聽OracleOraGtw11g_home1TNSListener,這個服務名根據具體而定,每人可能不太一樣。服務啟動好了就OK

4:配置tns資訊,來到D:\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
jzjy =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST =110.201.81.13)(PORT = 1522))
    (CONNECT_DATA=(SID=jzjy))
    (HS=OK)
  )
這裡需要注意的有以下幾點:
  • 第一個jzjy名字前一定不能有空格,要緊挨左邊;
  • address就是透明閘道器的地址,埠是透明閘道器的監聽埠;
  • sid=jzjy:這個jzjy就是透明閘道器dg4msql目錄下的initSID.ora中的sid;
  • (hs=ok):這個很重要,你會發現之前配的一些例項沒有,這是因為了表示這是外部程式,而不是oracle資料庫例項。
5:測試tns
重啟oracle監聽服務和透明閘道器服務後在命令列輸入:tnsping jzjy。如果出現下面的就表示成功
TNS Ping Utility for 64-bit Windows: Version 11.2.0.1.0 - Production on 22-11月-
2017 16:29:14

Copyright (c) 1997, 2010, Oracle.  All rights reserved.

已使用的引數檔案:
D:\product\11.2.0\dbhome_1\network\admin\sqlnet.ora

已使用 TNSNAMES 介面卡來解析別名
嘗試連線 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.201.81.13)(PORT =
1522)) (CONNECT_DATA = (SID = jzjy)) (HS = OK))
OK (30 毫秒)

C:\Users\Administrator>
6:建立DBLINK
在plsql登入oracle客戶端執行sql:
create public database link dblink_test connect to "ls" identified by "ls123" using 'jzjy';
  • public的意思是其他的使用者也能使用這個dblink;
  • dblink_test就是我們建立的dblink名字;
  • “ls”和“ls123”分別是目標sql server資料庫的登入名和密碼,在建立dblink的時候這兩個欄位一定要加雙引號;
  • jzjy就是我們在配置tns的那個名稱:jzjy=....的那串串
7:測試dblink是否
可以執行sql:select 1 from [email protected]_test看是否有查詢結果。這裡的tableName就是目標sql server的一張已知表名,@後面接dblink名稱

第四步:記錄下自己遇到的問題和解決方法

問題1:配置完透明閘道器後,就是起不來監聽,每次啟動的時候就自己停止了 造成原因:暫時還不知道 解決辦法:重啟伺服器,監聽就順利啟動了。。。。。。

相關推薦

ORACLE到SQL SERVER透明安裝配置

最近專案中需要用到在ORACLE的儲存過程裡訪問SQL SERVER資料庫中的幾張表,就用到了DBLINK。這裡就寫幾個字記錄一下自己的配置步驟和遇到的坑: 第一步:準備 1:oracle資料庫 IP地址:10.201.81.13 ORACLE根目錄:D:\pr

Oracle下配置透明訪問MS SQL SERVER

配置環境:(configuration setting) 伺服器 作業系統 IP地址 SQL SERVER Windows 2003 10.9.5.47

Oracle 10g與SQL Server 2008互聯之透明配置

舊系統使用Oracle,新系統使用SQL Server,使用透明閘道器將舊系統的資料通過觸發器更新到新系統中去。 一、環境   A: Oralce DB Server OS: CentOS 6.4

透明配置及oracle配置多個透明

工作原因需要配置多個透明閘道器,研究了一下這東西比較坑,網上的透明閘道器多配置的資料也了了,總結了一下,有理解不到位的地方大家斧正。 實現透明閘道器的配置以及連結多個SQLSERVER例項的實現 安裝 在一臺伺服器上安裝透明閘道器軟體。無腦下一步安裝,選擇1522埠,避

Oracle 建立透明,oracle 連線Mysql

-一、版本資訊: [192.168.193.138] Oracle: 11.2.0.4.0     OS: CentOS 6.8(final) [192.168.1.4] MYSQL:5.5.23 OS: CentOS 6.8(final) --------------

[Oracle]跨庫查詢方法:database link透明

一、oracle資料庫A 訪問另一個oracle資料庫B 1.  建立DBLINK的方法: create public database link dblink connect to totalplant identified by totalplant using '(D

微服務之:零搭建ocelotconsul叢集

介紹   微服務中有關鍵的幾項技術,其中閘道器和服務服務發現,服務註冊相輔相成。 首先解釋幾個本次教程中需要的術語 閘道器 Gateway(API GW / API 閘道器),顧名思義,是企業 IT 在系統邊界上提供給外部訪問內部介面服務的統一入口,簡化了外部由於多服務協同完成

折騰樹莓派搭建透明記錄

就是買了個google home mini咯,所以要搞透明代理。由於路由器就是很一般的水星路由,所以路由器上面搞不起來,最後的解決方案是利用樹莓派作為閘道器進行透明代理。 原理是這樣的: 路由器設定DHCP伺服器ip地址為樹莓派的ip地址,這樣之後分配的機器預設閘道器就是樹莓派。所有流

centos7配置透明訪問

使用的方案是shadowsock+iptables轉發 VPS配置 wget https://bootstrap.pypa.io/get-pip.py sudo python3 get-pip.py sudo pip install shadowsocks vi c

SIA-GateWay之API安裝部署指南

SIA-GATEWAY是基於SpringCloud微服務生態體系下開發的一個分散式微服務網關係統。具備簡單易用、視覺化、高可擴充套件、高可用性等特徵,提供雲原生、完整及成熟的接入服務解決方案。本文介紹API閘道器的安裝部署。 一、環境 1.1 編譯環境 Maven3+ nodejs Jdk1.8+ 1.2

雲原生 Kong Kong 管理UI 的完全安裝攻略

2. Kong支援的環境 從上圖來看Kong對Linux、MacOS、容器、雲 支援的還是比較全面的。鑑於大部分國內開發者使用的是Windows環境。本文依然使用Docker進行安裝。建議對Docker不太瞭解的同學學習相關的知識。也可以關注我的公眾號:Felordcn 來及時獲取相關的知識。 3. 安裝

zuul:(一)SpringCloud的介紹zuul的使用

1)什麼是閘道器?         API Gateway,是系統的唯一對外的入口,介於客戶端和伺服器端之間的中間層,處理非業務功能 提供路由請求、鑑權、監控、快取、限流等功能 統一接入 智慧路由

ubuntu 15.10 設定靜態ip 分配固定ip 設定dns 設定 命令列配置ip 固定ip不生效怎麼辦

要用到的檔案: 配置介面資訊 /etc/network/interfaces 配置內容: auto eth0 iface eth0 inet static address 192.168.216.188 gateway 192.168.216.2 netmask 255.255.255.0

.net core在Ocelot中統一配置Swagger

最近在做微服務的時候,由於我們是採用前後端分離來開發的,提供給前端的直接是Swagger,如果Swagger分佈在各個API中,前端檢視Swagger的時候非常不便,因此,我們試著將Swagger集中放到閘道器中。 這裡我用兩個API專案(一個BasicDataApi,一個UsersApi)和一個閘道器專案(

SpringCloud(五)Zuul與分散式配置中心

在 Spring Cloud 微服務系統中,一種常見的負載均衡方式是,客戶端的請求首先經過負載均衡(Ngnix),再到達服務閘道器(Zuul 叢集),然後再到具體的服務。服務統一註冊到高可用的服務註冊中心叢集,服務的所有的配置檔案由配置服務管理,配置服務的配置檔案放在 GIT 倉庫,方便開發人員隨時改配置。

Filebeat 日誌收集 安裝配置

Filebeat 風來了.fox 1.下載和安裝 https://www.elastic.co/downloads/beats/filebeat 目前最新版本 1.3.0 這裡選擇 LINUX 64-BIT 即方式一 方式一:原始碼 w

Filebeat 5.x 日誌收集 安裝配置

Filebeat 5.x版本 風來了.fox 1.下載和安裝 https://www.elastic.co/downloads/beats/filebeat 這裡選擇 LINUX 64-BIT 即方式一 https://artifacts.elas

微服務零搭建——(二)搭建api(不帶驗證)

環境準備 建立空的core2.1 api專案  演示使用名稱APIGateWay  過程參考上一篇 完成後在appsettings.json 新增節點 "Setting": { "Port": "5000" } 搭建過程 新增檔案configuration.json

微服務零搭建——(六)ocelot配置追蹤功能

butterfly 準備工作 首先下載buterfly release版本  解壓並通過命令啟動:dotnet Butterfly.Web.dll --EnableHttpCollector=true 可以採用bat檔案的方式  cd C:\Users\Lenovo\Desk

通過zuul請求服務有時候個別請求時候"timestamp":"2018-09-07 11:45:38","status":500,"error":"Internal Server Error"

之前這個一開始問題分析是閘道器超時配置時間太短的原因,隨後開始調大閘道器時間: 閘道器的三種時間配置 ribbon: ReadTimeout: 5000 ConnectTimeout: 5000 Max