注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

还东国的博客

行之苟有恒,久久自芬芳

 
 
 

日志

 
 

Oracle11g遇到的问题之四远程连接和对问题二的补充  

2016-03-01 20:31:30|  分类: 环境安装使用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
Oracle11g遇到的问题之四远程连接和对问题二的补充

今天回来,同事说把Oracle的远程连接给配置好了,非常高兴。这里先提一下在问题二中的配置,记住一定要按Readme中的路径来安排这个64位的PLSQL:
首先是环境变量配置:

    NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK      这个指定的用处不大,这里没指定。

    TNS_ADMIN = D:\install\PLSQL\instantclient_11_2    //其实只是配置了这个,这个的目的是强制指定tsanmes.ora使用哪个,具体的说明见下面。

其次是PL/SQL Developer 环境设置

打开:工具 -> 首选项 -> 连接

        Oracle主目录名  = D:\install\PLSQL\instantclient_11_2

        OCI库 = D:\install\PLSQL\instantclient_11_2\oci.dll 

最后是配置Ora文件:
    tnsnames.ora 文件需要手动创建并进行相应的设置:
# tnsnames.ora Network Configuration File: D:\install\PLSQL\instantclient_11_2\tnsnames.ora
# Generated by Oracle configuration tools.

ORACLE11G =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.10.250)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
#增加了下面的部分就可以远程访问了。因为上面的环境变量里强制指定了使用的OAR文件:
orcl = 
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.10.250)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
好,现在再看一下,Oracle本身自带的tsnames.ora的内容:
# tnsnames.ora Network Configuration File: D:\app\Administrator\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

CBCDATA =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = CBCData.irisking)
    )
  )

LISTENER_CBCDATA =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


DATACBC =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = DataCBC.cbc)
    )
  )

LISTENER_DATACBC =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (CONNECT_DATA =
      (SID = CLRExtProc)
      (PRESENTATION = RO)
    )
  )

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

ORACLE11G =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.10.250)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

这样就有问题来了,这么多的ora文件,到底用哪个呢,上面的强制指定是为什么呢?看下面的说明。
可以看一下目前使用的ora 配置位置:
tnsping "以前的数据库名称"  看一下读的是哪个配置文件
在PLSQL Developer的帮助 --> 关于, 看一下PLSQL读的是哪个TNSNAME
plsql会按如下顺序查找TNS文件:
1,$HOME/.tnsnames.ora
2,$TNS_ADMIN/tnsnames.ora           强制指定就是在这里。
3,TNS_NAMES lookup key in the registry
4,/etc/tnsnames.ora ( non-windows )
5,$ORACLE_HOME/network/admin/tnsnames.ora
6,LocalMachine\SOFTWARE\ORACLE\ORACLE_HOME_KEY
7,LocalMachine\SOFTWARE\ORACLE\ORACLE_HOME
如果sqldeveloper没有找到合适的TNS文件,可以这样来给它设定需要的TNS文件:
1)配置环境变量TNS_ADMIN,让其指向TNS文件所在的目录,如:D:\Program Files\sqldeveloper;
2)在CMD中查看环境变量值是否正确,可使用命令:echo %TNS_ADMIN%,并重启sqldeveloper;
3)在sqldeveloper中,点击创建新链接按钮,Connection Type选择 TNS,Network Alias 中的下拉框中会显示出所有定义在TNS文件中的所有条目。
今天同事改了后面这个ora文件,又改相关的listen.ora文件,都没有作用,其原因就是因为已经在环境变量指定死了使用PLSQL中的tsnames.ora文件,后来又在这个文件中增加了:
orcl = 
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.2.10.250)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
就OK了。
也正好就验证了强制指定的环境变量的作用。同事还是很给力的。
  评论这张
 
阅读(187)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017