Oracle Database Gateway memungkinkan aplikasi klien Oracle untuk mengakses database non-Oracle. Misalnya, Oracle SQL Developer dan MySQL. Oracle Database Gateways dan Layanan Heterogen (dibangun ke dalam Oracle) menghadirkan tampilan satu database Oracle lokal, meskipun datanya mungkin ada di Oracle, MySQL, SQL Server, dan sebagainya.
Oracle Database Gateway for ODBC (DG4ODBC) secara transparan mengintegrasikan database ODBC dengan Oracle. ODBC menyediakan antarmuka lintas-DBMS yang seragam dan mengisolasi aplikasi dari database dengan menggunakan middleware yang dikenal sebagai driver ODBC untuk menerjemahkan permintaan aplikasi menjadi sesuatu yang dipahami database. Karena menggunakan driver ODBC untuk menautkan Oracle ke database target, DG4ODBC tidak terikat ke database tertentu. Arsitektur fleksibel ini memungkinkan Oracle untuk hidup berdampingan dengan database apa pun yang menyediakan driver ODBC.
Dengan menggunakan DG4ODBC, Anda dapat langsung menggunakan aplikasi Oracle Anda, baik dari Oracle maupun pihak ketiga, untuk mengakses informasi dalam database ODBC seolah-olah itu adalah database Oracle. Aplikasi tidak perlu dikode ulang atau dikonfigurasi ulang.
DG4ODBC hadir sebagai bagian dari Oracle 11g dan yang lebih baru, tanpa biaya tambahan, dan dapat digunakan dengan Oracle 10g dan nanti. Untuk mengintegrasikan database ODBC dengan Oracle versi sebelumnya, lihat tutorial HSODBC kami.
Karena DG4ODBC dapat menghubungkan Oracle ke database mana pun yang menyediakan driver ODBC, Oracle merujuk ke DG4ODBC sebagai agen konektivitas generik.
Anda dapat menggunakan driver ODBC Easysoft dengan DG4ODBC untuk menghubungkan Oracle ke MySQL. Langkah-langkah dalam panduan ini adalah untuk MySQL dan Oracle di Linux dan UNIX.
- Periksa apakah versi DG4ODBC Anda 32-bit atau 64-bit:
cd $ORACLE_HOME/bin file dg4odbc
Jika
file
output perintah berisi "ELF 64-bit LSB executable", atau yang serupa, DG4ODBC adalah 64-bit, unduh driver MySQL ODBC 64-bit untuk platform Anda.Jika tidak, unduh driver MySQL ODBC 32-bit untuk platform Anda.
- Instal, lisensikan, dan uji driver MYSQL ODBC pada mesin tempat DG4ODBC diinstal.
Untuk petunjuk instalasi, lihat dokumentasi driver MySQL ODBC. Lihat dokumentasi untuk melihat variabel lingkungan mana yang perlu Anda atur (
LD_LIBRARY_PATH
,LIBPATH
,LD_RUN_PATH
atauSHLIB_PATH
tergantung pada platform dan linker). - Buat file init DG4ODBC. Misalnya:
cd $ORACLE_HOME/hs/admin cp initdg4odbc.ora initmysql.ora
- Pastikan parameter dan nilai ini ada di file init Anda:
HS_FDS_CONNECT_INFO = mysql_odbc_dsn HS_FDS_SHAREABLE_NAME = /usr/local/easysoft/unixODBC/lib/libodbc.so
Ganti mysql_odbc_dsn dengan nama sumber data driver MySQL ODBC yang terhubung ke database MySQL target.
Jika server MySQL Anda tidak mengharuskan Anda untuk memberikan nama pengguna dan kata sandi, sertakan
IgnoreAuth=Yes
diHS_FDS_CONNECT_INFO
nilai parameter. Misalnya:HS_FDS_CONNECT_INFO = "mysql_odbc_dsn;IgnoreAuth=Yes"
- Tambahkan baris ini untuk meningkatkan kompatibilitas Oracle / MySQL:
HS_FDS_QUOTE_IDENTIFIER = FALSE
- Tambahkan entri ke
$ORACLE_HOME/network/admin/listener.ora
yang membuat SID_NAME untuk DG4ODBC. Misalnya:SID_LIST_LISTENER = (SID_LIST = (SID_DESC= (SID_NAME=mysql) (ORACLE_HOME=oracle_home_directory) (PROGRAM=dg4odbc) (ENVS=LD_LIBRARY_PATH = /usr/local/easysoft/unixODBC/lib: /usr/local/easysoft/lib) ) )
Ganti Oracle_home_directory dengan nilai
$ORACLE_HOME
. Misalnya,/u01/app/oracle/product/11.2.0/dbhome_1/
. - Tambahkan entri DG4ODBC ke
$ORACLE_HOME/network/admin/tnsnames.ora
yang menentukan SID_NAME yang dibuat pada langkah sebelumnya. Misalnya:mysql_connection= (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP)(HOST=oracle_host)(PORT=1521)) (CONNECT_DATA= (SID=mysql)) (HS=OK) )
- Mulai (atau mulai ulang) Oracle Listener:
cd $ORACLE_HOME/bin ./lsnrctl stop ./lsnrctl start
- Hubungkan ke database Oracle Anda di SQL*Plus.
- Di SQL*Plus, buat link database untuk database MySQL target. Misalnya:
CREATE PUBLIC DATABASE LINK mysqllink CONNECT TO "dbuser" IDENTIFIED BY "dbpassword" using 'mysql_connection';
Ganti dbuser dan dbpassword dengan nama pengguna dan kata sandi yang valid untuk database MySQL target.
– Atau, jika server MySQL Anda tidak mengharuskan Anda untuk memberikan nama pengguna dan kata sandi:
CREATE PUBLIC DATABASE LINK mysqllink USING 'mysql';