用户与 Oracle DB 交互具体过程
与 Oracle DB 交互
以下的演示样例从最主要的层面描写叙述 Oracle DB 操作。该演示样例说明了一种 Oracle DB 配置,在该配置中,用户和关联server进程执行于通过网络连接的不同计算机上。
1. 在安装了 Oracle DB 的节点(通常称为“主机”或“数据库server”)上启动了一个实例。
2. 用户启动一个应用程序,该应用程序衍生了一个用户进程。该应用程序尝试建立一个与server的连接(此连接可能是本地连接、客户机/server连接或来自中间层的三层连接)。
3. server执行具有对应 Oracle Net Services 处理程序的监听程序。监听程序检測到应用程序发出的连接请求,并创建一个代表用户进程的专用server进程。
4. 用户执行一条 DML 类型的 SQL 语句并提交事务处理。比如,用户更改表中的客户地址并提交更改。
5. server进程接收该语句,并检查共享池(一个 SGA 组件)中是否有包括同样 SQL 语句的共享 SQL 区域。假设找到共享 SQL 区域,server进程将检查用户对于所请求数据的訪问权限,而且使用现有的共享 SQL 区域处理该语句。假设未找到共享 SQL 区域,则为该语句分配一个新的共享 SQL 区域,以便对该语句进行语法分析和处理。
6. server进程从实际数据文件(表)或数据库缓冲区快速缓存中存储的值中检索不论什么必需的数据值。
7. server进程改动 SGA 中的数据。由于提交了事务处理,所以日志写进程 (LGWR) 会马上将该事务处理记录到重做日志文件里。数据库写进程 (DBWn) 会待运行效率高时将改动后的块永久写入磁盘。
8. 假设事务处理成功,server进程将通过网络向应用程序发送一条消息。假设事务处理不成功,则传送一条错误消息。
9. 在整个过程中,其他后台进程同一时候在执行,用于监视是否有须要干预的情况。此外,数据库server管理其他用户的事务处理,并防止在请求同样数据的事务处理之间发生争用。
用户与 Oracle DB 交互具体过程的更多相关文章
- 普通用户登录Oracle DB Control
使用 sys 或者 system 用户登录 Oracle DB Control 是没有问题的. 但是,如果是普通的用户需要登录Oracle DB Control,建表或者视图之类的, 则需要授权 SE ...
- Oracle DB 存储增强
• 设置Automatic Storage Management (ASM) 快速镜像 再同步 • 使用ASM 首选镜像读取 • 了解可伸缩性和性能增强 • 设置ASM 磁盘组属性 • 使用SYSA ...
- Oracle DB管理内存
• 描述SGA 中的内存组件• 实施自动内存管理• 手动配置SGA 参数• 配置自动PGA 内存管理 内存管理:概览DBA 必须将内存管理视为其工作中至关重要的部分,因为:• 可用内存空间量有限• ...
- Oracle DB 移动数据
描述移动数据的方式 • 创建和使用目录对象 • 使用SQL*Loader 加载非Oracle DB(或用户文件)中的数据 • 使用外部表并通过与平台无关的文件移动数据 • 说明Oracle 数据泵的 ...
- Oracle DB 使用调度程序自动执行任务
• 使用调度程序来简化管理任务 • 创建作业.程序和调度 • 监视作业执行 • 使用基于时间或基于事件的调度来执行调度程序作业 • 描述窗口.窗口组.作业类和使用者组的用途 • 使用电子邮件通知 • ...
- Oracle DB 管理数据库的空间
• 描述4 KB 扇区磁盘的概念及使用 • 使用可移动表空间 • 描述可移动表空间的概念 数据库存储 数据库存储 数据库包括物理结构和逻辑结构.由于物理结构和逻辑结构是分开的,因此管理数据的物 理存储 ...
- Oracle DB 执行表空间时间点恢复
• 列出在执行表空间时间点恢复(TSPITR) 时会发生的操作 • 阐释TSPITR 使用的术语的定义 • 确定适合将TSPITR 用作解决方案的情况 • 确定时间点恢复的正确目标时间 • 确定不能使 ...
- Oracle DB 备份和恢复的概念
• 确定Oracle DB 中可能发生的故障类型 • 说明优化实例恢复的方法 • 说明检查点.重做日志文件和归档日志文件的重要性 • 配置快速恢复区 • 配置ARCHIVELOG模式 部分工作内容 ...
- Oracle DB 使用RMAN恢复目录
• 对恢复目录和RMAN 资料档案库控制文件的使用进行比较• 创建和配置恢复目录• 在恢复目录中注册数据库• 同步恢复目录• 使用RMAN 存储脚本• 备份恢复目录• 创建虚拟专用目录 RMAN 资料 ...
随机推荐
- String[]和ArrayList和LinkedList区别
String[]和ArrayList和LinkedList区别 参考文档如下: http://www.blogjava.net/flysky19/articles/92775.html http:// ...
- fastUtils学习
比传统java集合工具类速度更快 google的guava也新增了java容器新的功能,功能更加强大,参考文档:http://www.ibm.com/developerworks/cn/java/j- ...
- 富文本编辑器CKEDITOR的使用配置(问题注解)
CKEDITOR是一款非常轻便的富文本编辑器,如上图:参考网上的使用方法,我以.net为例,在aspx页面使用, 准备工作:首先要下载控件包,将解压后的整个文件夹添加到项目根目录. 第一步:引用js, ...
- 浅谈PHP代码设计结构
浅谈PHP代码设计结构 您的评价: 还行 收藏该经验 coding多年,各种代码日夜相伴,如何跟代码友好的相处,不光成为职业生涯的一种回应,也是编写者功力的直接显露. 如何看 ...
- exp导出出现:ORA-00904: "POLTYP": invalid identifier
相关文章: <exp导出出现:ORA-00904: : invalid identifier>:http://blog.itpub.net/23135684/viewspace-13 ...
- iOS9.3 Could not find Developer Disk Image 真机调试错误解决办法
昨天手机系统升级9.3,到了公司真机测试的时候发现Xcode(7.2.1)报错:Could not find Developer Disk Image , 这是因为我的Xcode7.2中还没有支持9. ...
- angularjs中ng-attr的用法
<!DOCTYPE html> <html lang="zh-CN" ng-app="app"> <head> <me ...
- CSS 解决<td>里面内容太多把表格弄变形的原因,设置 自动换行。
1 < style="word-break:break-all"> 例如div宽200px,它的内容就会到200px自动换行,如果该行末端有个英文单词很长(congra ...
- 你好,C++(22) 排排坐,吃果果——4.3.3 for循环:某个范围内…每个都…
4.3.3 for循环:某个范围内…每个都… 既然while语句和do…while…语句都已经可以满足我们表达循环现象的需要,那为什么C++还要专门提供for语句来表达循环现象呢?在现实世界中,常常 ...
- jquery实现定时调度(倒计时)
工作需要实现了倒计时的脚本,代码如下: /** * 倒计时 * @param infoId :信息显示的id 最好是用span包裹 * @param callback:倒计时结算后的回调 */ fun ...