ORACLE 訪問MYSQL 配置筆記
ORACLE本身並沒有針對MYSQL的透明閘道器,因此ORACLE 訪問MYSQL需透過ODBC 的透明閘道器完成。出於簡單說明,ORACLE 安裝在Windows 系統下。
第一步: 安裝MYSQL ODBC 驅動
由於是ORACLE 訪問MYSQL, 因此MYSQL ODBC 驅動 必須安裝在ORACLE 所在的伺服器上。可下載安裝mysql-connector-odbc-*.msi 安裝,或者在安裝mysql 社群版時選擇安裝connector-odbc。 需要說明的是,並不是每次都能安裝成功connector-odbc。
第二步: 建立MYSQL ODBC 資料來源
在管理工具-> 資料來源(ODBC)->系統DSN 中新增MYSQL的ODBC 資料來源。假設取名“KEYMYSQL”A。可以在配置過程中測試連線,確保能夠連通。
第三步: 建立init<閘道器>.ora
在$ORACLE_HOME\HS\ADMIN\ 目錄下有一個initdg4odbc.ini 檔案。 在當前目錄下,複製一命名規則為 init<閘道器>.ora的檔案,例如initmysql.ora , 這裡“mysql”B就是閘道器的sid.。 該檔案中兩行可以如下配置:
HS_FDS_CONNECT_INFO = keymysql
HS_FDS_TRACE_LEVEL = NO
其中HS_FDS_CONNECT_INFO 的值就是第二步配置的ODBC資料來源 “KEYMYSQL”A 中的值。
第四步: 將閘道器新增監聽中
在資料庫伺服器上修改$ORACLE_HOME\network|admin\ 下的listener.ora 檔案,在SID_LIST_LISTENER 新增標紅這段:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = E:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:E:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
(SID_DESC =
(SID_NAME = mysql)
(ORACLE_HOME = e:\app\Administrator\product\11.2.0\dbhome_1)
(PROGRAM = dg4odbc)
)
)
這裡 需要說明的是,一是,SID_NAME 的值就是第三步閘道器“mysql”B的值,和第二步ODBC 資料來源的值無關, 二是ORACLE_HOME 是你資料庫中實際的$ORACLE_HOME值不要直接複製忘了改。
第五步:配置別名
在資料庫伺服器上修改$ORACLE_HOME\network|admin\ 下的tnsname.ora 檔案,新增資料庫別名:
MYSQLSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = mysql)
)
(HS = OK)
)
其中“MYSQLSERVER”C 是別名, SERVICE_NAME 的“mysql”對應的是第三和第四步中的SID
第六步: 建立資料庫連線
執行以下SQL:
create database link mysqllk
connect to "root"
identified by "root" using ‘MYSQLSERVER’;
其中“mysqllk”是database link ,
第七步: 測試
假設MYSQL中有個表t, 在ORACLE 中執行:
Select * from t@ mysqllk ;
如果返回值正確,則表示配置過程。
PS: 由於MYSQL 是UTF8 字符集,ORACLE 資料庫是US7ASCII 字符集,讀取MYSQL中的中文會返回亂碼,網上一些,例如在 init<閘道器>.ora 中配置HS_LANGUAGE和HS_NLS_NCHAR的方法還不奏效,還需下一步排除。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9036/viewspace-1606163/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mono 訪問 oracle、mysqlMonoOracleMySql
- 配置Mysql Group Replication遇到的問題筆記MySql筆記
- Oracle 通過透明閘道器訪問mysql配置步驟OracleMySql
- ORACLE dataguar 配置筆記Oracle筆記
- ubuntu mysql 安裝和外網訪問配置UbuntuMySql
- Laravel 使用筆記之一 訪問器Laravel筆記
- ORACLE 透明閘道器訪問 MYSQL 表OracleMySql
- Oracle透明閘道器訪問Mysql—luckyfriendsOracleMySql
- mysql例項停止、啟動、配置遠端訪問MySql
- ORACLE10G DATAGUARD配置筆記Oracle筆記
- Oracle 通過透明閘道器訪問mysqlOracleMySql
- Oracle 透過透明閘道器 訪問 mysqlOracleMySql
- Oracle/MySQL透過odbc訪問PostgreSQL for LightDBOracleMySql
- Oracle配置sqlnet.ora限制ip訪問[Oracle基礎]OracleSQL
- Oracle EM Https WIndows不能訪問防火牆配置OracleHTTPWindows防火牆
- Oracle學習筆記(一)---oracle安裝和配置Oracle筆記
- iOS學習筆記49 Swift(九)訪問控制iOS筆記Swift
- Oracle透明閘道器訪問MySQL資料庫OracleMySql資料庫
- CUUG《Oracle 監聽和TNS配置》- 筆記Oracle筆記
- mysql audit-訪問日誌記錄應用MySql
- 配置hosts訪問githubGithub
- IOS開發筆記 IOS如何訪問通訊錄iOS筆記
- .net框架筆記型別成員及其訪問限度框架筆記型別
- mysql 筆記MySql筆記
- MySQL筆記MySql筆記
- 兩個Oracle配置問題的記錄Oracle
- PostgreSQL IP地址訪問配置SQL
- Xcelsius 訪問webservice 需要配置Web
- mysql8.x docker遠端訪問配置詳解硨磬MySqlDocker
- 配置防火牆允許從外網訪問內網oracle防火牆內網Oracle
- Oracle配置透明閘道器訪問sql2000OracleSQL
- MySQL訪問受限的問題分析MySql
- PHP訪問MySQL篇(轉)PHPMySql
- Java 訪問許可權修飾符學習筆記Java訪問許可權筆記
- Oracle 訪問路徑Oracle
- Oracle外網訪問Oracle
- Oracle 表訪問方式Oracle
- Oracle 索引訪問方式Oracle索引