所谓Oracle外部文件外部文件,意味着这些文件从严格意义上来讲并不属于Oracle数据库的一部分。Oracle外部文件也就是属Oracle物理存储结构的一部分,属于外面嵌入到Oracle数据库内部的一部分文件。Oracle外部文件分为以下五个部分:

1、控制文件:

控制文件虽小,但作用重大,它包含指向数据库其余部分的指针(包括重做日志文件,数据文件,归档日志文件等的位置),存储重要的序列号和时间戳,存储RMAN备份的详细信息。控制文件一旦受损,那实例会立马终止,一般对数据文件的保护采用多路复用机制,就是冗余多份在不同物理位置。

2、重做日志文件

重做日志文件的作用在讲解内存和进程结构的时候有提到过,重做日志按时间顺序存储应用于数据库的一连串的变更向量(包含联机重做日志文件和归档日志文件)。由SMON在数据库启动时自动执行的实例恢复 和 磁盘损坏所要求的提取备份恢复都会应用到重做日志进行相应的数据恢复

重做日志文件也建议进行多路复用,一个数据库至少要有两组重做日志文件。一组供LGWR进行写入,日志文件是固定大小,业务高峰期会很快写满,写满之后会切换到第二组上,在配置为归档模式的数据库中,这时由归档进程(ARCn)开始将第一组的内容进行归档备份,如此循环地进行写入和归档。需要注意的是,在归档进程还未对当前组的日志归档完毕前,是不允许LGWR对其进行重写的。

3、数据文件

数据文件存储着实际的数据,DBWn会将数据库缓冲区中的内容写入到这类文件中去,数据文件的大小和数量是不受限制的。Oracle从10g开始,创建一个数据库至少需要两个数据文件,一个用于SYSTEM表空间,该表空间用来存储数据字典;一个用于SYSAUX表空间,这个表空间用来存储一些数据字典的辅助数据。

数据文件由一个个的Oracle块组成,这是Oracle的I/O基础单元,与操作系统块是不同的概念,Oracle块要比操作系统块大,这当然有处于性能的一些考虑,但我们考虑这样一种情况,当用户使用操作系统命令进行数据文件的备份的时候(假设1个Oracle块=8个操作系统块),已经复制了4个操作系统块,然后CPU被DBWn抢占了,DBWn又重新对这个Oracle块进行了更新,这时,当复制命令又得到了CPU时间去复制剩余的4个块的时候,就造成了整个Oracle块的数据不一致,所以,这也是在执行这种备份(用户自行备份)的时候,需要做一些额外处理,比如将表空间置为备份模式的原因。当然,使用RMAN是不存在这样的问题的,RMAN的备份机制是肯定可以得到数据一致的块的。(这块内容作了解即可)

对于数据文件的保护,一般可进行定期备份,或者使用RAID也可以。

4、实例参数文件

这个文件存储了数据库所需的一些参数设置,比如各个内存区域的大小,可允许的最大进程数,最大会话数,控制文件的位置,数据库的名称等等,参数文件也是实例启动时首先要加载的文件。

5、口令文件

一般称为外部口令文件。一般的用户名和口令是存放在数据字典中,不会存放在这个文件中。在一些特殊场景下,比如实例还未启动,这时,我可能需要以管理员的身份登入系统去执行一些恢复或者启动操作,然而此时,数据字典由于实例还没启动是不存在的,这时就需要外部口令文件进行用户身份的验证。

归档日志文件

ARCn将联机重做日志文件会备份归档到这类文件中去,归档日志文件保留了数据更改的完整历史信息。

Oracle外部文件作为Oracle物理存储结构的一部分,对于Oracle的数据处理和存储都起到了至关重要的作用,这些外部文件相辅相成,对于Oracle数据库共同发挥着各自的作用。在本站的Oracle教程中,对于这些Oracle外部文件的配置都给出了详细的解答,如果还不会使用Oracle数据库的小伙伴,可以结合本站教程的配置文件进行配置,这样一来使用Oracle数据库也就容易多了。

