Oracle Database Gateways address the needs of disparate data access. In a heterogeneously distributed environment, Gateways make it possible to integrate with any number of non-Oracle systems from an Oracle application. They enable integration with data stores such as IBM DB2, Microsoft SQL Server and Excel, transaction managers like IBM CICS and message queuing systems like IBM WebSphere MQ.
Although SQL is based upon ANSI standard, implementation may be different by different vendors. For example in Oracle you want to have the resultset in uppercase letters, you can execute the following:SELECT TO_UPPER(ename) FROM emp;But in non-Oracle system it could be SELECT UPPERCASE (ename) FROM emp;The heterogeneous solution should automatically translate the dialect of the foreign system to that of the local system eliminating the need for the user to utilize more than one systems’ dialect.Vendors have their own method of storing metadata. A mechanism is required that would allow a query of the metadata at remote disparate system to be displayed in the format of the local system.The heterogeneous solution should automatically translate a data dictionary query in the dialect of the local database to that of the target remote database. This translation involves rewriting the same results by querying the remote system.Translating one manufacturer’s datatype to another manufacturer’s should also be managed by heterogeneous solution.
Oracle offers database Gateways for synchronously sharing information with in an enterprise. Synchronous access uses Oracle’s Distributed SQL features to consolidate data on fly, masking the location of data from the application or user by making it appear as a local table.Database Gateways provide the flexibility, power and scalability to transparently access any number of non-Oracle systems.Access to both local and remote data is achieved using the Oracle SQL and procedure call interfaces, even if the remote data is stored in multiple vendors’ databases. This transparency eliminates the need for the application developers to customize their applications to access data from different non-Oracle systems thus decreasing the development efforts and increasing the mobility of the application.
The processing power for the communicating with non-Oracle system is an integrated component of the Oracle Database known as Heterogeneous Services which further provides different services.Transaction Service – ensures that the Oracle environment can manage authenticated sessions (opening/closing) with non-Oracle systems. It also ensures that distributed transaction will maintain global data integrity.SQL Service – provides necessary translation capabilities for SQL Translation and DD Translation. SQL translation includes the capabilities to translate Oracle SQL into the proper SQL dialect of the non-Oracle System.DD Translation – The SQL Service rewrites any refrences to a data dictionary table in the query of a non-Oracle system so that the result set appears as it were retrieved from Oracle DD.Procedural Service – provides a programmatic interface for executing stored procedures on non-Oracle system. Enables to access the procedural system of non-Oracle system.Pass-through SQL – provides the facility to issue native SQL against a non-Oracle system. This enables you to execute functions or procedures on the non-Oracle system that are not supported by the gateway. It can be used to perform DDL on non-Oracle system.Database Integration – When a gateway is registered with the Oracle database, the capabilities and the translations of the non-Oracle system are retrieved and stored locally thus eliminates the need for the Oracle DB to fetch this information each time a connection is established.Distributed Optimization – Oracle will determine the best method for executing the SQL statement. Oracle might determine that the greatest distributed performance can be achieved by performing the JOIN of two tables in the non-Oracle system.
SQL & DD Translation - contains all of the necessary translation information that the HS translation service requires.Datatype Translation – unlike SQL & DD Translation , datatype translations are performed by the gateway. There are two reasons for itOverhead reduction: eg; transferring many available types (numeric types) and then translatingConversion of unsupported datatypes:Operational Transparency - non-Oracle System appears as a remote Oracle System since the gateway provides the ability to translate SQL, data dictionary and data types to the proper dialect of the non-Oracle system.Location Transparency – can be achieved by defining a VIEW or SYNONYM for each remote object. Instead of referencing the remote object by dblink, you reference directly view or synonym.
If you don't see the further screen , check from the application tab and bring to it at front
Listener will be configured only on the node where you started the installation , you will need to create the listener on the other node as well.
after the installation, you will see the new listener service in windows services
Configure the Gateway Initialization Parameter FileChoose a System Identifier for the GatewayThe gateway system identifier (SID) is an alphanumeric character string that identifies a gateway instance. You need one gateway instance, and therefore one gateway SID, for each SQL Server database you are accessing. The SID is used as part of the file name for the initialization parameter file. The default SID is dg4msql.Customize the Initialization Parameter FileThe initialization parameter file must be available when the gateway is started. During installation, the following default initialization parameter file is created:ORACLE_HOME\\dg4msql\\admin\\initdg4msql.oraWhere ORACLE_HOME is the directory under which the gateway is installed.A number of initialization parameters can be used to modify the gateway behavior.initdg4msql.ora## HS init parameters#HS_FDS_CONNECT_INFO=[p-hq-cl-sq-15]/sqlportal2/ATCExpensesHS_FDS_TRACE_LEVEL=OFFHS_FDS_RECOVERY_ACCOUNT=RECOVERHS_FDS_RECOVERY_PWD=RECOVER
Configure Oracle Net for the GatewayThe gateway requires Oracle Net to communicate with the Oracle database. After configuring the gateway, perform the following tasks to configure Oracle Net to work with the gateway:Configure Oracle Net Listener for the GatewayThe Oracle Net Listener listens for incoming requests from the Oracle database. For the Oracle Net Listener to listen for the gateway, information about the gateway must be added to the Oracle Net Listener configuration file, listener.ora. This file by default is located in ORACLE_HOME\\network\\admin, where ORACLE_HOME is the directory under which the gateway is installed.The following entries must be added to the listener.ora file:•A list of Oracle Net addresses on which the Oracle Net Listener listens•The executable name of the gateway that the Oracle Net Listener starts in response to incoming connection requestsLISTENERDG2 = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = P-HQ-CL-OR-11.mohe.gov.sa)(PORT = 1622)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1622)) ) )ADR_BASE_LISTENERDG2 = D:\\product\\18.104.22.168\\dg_2SID_LIST_LISTENERDG2= (SID_LIST= (SID_DESC= (SID_NAME=dg4msql) (ORACLE_HOME=D:\\product\\22.214.171.124\\dg_2) (PROGRAM=dg4msql) )
Configure the Oracle Database for Gateway AccessBefore you use the gateway to access SQL Server data you must configure the Oracle database to enable communication with the gateway over Oracle Net.To configure the Oracle database you must add connect descriptors to the tnsnames.ora file. By default, this file is in ORACLE_HOME\\network\\admin, where ORACLE_HOME is the directory in which the Oracle database is installed. You cannot use the Oracle Net Assistant or the Oracle Net Easy Config tools to configure the tnsnames.ora file. You must edit the file manually.dg4msql= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=p-hq-cl-or-11.mohe.gov.sa) (PORT=1621) ) (CONNECT_DATA= (SID=dg4msql)) (HS=OK))Create Database LinksAny Oracle client connected to the Oracle database can access SQL Server data through the gateway. The Oracle client and the Oracle database can reside on different machines. The gateway accepts connections only from the Oracle database.A connection to the gateway is established through a database link when it is first used in an Oracle session. In this context, a connection refers to the connection between the Oracle database and the gateway. The connection remains established until the Oracle session ends. Another session or user can access the same database link and get a distinct connection to the gateway and SQL Server database.Database links are active for the duration of a gateway session. If you want to close a database link during a session, you can do so with the ALTER SESSION statement.To access the SQL Server, you must create a database link. A public database link is the most common of database links.SQL> CREATE PUBLIC DATABASE LINK dblink CONNECT TO2 "user" IDENTIFIED BY "password" USING 'tns_name_entry';
Integration with Oracle Database Gateway
Integration With EaseBy: Inam Ullah BukhariEjada Systems , KSA
Demand – Integrate & Consolidate all info Take advantage of the synergies inherent in business information Providing customer with comprehensive view of corporate data Quickly, efficiently and economically deploy corporate data through a single application Synchronously sharing information Consolidate data on-fly Avoid application customization Transparently access any number of Systems(non-Oracle)
Oracle Database Gateway for SQL Server Installation Step-by-Step Installation Configuration Configure the Gateway Initialization Parameter File Configure Oracle Net for the Gateway Configure the Oracle Database for Gateway Access
Installing Oracle Database Gateway for SQL ServerHardware Requirements For Microsoft Windows Requirement For Microsoft Windows (32-bit) (64-bit)Total disk space 4 GB 5 GB 1 GB of real memory is recommended to support the gateway. The total real memory requirement for the concurrent use of the gateway also depends on these factors:Physical Memory • The SQL statement processed by the user Minimum of 1 GB • The number of cursors currently opened against SQL Server • The number of columns in the table being accessedVirtual memory Double the amount of RAM Double the amount of RAMVideo adapter 256 colors 256 colors AMD64, or Intel ExtendedProcessor 550 MHz minimum(On Microsoft Windows Vista, 800 MHz minimum) memory (EM64T)
Installing Oracle Database Gateway for SQL Server Software RequirementsOracle Database Gateway for SQL Server is supported on the following Microsoft Windows (32-bit)operating systems: Microsoft Windows 2000 with Service Pack 1 or later. All editions, including Terminal Services and Microsoft Windows 2000 MultiLanguage Edition (MLE), are supported. Microsoft Windows Server 2003 - all editions Microsoft Windows Server 2003 R2 - all editions Microsoft Windows XP Professional Microsoft Windows Vista - Business, Enterprise, and Ultimate editions Microsoft Windows 2008Microsoft Windows Multilingual User Interface Pack is supported on Microsoft Windows XPProfessional and Microsoft Windows Server 2003.Oracle Database Gateway for SQL Server is supported on the following Microsoft Windows (64-bit)operating systems: Microsoft Windows Server 2003 - all x64 editions Microsoft Windows Server 2003 R2 - all x64 editions Microsoft Windows XP Professional x64 Edition Microsoft Windows Vista x64 - Business, Enterprise, and Ultimate editions Microsoft Windows 2008 x64