ORACLE 连接SQL数据库
环境:
1.192.168.14.1 SQL2008 数据库:UFDATA_199_2011 用户名:*** 密码:***
2.192.168.14.3 oracle 10g数据库:TEST 用户名:*** 密码:***
3.ORACLE数据库连接软件:plsqldev
实现方式:
- 在14.3安装oracle 10g,建立测试数据库test,然后安装其getways,将其区别于原文件安装。
- C:\oracle\product\getway\10.2.0\tg_1\tg4msql\admin,将14.3这个目录下的文件inittg4msql.ora进行修改,配置所要连接的SQl数据库的ip地址和数据库名字。
HS_FDS_CONNECT_INFO="SERVER=192.168.14.1;DATABASE=UFDATA_199_2011"
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
- C:\oracle\product\getway\10.2.0\tg_1\NETWORK\ADMIN,将14.3这个目录下的文件listener.ora进行修改,主要添加红色字体部分,添加对SQL数据库的监听。
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\product\getway\10.2.0\tg_1)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = tg4msql)
(ORACLE_HOME = C:\oracle\product\getway\10.2.0\tg_1)
(PROGRAM = tg4msql)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = jyw123)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
)
修改完之后对监听服务重启,运行—cmd,
C:\oracle\product\getway\10.2.0\tg_1\bin\lsnrctl stop 停止服务;
C:\oracle\product\getway\10.2.0\tg_1\bin\lsnrctl start启动服务;
C:\oracle\product\getway\10.2.0\tg_1\bin\lsnrctl status状态,显示结果。
- C:\oracle\product\getway\10.2.0\tg_1\NETWORK\ADMIN,将14.3这个目录下的文件tnsnames.ora添加一下,主要是添加本地net服务名,主要是红色部分。
如下:
TEST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.14.3)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = test)
)
)
EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)
tg4msql=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST =192.168.14.3)(PORT =1521))
)
(CONNECT_DATA =
(SID =tg4msql)
)
(HS = OK)#异步数据库
)
检测一下是否生效,运行-cmd, tnsping tg4msql,如果成功,显示解析的时间,能解析到表示成功。
- 用plsqldev软件进去oracle数据库test,然后增加一个SQL运行窗口,添加一个data link ,语句如下:
create public database link JYW
connect to sa identified by "sa123!@#" using
'(DESCRIPTION =
(ADDRESS = (PROTOCOL = tcp)(HOST =192.168.14.3)(PORT =1521))
(CONNECT_DATA = (SID =tg4msql)
)
(HS = ok))’
最后我们可以测试一下了,我们执行以下语句:
select * from Inventory@JYW
参考网址:
http://hi.baidu.com/iguonan/item/30c4d3ad10e4413f020a4d6d
http://space.itpub.net/12199764/viewspace-610434
http://hi.baidu.com/420350501/blog/item/43b8141a9e8c4fe11ad5764f.html
浙公网安备 33010602011771号