ORACLE NET解决网络环境下的两种数据库应用结构。
1)客户机/服务器结构(C/S)
客户机负责表现数据,而数据库服务器则专用于支持查询,如下图
客户端发起连接请求时,请求的数据通过自顶向下的协议栈处理,然后利用网络协议如TCP/IP发送到数据库服务器,数据库服务器端对收到的数据进行自底向上的协议栈的处理。利用相同的过程,ORACLE 服务器将处理结果发给客户端。
1,客户端应用(例如SQL*PLUS)调用OCI(ORACLE CALL INTERFACE)发起请求,OCI是ORACLE的软件组件,它被客户端所调用,是客户机应用请求和数据库服务器可以理解的SQL命令的桥梁。相当于OSI模型的应用层。
2, TWO TASK COMMON(简称TTC)提供了客户端服务器端之间字符集和数据类型的转换。相当于OSI模型的表示层。
3, ORACLE NET FOUNDATION 层负责建立和维持ORACLE客户端和服务器端之间的会话连接,相当于OSI模型的会话层。
4, ORACLE PROTOCOL SUPPORT层负责将ORACLE NET的功能与工业标准的协议如TCP/IP或命令管道(named pipe)等进行映射。
5, OPI(ORACLE PROGRAMING INTERFACE)是服务器端调用的接口,与客户端调用的OCI功能上对应。
2)瘦客户机结构(B/S)
“瘦客户机”结构,也称为三层体系结构
客户机的程序 [脚本程序文件(C#,java)] 变得很小,它被放置在与数据库服务器分开的服务器上,通过在Web Server容器(IIS、Tomcat)中执行来访问Oracle服务器,如下图