Oracle(2-2)Oracle Net Architecture

文章目录

  • 一、基础知识
    • 1、Oracle Net Connections Oracle网络连接
    • 2、C/S Application Connection C/S应用程序连接
    • 3、OSI Communication Layers OSI通信层
    • 4、Oracle Protocol Support Oracle协议支持
    • 5、B/S Application Connections B/S应用程序连接
    • 6、TwoTypes JDBC Drivers 两种JDBC连接方式
    • 7、Web Connection Using HTTP web浏览器使用HTTP连接Oracle
    • 8、Concepts & Terminology 概念和术语介绍
    • 9、连接三步走的过程
    • 10、Net Configuration Models 网络配置模型
    • 11、Overview of Naming Methods 命名方法概述
    • 12、Configuration Files Oracle配置文件
    • 13、Three Key Parameters 连接的三个关键参数
  • 二、基础操作
    • 1、监听程序的启动
    • 2、查看Oracle服务名字的方法

在这里插入图片描述

Oracle Net Architecture Oracle Net体系结构
目标:

  • 解释Oracle网栈通信架构的关键组件
  • 解释Oracle网在客户端-服务器连接中的作用
  • 描述如何通过Oracle网络产品建立Web客户端连接

一、基础知识

1、Oracle Net Connections Oracle网络连接

  • Oracle网用于建立网络上的应用程序之间的连接,这取决于以下几点:
    • 网络配置
    • 节点的位置(Oracle数据服务器的位置)
    • 应用程序
    • 网络协议
  • 连接类型可以是:
    • 客户端一服务器应用程序
    • Java应用程序
    • Web客户端应用程序

2、C/S Application Connection C/S应用程序连接

在这里插入图片描述

3、OSI Communication Layers OSI通信层

在这里插入图片描述

  • 其中TCP层在运输层,IP在网络层

4、Oracle Protocol Support Oracle协议支持

  • TCP/IP (主流的协议)
  • TCP/IP with SSL (具有SSL加密,更加安全)
  • Named Pipes (微软开发专门支持在局域网的一种协议)
  • SDP(性能高于TCP/IP,用于高端的网络要求)
    • SDP 套接字目录协议 (SDP) 是Infiniband网络对等点之间的行业标准有线协议。当SDP在Infiniband网络上使用时,它通过消除数据的中间复制和将大部分消息传递负担从CPU转移到网络硬件上来减少TCP/IP的开销。

5、B/S Application Connections B/S应用程序连接

Web浏览器(这里指的javaweb,如果使用的是C/C++可以使用OCI连接)可以通过以下方式连接到Oracle服务器:

  • 将应用程序Web服务器用作中间层,该中间层配置有以下任一项:
    • JDBC Oracle Call Interface (OCl) driver
    • Thin JDBC driver
  • 使用HTTP直接连接到Oracle服务器(这种方法使用的比较少)

6、TwoTypes JDBC Drivers 两种JDBC连接方式

Oracle Java数据库连接 (JDBC) 驱动程序提供Java应用程序访问甲骨文数据库。甲骨文提供了两个JDBC驱动程序:

  • JDBC OCI Driver驱动程序是一个2级JDBC驱动程序,用于客户端/服务器Java应用程序。JDBC OCI驱动程序将JDBC调用转换为对OCI的调用,然后通过Oracle网络发送到Oracle数据库服务
    器。
  • JDBC Thin Driver驱动程序是Java applet使用的4级驱动程序。JDBC Thin驱动程序通过Java套接字建立到Oracle数据库服务器的直接连接。TTC和Oracle Net的轻量级实现有助于对数据库的访问。

以下是两种连接方式的工作流程图:
在这里插入图片描述

7、Web Connection Using HTTP web浏览器使用HTTP连接Oracle

在这里插入图片描述

以下是HTTP连接的工作流程图:
在这里插入图片描述

