ORACLE 透明閘道器訪問 MYSQL 表
環境 LINUX 64 BIT ORACLE 11.2.0.4
LINUX 64 BIT MYSQL 5.7.14
1、
MYSQL建立一個使用者用於ORACLE DBLINK 建立這裡忽略掉
2、
11gR2 預設安裝了透明閘道器檢查一下
[orared@roseha1 ~]$ dg4odbc
Oracle Corporation --- WEDNESDAY NOV 09 2016 15:51:46.233
Heterogeneous Agent Release 11.2.0.4.0 - 64bit Production Built with
Oracle Database Gateway for ODBC
dg4odbc 是database gateway for odbc 的簡稱
3、安裝 MYSQL-connector
yum install mysql-connector-odbc.x86_64
這樣會安裝一些依賴包主要是
mysql-connector*.x86_64.rpm
unixODBC*.x86_64.rpm
unixODBC*.i386.rpm
這裡包含了一些需要的庫檔案
4、配置odbc配置資訊
預設就在/etc/下建立odbc.ini
我這裡配置如下:
# Setup from the unixODBC64-libs package
[rmt] #連線名
Driver = /usr/lib64/libmyodbc3.so #驅動
Server = 192.168.0.150 #mysql伺服器ip
Port = 3306 #MYSQL埠
User = 156read #建立的MYSQL使用者
Password = test123 #密碼
Database = test #訪問的資料
5、測試一下
[root@roseha1 etc]# isql rmt
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
成功
接下來配置oracle的相關配置
6、進入如下目錄:
[orared@roseha1 admin]$ pwd
/home/orared/product/11.2.4/hs/admin
建立配置檔案格式為init<sid>.ora這個sid就是
listener中配置的sid,我這裡開啟了trace,正式使用需要關係
trace日誌在/home/orared/product/11.2.4/hs/log用於排錯
[orared@roseha1 admin]$ more initrmt.ora
HS_FDS_CONNECT_INFO=rmt
# Data source name in odbc.ini
HS_FDS_TRACE_LEVEL= debug
HS_FDS_SHAREABLE_NAME=libodbc.so
HS_FDS_SUPPORT_STATISTICS=FALSE
HS_LANGUAGE=AMERICAN_AMERICA.WE8ISO8859P15
#
# ODBC env variables
set ODBCINI=/etc/odbc.ini
HS_FDS_SHAREABLE_NAME=libodbc.so這裡一定要注意不是
Driver = /usr/lib64/libmyodbc3.so
中的庫檔案
7、配置監聽
我這裡為了不影響現有的監聽新建了一個監聽LISTENER2
配置如下:
LISTENER2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = roseha1)(PORT = 1523))
)
SID_LIST_LISTENER2 =
(SID_DESC =
(SID_NAME = rmt)
(ORACLE_HOME = /home/orared/product/11.2.4)
(PROGRAM = dg4odbc)
(ENVS=LD_LIBRARY_PATH=/usr/lib64:/usr/lib:/home/orared/product/11.2.4/lib:/home/orared/product/11.2.4/odbc/lib)
)
8、配置TNSNEAMS.ORA
我這裡配置如下注意HS=OK不能少
rmt_150_mysql =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = roseha1 )(PORT = 1523))
)
(CONNECT_DATA =
(SID = rmt)
)
(HS = OK)
)
9、建立DBlink
create database link rmt_150_mysql
connect to "156read" identified by "test123" using 'rmt_150_mysql';
10、查詢資料
select "status" from "test"@RMT_150_MYSQL;
預設情況下LINUX的MYSQL 表名和資料庫名是區分大小寫的,因為LINUX本身是一個
檔名區分大小的檔案系統,但是ORCALE的表名是不區分大小的的。但是欄位
MYSQL和ORACLE都不區分大小寫。
如果不加上雙引號會出現找到表和列。
配置過程遇到一些錯誤,但是開啟
HS_FDS_TRACE_LEVEL = debug 能夠很好的找到錯誤來源,然後解決。
oracle——dg4odbc——odbc——mysql
可以參考:
Detailed Overview of Connecting Oracle to MySQL Using DG4ODBC DatabaseLink [ID 1320645.1]
LINUX 64 BIT MYSQL 5.7.14
1、
MYSQL建立一個使用者用於ORACLE DBLINK 建立這裡忽略掉
2、
11gR2 預設安裝了透明閘道器檢查一下
[orared@roseha1 ~]$ dg4odbc
Oracle Corporation --- WEDNESDAY NOV 09 2016 15:51:46.233
Heterogeneous Agent Release 11.2.0.4.0 - 64bit Production Built with
Oracle Database Gateway for ODBC
dg4odbc 是database gateway for odbc 的簡稱
3、安裝 MYSQL-connector
yum install mysql-connector-odbc.x86_64
這樣會安裝一些依賴包主要是
mysql-connector*.x86_64.rpm
unixODBC*.x86_64.rpm
unixODBC*.i386.rpm
這裡包含了一些需要的庫檔案
4、配置odbc配置資訊
預設就在/etc/下建立odbc.ini
我這裡配置如下:
# Setup from the unixODBC64-libs package
[rmt] #連線名
Driver = /usr/lib64/libmyodbc3.so #驅動
Server = 192.168.0.150 #mysql伺服器ip
Port = 3306 #MYSQL埠
User = 156read #建立的MYSQL使用者
Password = test123 #密碼
Database = test #訪問的資料
5、測試一下
[root@roseha1 etc]# isql rmt
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+
成功
接下來配置oracle的相關配置
6、進入如下目錄:
[orared@roseha1 admin]$ pwd
/home/orared/product/11.2.4/hs/admin
建立配置檔案格式為init<sid>.ora這個sid就是
listener中配置的sid,我這裡開啟了trace,正式使用需要關係
trace日誌在/home/orared/product/11.2.4/hs/log用於排錯
[orared@roseha1 admin]$ more initrmt.ora
HS_FDS_CONNECT_INFO=rmt
# Data source name in odbc.ini
HS_FDS_TRACE_LEVEL= debug
HS_FDS_SHAREABLE_NAME=libodbc.so
HS_FDS_SUPPORT_STATISTICS=FALSE
HS_LANGUAGE=AMERICAN_AMERICA.WE8ISO8859P15
#
# ODBC env variables
set ODBCINI=/etc/odbc.ini
HS_FDS_SHAREABLE_NAME=libodbc.so這裡一定要注意不是
Driver = /usr/lib64/libmyodbc3.so
中的庫檔案
7、配置監聽
我這裡為了不影響現有的監聽新建了一個監聽LISTENER2
配置如下:
LISTENER2 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = roseha1)(PORT = 1523))
)
SID_LIST_LISTENER2 =
(SID_DESC =
(SID_NAME = rmt)
(ORACLE_HOME = /home/orared/product/11.2.4)
(PROGRAM = dg4odbc)
(ENVS=LD_LIBRARY_PATH=/usr/lib64:/usr/lib:/home/orared/product/11.2.4/lib:/home/orared/product/11.2.4/odbc/lib)
)
8、配置TNSNEAMS.ORA
我這裡配置如下注意HS=OK不能少
rmt_150_mysql =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = roseha1 )(PORT = 1523))
)
(CONNECT_DATA =
(SID = rmt)
)
(HS = OK)
)
9、建立DBlink
create database link rmt_150_mysql
connect to "156read" identified by "test123" using 'rmt_150_mysql';
10、查詢資料
select "status" from "test"@RMT_150_MYSQL;
預設情況下LINUX的MYSQL 表名和資料庫名是區分大小寫的,因為LINUX本身是一個
檔名區分大小的檔案系統,但是ORCALE的表名是不區分大小的的。但是欄位
MYSQL和ORACLE都不區分大小寫。
如果不加上雙引號會出現找到表和列。
配置過程遇到一些錯誤,但是開啟
HS_FDS_TRACE_LEVEL = debug 能夠很好的找到錯誤來源,然後解決。
oracle——dg4odbc——odbc——mysql
可以參考:
Detailed Overview of Connecting Oracle to MySQL Using DG4ODBC DatabaseLink [ID 1320645.1]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-2128158/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 透過透明閘道器 訪問 mysqlOracleMySql
- Oracle 通過透明閘道器訪問mysqlOracleMySql
- Oracle透明閘道器訪問MySQL資料庫OracleMySql資料庫
- Oracle 11.2.0.4 透過透明閘道器訪問mysql 8.0.16OracleMySql
- Oracle透明閘道器訪問SQLServer資料庫OracleSQLServer資料庫
- 10g透明閘道器訪問sqlserverSQLServer
- 【磐維資料庫】Oracle(透明閘道器)訪問磐維資料庫(PanWeiDB)資料庫Oracle
- 安全閘道器 透明加解密解密
- ORACLE通過透明閘道器建dblink連線Postgresql的幾個問題OracleSQL
- 不設定預設閘道器,可訪問網路
- Janusec應用安全閘道器(WAF閘道器)
- Ceph物件閘道器,多區域閘道器物件
- 日均數十億訪問量!解讀個推API閘道器高能演進API
- 什麼是閘道器?閘道器的作用是什麼,閘道器的作用詳解
- 閘道器GatewayGateway
- gateway 閘道器Gateway
- 《springcloud 二》微服務動態閘道器,閘道器叢集SpringGCCloud微服務
- API閘道器,企業級閘道器可擴充套件API套件
- Oracle/MySQL透過odbc訪問PostgreSQL for LightDBOracleMySql
- API 閘道器 KongAPI
- Zuul路由閘道器Zuul路由
- kong閘道器部署
- Ocelot閘道器(二)
- Ocelot閘道器(三)
- 微服務閘道器微服務
- Fresh tomato做主路由下DHCP閘道器問路由
- 問下 API 閘道器進行測試的方法API
- 微服務閘道器 gateway 跨域問題解決微服務Gateway跨域
- api閘道器設計API
- 微服務閘道器- Nginx微服務Nginx
- Spring Cloud Zuul 閘道器SpringCloudZuul
- Gateway(閘道器)的概述Gateway
- SpringCloud(四)GateWay閘道器SpringGCCloudGateway
- SpringCloud(五)GateWay閘道器SpringGCCloudGateway
- springboot-zuul閘道器Spring BootZuul
- 開放API閘道器實踐(一) ——設計一個API閘道器API
- 服務閘道器過濾器過濾器
- 一文了解如何使用數字身份認證平臺 EIAM 保護 API 閘道器訪問API
- 高效能API閘道器(1)、微服務API閘道器架構設計API微服務架構