图文深入理解Oracle Network配置管理(一)
- List item
本篇图文深入介绍Oracle Network配置管理。
Oracle Network概述
Oracle Net 服务

Oracle Net 监听程序

<oracle_home>/network/admin/listener.ora
<oracle_home>/network/admin/sqlnet.ora
建立网络连接
要建立客户机或中间层连接,Oracle Net 要求客户机了解下列事项:
• 运行监听程序的主机(Host)
• 监听程序监视的端口(Port)
• 监听程序使用的协议(Protocol)
• 监听程序处理的服务名(Service Name)
建立连接
连接请求从用户或中间层应用程序(以下称为“用户进程”)传递到监听程序(Listener)。
监听程序会接收一个 CONNECT 数据包,之后会检查此CONNECT 数据包请求的 Oracle Net 服务名是否有效?
• 如果没有请求的服务名(例如 tnsping 测试请求),监听程序会确认连接请求,不执行任何其它操作。
• 如果请求的服务名无效,则监听程序会将错误代码传输给该用户进程。
用户会话
• 如果 CONNECT 数据包请求了一个有效的服务名,则监听程序将衍生一个新的进程来处理该连接。此新进程称为“服务器进程”(Server Process)。
• 监听程序会传递初始化信息给服务器进程,包括用户进程的地址信息。并把所有工作都传递到服务器进程处理。
• 服务器进程将检查用户的验证身份证明(通常为用户密码),如果身份证明有效,则创建一个用户会话(Session)。

配置和管理 Oracle Network 的工具
• Enterprise Manager: Home > Listener > Related_Links: Net
Services Administration
• Oracle Net Manager (netmgr)
• Oracle Net Configuration Assistant (netca)
• 命令行工具 (lsnrctl 或 srvctl)
• 网络配置文件:
–listener.ora
– tnsnames.ora
– sqlnet.ora
可以使用 lsnrctl 命令(或通过 OEM)控制 Oracle Net 监听程序。可以使用命令行或 LSNRCTL 提示符发出监听控制程序的命令。
• 命令行语法:
$ lsnrctl <command name>
$ lsnrctl start
$ lsnrctl status
• 提示符语法:
LSNRCTL> <command name>
LSNRCTL> start
LSNRCTL> status
使用 SRVCTL 启动和停止监听程序
如果配置了 Oracle Restart,则应使用 SRVCTL 来管理监听程序。
$ srvctl -h
$ srvctl start listener
$ srvctl stop listener
$ srvctl start listener –l mylistener
$ srvctl status listener
数据库(动态/静态)服务注册
• 动态服务注册:DB 实例会在启动数据库时向默认监听程序自动进行注册,不需要其它的监听程序配置。
• 静态服务注册:为监听程序配置文件添加一个数据库服务列表,监听程序为之提供服务
Oracle Net 命名方法
Oracle Net 支持多种解析连接信息的方法:
• 简便连接命名(EZCONNECT):无需配置,直接使用 TCP/IP 连接字符串(由主机名、可选端口和服务名组成),格式如下:
CONNECT username/password@host[:port][/service_name]
• 本地命名:使用本地 tnsnames.ora 配置文件
• 目录命名:使用符合 LDAP 的集中式目录服务器
• 外部命名:使用 Oracle 支持的第三方服务命名方式,如:
– 网络信息服务 (NIS)
– 分布式计算环境 (DCE) 单元目录服务 (CDS)

简便连接(EZConnect)
• 默认启用此方式
• 不需要进行客户机配置,连接字符串采用以下形式:
<username>/<password>@<hostname>:<listener port>/<service name>
• 仅支持 TCP/IP(无 SSL),默认 port 1521
• 不支持高级连接选项,如:
– 连接时故障转移
– 源路由
– 负载平衡
SQL> CONNECT hr/hr@oracle.example.com:1521/orcl

本地命名
本地命名的好处是:数据库用户仅需要记住一个短别名,而不必记住简便连接所需的长连接字符串。
• 本地已知服务列表存储在以下配置文件中,默认位置在:
<oracle_home>/network/admin/tnsnames.ora
• tnsnames.ora 文件的位置也可以使用 TNS_ADMIN 环境变量指定
• 需要客户机名称解析文件(Hosts 文件)
• 支持所有的 Oracle Net 协议
• 支持高级连接选项,如:
– 连接时故障转移、源路由、负载平衡

目录命名
目录命名的好处是:只需将更新的服务名添加到 LDAP 目录,此服务名便可供用户在连接时使用,无需再到各个客户端修改设定。
• 需要加载了 Oracle Net 名称解析信息的 LDAP:
– Oracle Internet Directory – Microsoft Active Directory Services
• 支持所有的 Oracle Net 协议
• 支持高级连接选项