oracle外部结合,浅谈Oracle外部文件相关推荐

  1. oracle hash join outer,CSS_浅谈Oracle中的三种Join方法,基本概念 Nested loop join: Outer - phpStudy...

    浅谈Oracle中的三种Join方法 基本概念 Nested loop join: Outer table中的每一行与inner table中的相应记录join,类似一个嵌套的循环. Sort mer ...

  2. 浅谈Oracle RAC --集群管理软件GI

    浅谈Oracle RAC --集群管理软件GI基本架构 今天周五,想想可以过周末,心情大好.一周中最喜欢过的就是周五晚上,最不喜欢过的是周日晚上和周一,看来我不是个热爱劳动的人啊.趁着现在心情愉悦,赶 ...

  3. 浅谈Oracle RAC -- OHAS组件

    浅谈Oracle RAC – OHAS组件 懒惰了一周没有更新博客.这两天天气不好,索性利用今天下午的时间继续写一篇关于OHAS组件的介绍. 之前我们多次提到了OHAS组件是GI的根守护进程.这个组件 ...

  4. 浅谈oracle树状结构层级查询

    oracle树状结构查询即层次递归查询,是sql语句经常用到的,在实际开发中组织结构实现及其层次化实现功能也是经常遇到的,虽然我是一个java程序开发者,我一直觉得只要精通数据库那么对于java开发你 ...

  5. 浅谈oracle树状结构层级查询测试数据

    浅谈oracle树状结构层级查询 oracle树状结构查询即层次递归查询,是sql语句经常用到的,在实际开发中组织结构实现及其层次化实现功能也是经常遇到的,虽然我是一个java程序开发者,我一直觉得只 ...

  6. 单引号oracle如何转义_浅谈oracle中单引号转义

    ORACLE 单引号转义: 在ORACLE中,单引号有两个作用: 1:字符串是由单引号引用 2:转义. 单引号的使用是就近配对,即就近原则.而在单引号充当转义角色时相对不好理解 1.从第二个单引号开始 ...

  7. 内外兼修:Oracle ACED熊军谈Oracle学习

    编辑手记:熊军是中国西部第一位,也是到目前为止唯一的Oracle ACE总监,在这篇文章中熊军描述了他的学习过程和理念供大家参考. ORACLE 的学习,就好比武侠小说中学武功.要从三方面入手: 1. ...

  8. 转载:内外兼修:Oracle ACED熊军谈Oracle学习

    内外兼修:Oracle ACED熊军谈Oracle学习 熊军是中国西部第一位,也是到目前为止唯一的Oracle ACE总监,在这篇文章中熊军描述了他的学习过程和理念供大家参考. ORACLE 的学习, ...

  9. file相对路径java_浅谈java 中文件的读取File、以及相对路径的问题

    一.对于java项目中文件的读取 1.使用system 或是 系统的properties对象 ①直接是使用 string relativelypath=system.getproperty(" ...

最新文章

  1. win下的输入流结束符
  2. 消息队列系列(三):.Rabbitmq Trace的使用
  3. python包pip安装_python包管理之Pip安装及使用
  4. print arraylist 显示的不是内容_泛型数组列表 java.util.ArrayListlt;Egt;
  5. java finally的作用_java中finally关键字的特点和作用是什么
  6. ansible-playbook组件解析及操作全解
  7. MySQL高级 全表扫描更快
  8. 13行代码AC_Justifying the Conjecture Gym - 102394J(解题报告)
  9. msf如何升级_Kali linux 2016.2(Rolling)中的Metasploit如何更新与目录结构初步认识...
  10. 系统程序员成长计划-走近专业程序员
  11. 爬虫python能做游戏吗_一入爬虫深似海,从此游戏是路人!总结我的python爬虫学习笔记!...
  12. Python基础——版本的查询
  13. altium pcb 信号高亮_作为PCB工程师,你需要了解这几个设计指南
  14. 鸟哥的 Linux 私房菜学习笔记
  15. HDU 4173(计算几何
  16. 小程序开发有哪些方式?
  17. 收藏 一句话问答 linux
  18. 15000 字的 MySQL 速查手册
  19. (白帽生存法则)常见的网站攻击方式
  20. 关于开机自启动qbo服务的讨论

热门文章

  1. 帮助你的上司达成目标
  2. 【Oracle】设置快速恢复区及reset快速恢复区
  3. BFS-迷宫问题-用宽度(广度)优先搜索解决最优路径问题
  4. Java : 实体类不能序列化异常
  5. [PVE]解决 ProXmoX VE升级 apt-get update 报错的问题
  6. NFS客户端挂载目录后无写入权限的解决方案
  7. 是==和!=相互依赖?
  8. 使用“ for”循环遍历字典
  9. Win10电脑如何设置环境变量
  10. Shell:dos新建sh脚本在linux下执行报错“/bin/sh^M”