当前位置:   article > 正文

Oracle 监听文件详解(tnsnames.ora)_oracle监听文件

oracle监听文件

文章目录

1 概述

1. 作用
   (1) 配置客户端连接 Oracle 时配置的参数信息,如:主机ip,端口等
   (2) 配置后,可 '简化并隐藏' 参数信息,如下图所示
2. tns:Transparent Network Substrate(透明网络底层)
   (1) 无论底层的网络层用什么协议对于上层的应用层都是 '透明的'
   (2) 即说上层的应用层 '不用关心' 底层的网络层使用了什么协议
   (3) 即上层的应用层使用的统一调用接口已经 '屏蔽' 了不同协议给调用带来的差异了 
3. tnsnames.ora 路径 -- pl/sql
   (1) 查询:帮助 -> 支持信息 -> 信息 -> TNS File
   (2) 参考:C:\app\Administrator\product\11.2.0\client_1\network\admin

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

登录图示:“数据库” 中已包含登录的链接串
在这里插入图片描述

2 示例

DWDB1 = (DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.66)(PORT = 1521))
                      (CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = dwdb1)))
                -- 或 (CONNECT_DATA =(SERVER = DEDICATED)(SID = dwdb1))) 
'说明: 替换下列字符即可(按自身实际填写)'
DWDB1 : 连接字符的描述 -- 任意,建议和 sid 或 service_name 保持一致
HOST = 192.168.1.66 -- 远程服务器的 ip 地址
PORT = 1521         -- 远程服务器的 端口号
SID 或 SERVICE_NAME

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

特别说明:sid 和 service_name

结论:'service_name' 可以作为数据库的 '唯一标识',而 'sid' 并不一定
     (故,推荐使用 'service_name',避免数据库向 '多实例数据库' 迁移时连不上数据库)     
sid,即 '实例级的名字'
    在单实例数据库中可以 '唯一标识' 一个数据库,
    在多实例数据库中(RAC)中,一个数据库可以由多个实例对应,此时就不能 '唯一标识' 一个数据库    
service_name,即 '数据库级的名字',可以有多个,任取一个均可   
    为了 '多实例数据库中' sid 无法 '唯一标识' 一个数据库的问题,Oracle 在 8i中,
    推出了 service_name 用来 '唯一标识' 一个数据库
查询:
select t.instance_name from v$instance t; -- 查询 sid
> show parameter service_names -- 命令,展示 service_names 

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

3 扩展

pl/sql develpler:帮助 -> 支持信息 -> TNS 名称(拖到最下面):即可看到配置的 tns 信息

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/545533
推荐阅读
相关标签
  

闽ICP备14008679号