Sunteți pe pagina 1din 11

13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server

rver | Ora Training Blog

Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using


Database Gateway for SQL Server

Share

Starting with 11g Oracle now provides a Database Gateway for MS SQL Server and various other databases.

The gateway is certified with Oracle database release 10.1.0.5, 10.2.0.3 after applying the gateway
compatibility patch bug or you can directly use it with Oracle RDBMS 10.2.0.4, 10.2.0.5, 11.1 and 11.2

Following steps are involved. Please note that this steps are shown for Linux/Unix platform but for Windows
also similar steps are to be followed.

1. Download Oracle Database Gateways CD if you have not already installed it


2. Install Oracle Database Gateway for Microsoft SQL Server
3. Configure Database Gateway for Microsoft SQL Server (DG4MSQL)

Download the software

Download Oracle Database Gateways from Oracle eDelivery site.

Install Oracle Database Gateway for Microsoft SQL server

Unzip the downloaded zip file. It will create a directory named “gateways”

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 1/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Change the directory to gateways and start installer.

-bash-3.00$ cd /software/11gR2-Gateways/gateways/

-bash-3.00$ ./runInstaller

Click Next

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 2/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Select name for the Oracle Home. The Path defaults to Oracle Home. No need to change the same.

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 3/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Select Oracle Database Gateway for Microsoft SQL Server and click Next

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 4/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Provide any existing Microsoft SQL Server details where you are planning to connect. It actually writes this in a
config file and does not really verify.

This can be changed later also in the configuration file. Click Next

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 5/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Click Install

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 6/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Once it prompts with above screen, open another shell and run the script as root

root@host # /app/oracle/product/11.2.0/dbhome_1/root.sh

Running Oracle 11g root.sh script…

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 7/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

The following environment variables are set as:

ORACLE_OWNER= ora11g

ORACLE_HOME= /app/oracle/product/11.2.0/dbhome_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:

The file “dbhome” already exists in /usr/local/bin. Overwrite it? (y/n) [n]: y

Copying dbhome to /usr/local/bin …

The file “oraenv” already exists in /usr/local/bin. Overwrite it? (y/n) [n]: y

Copying oraenv to /usr/local/bin …

The file “coraenv” already exists in /usr/local/bin. Overwrite it? (y/n) [n]: y

Copying coraenv to /usr/local/bin …

Entries will be added to the /var/opt/oracle/oratab file as needed by

Database Configuration Assistant when a database is created

Finished running generic part of root.sh script.

Now product-specific root actions will be performed.

Finished product-specific root actions.

Click Exit to Finish the installation.

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 8/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Configure Oracle Database Gateway for Microsoft SQL Server

Make sure that the MS SQL database details are correct in the dg4msql parameter file.

-bash-3.00$ more $ORACLE_HOME/dg4msql/admin/initdg4msql.ora

# This is a customized agent init file that contains the HS parameters

# that are needed for the Database Gateway for Microsoft SQL Server

# HS init parameters

HS_FDS_CONNECT_INFO=[SERVER127]:4076//NewCDP16

# alternate connect format is hostname/serverinstance/databasename

HS_FDS_TRACE_LEVEL=OFF

HS_FDS_RECOVERY_ACCOUNT=RECOVER

HS_FDS_RECOVERY_PWD=RECOVER

-bash-3.00$ cd $ORACLE_HOME/network/admin

Append following in existing listener.ora. Change the name, path and port as required.

LISTENER_dg4mssql=

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = <oracle host or IP>) (PORT = <any unused port>))

SID_LIST_LISTENER_dg4mssql=

(SID_LIST=

(SID_DESC=

(SID_NAME=dg4msql)

(ORACLE_HOME=/app/oracle/product/11.2.0/dbhome_1)

(ENV=”LD_LIBRARY_PATH=/app/oracle/product/11.2.0/dbhome_1/dg4msql/driver/lib:/app/oracle/product/11.2.0

(PROGRAM=dg4msql)

)
http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for-… 9/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Start the newly created listener.

-bash-3.00$ lsnrctl start LISTENER_dg4mssql

Verify that the service is registered with the listener .

-bash-3.00$ lsnrctl status LISTENER_dg4mssql

Listening Endpoints Summary…

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=<oracle hostname or IP>)(PORT=1551)))

Services Summary…

Service “dg4msql” has 1 instance(s).

Instance “dg4msql”, status UNKNOWN, has 1 handler(s) for this service…

The command completed successfully

Append following in tnsnames.ora

dg4msql =

(DESCRIPTION=

(ADDRESS=(PROTOCOL=tcp)(HOST=< oracle hostname or IP >)(PORT=1551))

(CONNECT_DATA=(SID=dg4msql))

(HS=OK)

-bash-3.00$ tnsping dg4msql

TNS Ping Utility for Solaris: Version 11.2.0.1.0 – Production on 07-JAN-2014 12:30:08

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

Used parameter files:

/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=<host>)(PORT=1551))


(CONNECT_DATA=(SID=dg4msql)) (HS=OK))

OK (0 msec)

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for… 10/11
13/2/2018 Steps-by-step: Connecting to Microsoft SQL Server database from Oracle using Database Gateway for SQL Server | Ora Training Blog

Create a new database link pointing to this TNS using SQL Server login credentials. This username must be
already created in the Microsoft SQL Server database.

SQL> CREATE DATABASE LINK sqlserver CONNECT TO “SQLUser” IDENTIFIED BY “SQLPass” USING
‘dg4msql';

Database link created.

SQL> select count(1) from “SQLView”@sqlserver;

COUNT(1)

———-

24592

This concludes setup steps to Read data of Microsoft SQL server table from Oracle database.

http://www.oratraining.com/blog/2014/01/steps-by-step-connecting-to-microsoft-sql-database-from-oracle-database-using-database-gateway-for… 11/11

S-ar putea să vă placă și