Oracle tnsnames.ora 详解

1 概述

tnsnames.ora
tns:Transparent Network Substrate(透明网络底层)
保存客户端连接 Oracle 时的配置信息,如:ip、端口 等

2 图示

2.1 路径

方式1:帮助 -> 支持信息 -> 信息 -> TNS File

在这里插入图片描述

方式2:帮助 -> 支持信息 -> TNS 名称

在这里插入图片描述

2.2 参数

-- 默认 ORCL,路径在 上述 “TNS 名称” 中
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
-- 添加 DWDB
DWDB = (DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.66)(PORT = 1521))
                     (CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = dwdb)))
               -- 或 (CONNECT_DATA =(SERVER = DEDICATED)(SID = dwdb)))
 
-- 下列信息请根据自身实际情况填写
DWDB : 连接字符的描述 -- 任意,建议和 sid 或 service_name 保持一致
HOST = 192.168.1.66 -- 远程服务器的 ip 地址
PORT = 1521         -- 远程服务器的 端口号
SID 或 SERVICE_NAME

特别说明: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 

2.3 登录

数据库:dwdb(配置的 “连接串” 信息)

在这里插入图片描述

3 扩展

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

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

鱼丸丶粗面

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值