8、Concepts & Terminology 概念和术语介绍

  • Database services 数据库服务
  • Service Name 服务名字
    • 数据库的逻辑表示
    • 将数据库呈现给客户端的方式
  • Connect Descriptor 连接描述
    • 数据库的位置
    • 数据库服务的名称
  • Listener Oracle监听
    • 接收客户端连接请求
    • 将请求传递给数据库服务器
  • Service Registration 服务注册
    • 数据库向侦听器注册信息
    • 每个实例可用的服务处理程序
  • Service Handlers 服务器管理员
    • 连接点 (客户端和服务器的连接点)
    • 调度器或专用服务器

Service Registration 服务注册流程
在这里插入图片描述
一旦客户机请求到达侦听器,侦听器将选择适当的service handler来服务客户机的请求,并将客户机的请求转发给它。侦听器确定是否可以通过service registration使用数据库服务及其服务处理程序。在服务注册期间,PMON进程 (一个实例后台进程) 为侦听器提供以下信息:

  • 数据库提供的数据库服务的名称
  • 与服务关联的实例的名称及其当前和最大负载
  • 实例可用的服务处理程序(调度程序和专用服务器),包括它们的类型、协议地址以及当前和最大负载

此信息使侦听器能够正确地引导客户端的请求

9、连接三步走的过程

在这里插入图片描述

  • 需要先启动Listener
  • 然后启动数据库实例
  • 数据库实例向Listener注册服务
  • 然后客户端与Listener建立连接服务
  • 最后直接将客户端和服务端连接在一起,能够直接进行双向通信

10、Net Configuration Models 网络配置模型

  • 本地化管理
    • 网络中每台计算机上有一个本地配置文件
  • 集中化管理
    • 符合LDAP的目录服务器(适合大规模的配置)
    • Oracle命名服务器

11、Overview of Naming Methods 命名方法概述

  • 当尝试连接到数据库服务时,客户端应用程序使用命名方法将连接标识符解析为连接描述符。我们要连接数据库需要知道数据库服务的ip地址和端口号
  • Oracle网络提供了五种命名解析方法:
    • Host naming (基于操作系统的解析方法)
    • Local naming (使用tnsnames.ora配置文件)(最常用)适合小规模
    • 使用目录服务 (最常用)适合大规模
    • Oracle服务名称
    • 第三方提供的信息服务

12、Configuration Files Oracle配置文件

在这里插入图片描述

  • 其中最重要的的就是tnsnames.oralistener.ora

配置文件的位置位于:$ORACLE_HOME/network/admin目录下
我们可以切换到这里进行查看:

cd $ORACLE_HOME/network/admin

在这里插入图片描述
我们现在查看一下tnsnames.ora

cat tnsnames.ora

在这里插入图片描述

  • 我们能够看出它的协议是TCP,HOST是本机(如果是远程连接的话会显示ip地址),端口号是1521,服务名是orcl
  • 注意做上方第一个红框的ORCL,在我们连接数据库的时候就可以使用这个
    • 语法举例:sqlplus system/123@orcl 连接我们使用sqlplus,用户名是system(这个可以是其他的),密码是123(要连接的用户的用户名),@符号后边跟着图中坐上第一个红方框中的内容就可以完成连接
    • 在这里插入图片描述
    • 连接后会有两个版本号,第一个是连接机器上的版本号,第二个是你连接到的Oracle的版本号

13、Three Key Parameters 连接的三个关键参数

  • 连接描述符:

    • 数据库的位置
    • 数据库服务的名称
  • 三个关键参数:

    • IP地址
    • 端口号
    • 服务名称

二、基础操作

1、监听程序的启动

在客户端进行远程连接的时候需要启动监听程序:
使用ps -ef | grep oracle来查看监听程序是否启动
在这里插入图片描述
如果没发现红框内部这一条的话说明监听是没有启动的,我们需要启动
启动监听的命令:lsnrctl start
只有启动监听我们外部才能进行连接,当然有许多人是在自己本地执行命令进行连接的,再本地进行连接监听不启动也能够用连接到数据库实例。

  • 对于本地连接,您不需要启动监听。您可以直接连接到本地数据库实例,而无需通过监听器。这对于开发和测试来说非常方便。

