โดยปกติหากต้องการเชื่อมต่อฐานข้อมูลสองฐานข้อมูลสำหรับ Oracle สามารถทำได้โดยการสร้าง database link แต่กรณีที่ต้องการสร้างการเชื่อมต่อจากฐานข้อมูล Oracle ไปยังฐานข้อมูลที่สร้างโดยระบบจัดการฐานข้อมูลอื่นที่ไม่ใช่ Oracle เช่น MS SQL Server, MySQL สามารถทำได้โดยใช้เครื่องมือที่เรียกว่า Oracle Database Gateway นั่นเอง
ตัวอย่างการใช้ Oracle Database Gateway เชื่อมต่อไปยัง MS SQL Server
เพื่อให้เห็นภาพการใช้งานจะยกตัวอย่างการใช้งานกับ MS SQL Sever ดังนี้
หมายเหตุ รุ่นของ Software ที่ใช้ในตัวอย่างนี้คือ
- Oracle Database 12c R2 (12.2.0)
- Oracle Database Gateways 12c (12.2.0)
- เตรียมข้อมูลที่จำเป็นก่อนการติดตั้ง
ข้อมูลของ SQL Server ที่เราต้องการเชื่อมต่อ
- ชื่อเครื่องหรือ IP Address ของเครื่องที่ SQL Server ติดตั้งอยู่
- หมายเลข port ของ SQL Server ที่เราต้องการเชื่อมต่อ
- ชื่อฐานข้อมูล SQL Server ที่เราต้องการเชื่อมต่อ
2. ขั้นตอนการติดตั้ง Oracle Database Gateway
เมื่อดาวน์โหลดตัวติดตั้งจากเว็บไซต์ของ Oracle แล้ว ดำเนินการติดตั้งจากตัวติดตั้งที่ดาวน์โหลด ดังตัวอย่างต่อไปนี้
ขั้นตอนนี้จะเป็นการใส่ข้อมูลของฐานข้อมูล MS SQL Server ที่ต้องการเชื่อมต่อ
หลังจากนั้นทำการติดตั้งไปตามขั้นตอนตามลำดับ จนถึงขั้นตอนการสร้าง listener
หลังจากติดตั้ง listener สำเร็จแล้ว ก็เป็นอันเสร็จสิ้นการติดตั้ง Oracle Database Gateway
*** หลังจากการติดตั้ง หากเรียกดู Service จะเห็นว่ามี service ของ listener ปรากฎขึ้นมา
3. การตั้งค่าหลังจากติดตั้ง
- ไปยังโฟลเดอร์ที่ติดตั้ง Oracle Database Gateway เช่น C:\app\tg\Administrator\product\12.2.0\tghome_1\dg4msql\admin
- เปิดไฟล์ initdg4msql.ora
- ตรวจสอบการตั้งค่าตรง HS_FDS_CONNECT_INFO
HS_FDS_CONNECT_INFO=[192.168.100.184]/1433/MSSQLSERVER
กรณีมีแค่ instance เดียว อาจจะละชื่อ instance ไว้ และระบุชื่อฐานข้อมูลได้เลย ดังตัวอย่าง
HS_FDS_CONNECT_INFO=[192.168.100.184]:1433//FILMSDSQL
4. สร้าง database link
เมื่อติดตั้ง Oracle Database Gateway เสร็จแล้ว ขั้นตอนต่อมาคือการสร้าง database link บนฐานข้อมูล Oracle เพื่อทำการเรียกดูข้อมูลบน MS SQL Server ผ่านทาง database link ที่สร้างขึ้นมา
- รูปแบบคำสั่งในการสร้าง Database Link เป็นดังนี้
CREATE PUBLIC DATABASE LINK DBLinkName
CONNECT TO sa IDENTIFIED BY password
USING ‘dg4msql’;
- DbLinkName คือ ชื่อของ database link
- sa คือชื่อของ user บน MS SQL Server (อาจจะเป็น user อื่นก็ได้)
- password คือ รหัสผ่านสำหรับ user บนฐานข้อมูล MS SQL Server
5. การเรียกดูข้อมูล สามารถเรียกดูข้อมูลผ่าน database link ที่สร้างขึ้นโดยใช้คำสั่ง sql เช่น
select * from table@DBLinkName;
เมื่อ table คือ ชื่อตารางที่อยู่บน MS SQL Server