 |
|
Create a database link Tips
Oracle Database Tips by Donald BurlesonJanuary 17, 2015
|
Question: How to create a database link in
Oracle? What are the options for creating database links?
Answer: Oracle has invested heavily in
distributed database technology and the creation of a database link is very
straightforward. You specify the database link name, the remote user to
connect to, the password for the remote user and the TNS service name for the
database link connection:
create public
database link
mylink
connect to
remote_username
identified by
mypassword
using 'tns_service_name';
Starting in 11g release 2, the syntax has been enhanced to
remove the need to epscify a TNS service_name:
create public
database link
mylink
connect to
remote_username
identified by
mypassword
using 'myserver:1521/MYSID';
Above we see that the TNS instance name has been replaced
by allowing the server name, port number and Oracle system ID (ORACLE_SID).
You can also create a database link to non-Oracle
databases,
Francisco Riccio describes the steps for a database link to MySQL:
Step 1: Your first step is having installed
the TRANSPARENT GATEWAY (it comes in as of the options when you install Oracle).
Step 2: You must have a user in the SQL Server.
Step 3: In the directory <ORACLE_HOME>\tg4msql\admin look for the file
inittg4msql.ora and have the following options:
HS_FDS_CONNECT_INFO="SERVER=name_server;DATABASE=name_db"
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=user_sqlserver
HS_FDS_RECOVERY_PWD=pass_user_sqlserver
Step 4: Configure the listener and add the following
(SID_DESC =
(PROGRAM = tg4msql)
(SID_NAME = MSQL)
(ORACLE_HOME = C:\oracle1)
)
)
and in our tnsnames.ora add
MSQL=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = servidor)(PORT = 1521))
)
(CONNECT_DATA =
(SID = MSQL)
)
(HS=OK)
)
where HS set up as a heterogonous service
Step 5: create a link to sql server.
create database link msql connect to
user_sqlserver identified by password using 'MSQL';
Step 6: You can now use the database link to a foreign database:
select * from table@msql
For more information on database links, see my related notes below:
|
|
|
Oracle Training from Don Burleson
The best on site
"Oracle
training classes" are just a phone call away! You can get personalized Oracle training by Donald Burleson, right at your shop!

|
|
|
|
|