做一个项目,要使用到其他远程数据库里面的数据,远程数据库是通过vpn连接的,在plsql里面可以直接访问到远程vpn数据库,但是在我本机建立dblink连接远程vpn数据库时, 就显示“tns超时”或者是“不能解析连接字符串”,要是使用tnsnames.ora配置文件里面的数据库名如“wind”去建立dblink则显示“不能解析”:代码create database link DBL_ORCL connect to WFTOPLM identified by LK72DFG7 using 'WIND',要是直接建立dblink则显示“tns超时”,刚开始以为是权限问题,但是那边已经测试了,在他们局域网可以建立dblink使用,在我本地建立局域网里其他数据库的dblink也可以,但是建立vpn的dblink的时候就显示不行,vpn网页是打开的,也能通过plsql直接访问。第一次在论坛发帖问问题,希望高人能解答,十分感谢。

解决方案 »

  1.   

    vpn就是让你有种特权~  要不然 你直接肯定连接不到服务器啊 ·也就是说  即便你知道密码 用户名  你也连接不上的。要权限啊
      

  2.   

    我现在在我本机是可以通过vpn连接远程数据库 但是那是直接连接 就是在plsql里面直接用户名 密码打开这个远程数据库 但是在我的本地数据库使用dblink 就显示超时 数据库的权限已经开通了 这个权限是数据库权限 还是vpn权限??
      

  3.   

    我的意思是说  你的dblink也应该是 你在连接vpn的情况下进行的。先连上vpn再试验dblink
      

  4.   

    已经连接上了vpn 是通过网页连接的 一直都打开着,在net manager也配置好了, 在plsql里面也能直接打开远程数据库  但是建立dblink就不能连接了 就是最简单的select * from 表名@dblink 就不行 显示超时
      

  5.   

    如果你可以VPN上去就不用DBLINK了。直接连接吧,DBLINK只有在这个数据库需要使用另外一个数据库时才用。如果你本地数据库要使用远程的数据库,VPN上去后本地连接好像受到影响的。记得以前VPN连接上后就不能上网。断开才行。你再试试吧。
      

  6.   

    是一个c#的程序 就是由于源数据库比较大 有一个表上千万的数据 不能直接访问取出放到datatable里面 所以是使用了dblink来直接拷贝到本地数据库