但是对于非本地连接,当您要连接到一个数据库实例时,如果监听没有运行,那么PMON(实例后台进程)将无法注册服务。因此,如果不启动监听,无论是通过SQLPLUS还是其他方式,都不可能连接到数据库。

2、查看Oracle服务名字的方法

登录数据库执行语句:show parameter service

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/140151.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

半导体电导率受哪些因素影响?如何正确测量半导体电导率?

半导体的电导率直接影响着半导体器件的工作状态,是半导体材料的重要参数。因此,半导体电导率的检测也是半导体设计和制造过程中的关键环节,确保半导体器件的性能、稳定性和可靠性。 什么是半导体电导率? 半导体电导率是指导电流在单位时间和…

保姆级Decimal.js的使用(如何解决js精度问题)

精度问题控制台图样 如果银行的业务你这样做,不知道要损失多少钱,这样是不行的,计算的不准确是需要背锅的,我们给后端去做吧,其实我们前端也是可以做的,引入Decimal.js 01.引入Decimal.js decimal.js是使用…

2023.11.14-hive之表操作练习和文件导入练习

目录 需求1.数据库基本操作 需求2. 默认分隔符案例 需求1.数据库基本操作 -- 1.创建数据库test_sql,cs1,cs2,cs3 create database test_sql; create database cs1; create database cs2; create database cs3; -- 2.1删除数据库cs2 drop database cs2; -- 2.2在cs3库中创建…

2023NewStarCTF

目录 一、阳光开朗大男孩 二、大怨种 三、2-分析 四、键盘侠 五、滴滴滴 六、Include? 七、medium_sql 八、POP Gadget 九、OtenkiGirl 一、阳光开朗大男孩 1.题目给出了secret.txt和flag.txt两个文件,secret.txt内容如下: 法治自由公正爱国…

MT8788核心板主要参数介绍_联发科MTK安卓核心板智能模块

MT8788核心板是一款功能强大的4G全网通安卓智能模块,具有超高性能和低功耗特点。该模块采用联发科AIOT芯片平台。 MT8788核心板搭载了12nm制程的四个Cortex-A73和四个Cortex-A53处理器,最高主频可达2.0GHZ。它还配备了4GB64GB(2GB16GB、3GB32GB)的内存&a…

新生儿母乳过敏:原因、科普和注意事项

引言: 母乳过敏是一种较为罕见但可能令家长担忧的现象。母亲通常认为母乳是新生儿最安全、最适合的食物,然而有时候宝宝可能对母乳中的某些成分产生过敏反应。本文将科普新生儿母乳过敏的原因,提供相关信息,并为父母和监护人提供…

JTS: 20 InteriorPoint 内部中心点

文章目录 版本代码 版本 org.locationtech.jts:jts-core:1.19.0 链接: github 代码 package pers.stu.algorithm;import org.locationtech.jts.algorithm.InteriorPoint; import org.locationtech.jts.geom.Coordinate; import org.locationtech.jts.geom.GeometryFactory; i…

OpenCV踩坑笔记使用笔记入门笔记整合SpringBoot笔记大全

springboot开启摄像头抓拍照片并上传实现&问题记录 NotAllowedErrot: 请求的媒体源不能使用,以下情况会返回该错误: 当前页面内容不安全,没有使用HTTPS没有通过用户授权NotFoundError: 没有找到指定的媒体通道NoReadableError: 访问硬件设备出错Ov…

CTFSHOW -SQL 注入

重新来做一遍 争取不看wp web171 基本联合注入 拿到题目我们已经知道了是sql注入 所以我们可以直接开始 第一题 不会难道哪里去 所以我们直接进行注入即可 1 and 12-- 1 and 11-- 实现闭合 -1unionselect1,2,3--%2b 查看字段数-1unionselect1,database(),3--%2b 查看数据…