外部命名方法
• 外部命名类似于目录命名,是使用了受支持的非 Oracle 命名服务,包括:
– 网络信息服务 (NIS) 外部命名
– 分布式计算环境 (DCE) 单元目录服务 (CDS)

测试 Oracle Net 连接
tnsping 实用程序测试 Oracle Net 服务别名:
• 确保客户机与 Oracle Net 监听程序之间的连接
• 不验证所请求的服务是否可用
• 支持简便连接名称解析:
tnsping host01.example.com:1521/orcl
• 支持本地命名和目录命名:
tnsping orcl
用户会话:专用服务器进程(Dedicated Server Processes)

用户会话:共享服务器进程(Shared Server Processes)

不能使用共享服务器的情况
不能使用共享服务器执行某些类型的数据库工作:
• 数据库管理(包括:启动和关闭实例、创建表空间和数据文件等需要由 DBA 执行的任务)
• 备份和恢复操作
• 批处理和批量加载操作
• 必须处理大批数据的数据仓库操作。
配置数据库之间的通信
• 在站点之间发送数据或消息时,需要在双方站点上进行网络配置。
• 必须配置以下项:
– 网络连接(例如 tnsnames.ora)
– 数据库链接(PUBLIC DATABASE LINK )
CREATE DATABASE LINK <remote_global_name>
CONNECT TO <user> IDENTIFIED BY <pwd>
USING '<connect_string_for_remote_db>';
未完待续。
码字不易,宝贵经验分享不易,请各位支持原创,转载注明出处,多多关注作者,后续不定期分享DB基本知识和排障案例及经验、性能调优等。
相关文章:
图文深入理解Oracle Network配置管理(一)
List item 本篇图文深入介绍Oracle Network配置管理。 Oracle Network概述 Oracle Net 服务 Oracle Net 监听程序 <oracle_home>/network/admin/listener.ora <oracle_home>/network/admin/sqlnet.ora建立网络连接 要建立客户机或中间层连接,Oracle…...
leetcode-链表篇3
leetcode-61 给你一个链表的头节点 head ,旋转链表,将链表每个节点向右移动 k 个位置。 示例 1: 输入:head [1,2,3,4,5], k 2 输出:[4,5,1,2,3]示例 2: 输入:head [0,1,2], k 4 输出&#x…...
RAG(Retrieval Augmented Generation)及衍生框架:CRAG、Self-RAG与HyDe的深入探讨
近年来,随着大型语言模型(LLMs)的迅猛发展,我们在寻求更精确、更可靠的语言生成能力上取得了显著进展。其中,检索增强生成(Retrieval-Augmented Generation)作为一种创新方法,极大地…...
C语言介绍
什么是C语言 C programing language 能干什么 Hello world? 如何学C语言 no reading no learning...
损失函数篇 | YOLOv10 更换损失函数之 MPDIoU | 《2023 一种用于高效准确的边界框回归的损失函数》
论文地址:https://arxiv.org/pdf/2307.07662v1.pdf 边界框回归(Bounding Box Regression,BBR)在目标检测和实例分割中得到了广泛应用,是目标定位的重要步骤。然而,对于边界框回归的大多数现有损失函数来说,当预测的边界框与真值边界框具有相同的长宽比,但宽度和高度的…...
WMware安装WMware Tools(Linux~Ubuntu)
1、这里终端里面输入sudo apt upgrade用于更新最新的包 sudo apt upgrade 2、安装 open-vm-tools-desktop 包, Ps:这里是以为我已经安装好了。 udo apt install open-vm-tools-desktop -y3、最后重启就大功告成了 reboot 4、测试是否成功:…...
SLAM ORB-SLAM2(30)关键帧跟踪
SLAM ORB-SLAM2(30)关键帧跟踪 1. 关键帧跟踪2. TrackReferenceKeyFrame2.1. 将当前普通帧的描述子转化为BoW向量2.2. 通过词袋BoW加速当前帧与参考帧之间的特征点匹配2.3. 将上一帧的位姿态作为当前帧位姿的初始值2.4. 通过优化3D-2D的重投影误差来获得位姿2.5. 剔除优化后的…...
k8s 部署 prometheus
创建namespace prometheus-namespace.yaml apiVersion: v1 kind: Namespace metadata:name: ns-prometheus拉取镜像 docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/quay.io/prometheus/prometheus:v2.54.0prometheus配置文件configmap prometheus-configmap.yaml …...
使用VBA快速生成Excel工作表非连续列图片快照
Excel中示例数据如下图所示。 现在需要拷贝A2:A15,D2:D15,J2:J15,L2:L15,R2:R15为图片,然后粘贴到A18单元格,如下图所示。 大家都知道VBA中Range对象有CopyPicture方法可以拷贝为图片,但是如果Range对象为非连续区域,那么将产生10…...
解决GitHub下载速度慢
解决GitHub下载速度慢 方法一:使用git clone 地址 --depth 1来下载 depth 1 表示只科隆最新的一次提交,也就是默认主分支,而不是完整地克隆整个代码仓库,这样可以减少下载地数据,加快克隆操作 可以用git clone 地址 …...
【机器学习(五)】分类和回归任务-AdaBoost算法
文章目录 一、算法概念一、算法原理(一)分类算法基本思路1、训练集和权重初始化2、弱分类器的加权误差3、弱分类器的权重4、Adaboost 分类损失函数5、样本权重更新6、AdaBoost 的强分类器 (二)回归算法基本思路1、最大误差的计算2…...
【设计模式-模板】
定义 模板方法模式是一种行为设计模式,它在一个方法中定义了一个算法的骨架,并将一些步骤延迟到子类中实现。通过这种方式,模板方法允许子类在不改变算法结构的情况下重新定义算法中的某些特定步骤。 UML图 组成角色 AbstractClass&#x…...
小程序原生-列表渲染
1. 列表渲染的基础用法 <!--渲染数组列表--> <view wx:for"{{numList}}" wx:key"*this" > 序号:{{index}} - 元素:{{item}}</view> <!--渲染对象属性--> <view wx:for"{{userInfo}}" wx:key&q…...
JAVA认识异常
目录 1. 异常的概念与体系结构 1.1 异常的概念 1. 算术异常 2. 数组越界异常 3. 空指针异常 1.2 异常的分类 1. 编译时异常 2. 运行时异常 2.1 异常的处理 防御式编程 2.2 异常的捕获 2.3.1 异常声明throws 2.3.2 try-catch捕获并处理 2.3.3 finally 总结 1. 异常…...
2024年10月计划(工作为主,Ue5独立游戏为辅,)
我发现一点,就是工作很忙,比如中秋也在远程加班,周末有时也远程加班,国庆节甚至也差点去甲方工作。甚至有可能驻场。可见,小公司确实不能去。 好在,9月份时,通过渲染 除了上班时间外࿰…...
并发、并行和异步设计
译者个人领悟,一家之言: 并发和并行确实可以明确区分出来,因为cpu的速度非常快,在执行一个任务时经常要等其他组件,比如网络,磁盘等,如果一直串行等待这样就会造成很大的浪费. (就类似于烧水的同时,可以切菜,不用等烧水完成了才去切菜,我可以烧一会水,火生起来了水壶放上了,随…...
求职Leetcode题目(12)
1.只出现一次的数字 异或运算满足交换律 a⊕bb⊕a ,即以上运算结果与 nums 的元素顺序无关。代码如下: class Solution {public int singleNumber(int[] nums) {int ans 0;for(int num:nums){ans^num;}return ans;} } 2.只出现一次的数字II 这是今天滴…...
【YashanDB知识库】如何配置jdbc驱动使getDatabaseProductName()返回Oracle
本文转自YashanDB官网,具体内容请见https://www.yashandb.com/newsinfo/7352676.html?templateId1718516 问题现象 某些三方件,例如 工作流引擎activiti,暂未适配yashandb,使用中会出现如下异常: 问题的风险及影响 …...
Hadoop三大组件之MapReduce(一)
Hadoop之MapReduce 1. MapReduce是什么 MapReduce是一个分布式运算程序的编程框架,旨在帮助用户开发基于Hadoop的数据分析应用。它的核心功能是将用户编写的业务逻辑代码与自带的默认组件整合,形成一个完整的分布式运算程序,并并发运行在一…...
SQL Server 分页查询的学习文章
SQL Server 分页查询的学习文章 一、SQL Server 分页查询1. 什么是分页查询?2. SQL Server 的分页查询方法2.1 使用 OFFSET 和 FETCH NEXT语法:示例: 2.2 使用 ROW_NUMBER() 方法语法:示例: 2.3 性能考虑3. 总结 一、S…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比
目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec? IPsec VPN 5.1 IPsec传输模式(Transport Mode) 5.2 IPsec隧道模式(Tunne…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...
佰力博科技与您探讨热释电测量的几种方法
热释电的测量主要涉及热释电系数的测定,这是表征热释电材料性能的重要参数。热释电系数的测量方法主要包括静态法、动态法和积分电荷法。其中,积分电荷法最为常用,其原理是通过测量在电容器上积累的热释电电荷,从而确定热释电系数…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...
C++:多态机制详解
目录 一. 多态的概念 1.静态多态(编译时多态) 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1).协变 2).析构函数的重写 5.override 和 final关键字 1&#…...
逻辑回归暴力训练预测金融欺诈
简述 「使用逻辑回归暴力预测金融欺诈,并不断增加特征维度持续测试」的做法,体现了一种逐步建模与迭代验证的实验思路,在金融欺诈检测中非常有价值,本文作为一篇回顾性记录了早年间公司给某行做反欺诈预测用到的技术和思路。百度…...
(一)单例模式
一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