初始MySQL(三)(合计函数,分组函数,字符串相关函数,数字相关函数,时间日期函数,加密函数,流程控制函数)

目录 合计/统计函数 count 返回行的总数 sum 合计函数 - avg group by 字符串相关函数 数学相关函数 时间日期相关函数 加密函数 流程控制函数 合计/统计函数 count 返回行的总数 Select count(*) | count (列名) from tablename [WHERE where_definition] #演…

答题猜歌闯关流量主小程序开发

视频互动答题是一款微信小程序游戏,以视频互动的形式进行答题,内容涵盖广泛,包括天文地理、生活百科、历史文化、综艺娱乐、数理知识等。 用户可以通过答题获得红包兑换余额,并有机会赢得豪华奖品。 设计风格:设计风格…

数据结构与算法之美学习笔记:18 | 散列表(上):Word文档中的单词拼写检查功能是如何实现的?

目录 前言散列思想散列函数散列冲突解答开篇 前言 本节课程思维导图: Word 的单词拼写检查功能,虽然很小但却非常实用。你有没有想过,这个功能是如何实现的呢?其实啊,一点儿都不难。只要你学完今天的内容,…

EXCEL——计算数据分散程度的相关函数

一、PERCENTIL函数 1.函数介绍 通常用来返回数据集给定百分点上的值。 2.函数解读 函数公式: PERCENTILE(数据, 百分点) 参数释义: 数据(必填):待处理的数组或数据区域。 百分点(必填)&…

mapboxGL中的底图切换

概述 底图切换,这么简单的功能还要写一篇文章?值得的,为什么这么说呢?因为mapboxGL的矢量底图有上百个,不同的底图用的样式、图层的名称、图层的内容、字体库、图标库都不一样,尤其是当地图上已经叠加了很…

2022年06月 Python(五级)真题解析#中国电子学会#全国青少年软件编程等级考试

Python等级考试(1~6级)全部真题・点这里 一、单选题(共25题,每题2分,共50分) 第1题 Python中 print(“八进制{: o}”.format(12)) 正确的输出结果是?( ) A: 八进制:O B: 八进制:O14 C: 八进制14O D: 八进制14 答案:D 字符串的format()格式。 第2题 下列的程…

计算机组成原理之概述

概述 计组主要讲的是计算机的硬件实现方式。 机器字长 比如8080处理器,如果想处理16位数的整数运算,就需要执行两次。 可见,机器字长会影响到数据的处理速度。 计算机硬件的基本组成 早期的冯诺依曼机 冯诺依曼提出了“存储程序”的概念&…

汽车FMCW毫米波雷达信号处理流程(推荐---基础详细---清楚的讲解了雷达的过程---强烈推荐)

毫米波雷达在进行多目标检测时,TX发射一个Chirp,在不同距离下RX会接收到多个反射Chirp信号(仅以单个chirp为例)。 雷达通过接收不同物体的发射信号,并转为IF信号,利用傅里叶变换将产生一个具有不同的分离峰…

SQL-----STUDENT

【学生信息表】 【宿舍信息表】 【宿舍分配表】 为了相互关联,我们需要在表中添加外键。在宿舍分配表中添加用于关联学生信息表的外键 student_id,以及用于关联宿舍信息表的外键 dormitory_id; sql代码 -- 创建学生信息表 CREATE TABLE st…

python画折线图 一张图上三条折线 设置折线marker chatgpt画折线图的提示词

chatgpt提示词 用python写一段代码,该代码的功能是:画一个折线图,该折线图x轴的标题是面积,y轴的标题是房价。该图上有三条折线,分别代表深圳,广州,郑州。这三条折线的颜色分别为红&#xff0c…

接口自动化测试流程、工具及其实践!

01、接口自动化测试简介 接口自动化测试是指通过编写脚本或使用自动化工具,对软件系统的接口进行测试的过程。接口测试是软件测试中的一种重要测试类型,主要用于验证系统组件之间的通信和数据交换是否正常。通过接口自动化测试可以快速发现接口中的问题…