第一部分、Oracle数据库的文件

1、参数文件:控制实例的行为的参数的集合

参数文件的作用

  • 设定数据库的限制
  • 设置用户或者进程的限制
  • 设定数据库资源的限制
  • 调整系统的性能

主要的参数文件

SGA_TARGET:Oracle在SGA区(SGA是Oracle最重要的一块内存区域,存放各种各样的数据、SQL解析以及redo日志等等)需要分配多大的内存。

PGA_AGGREGATE_TARGET:此参数用来指定所有session总计可以使用最大PGA(程序全局区,会话分配的内存)内存。SGA和PGA基本就是oracle使用的内存的总和。

DB_CACHE_SIZE:数据块缓冲缓存区大小

DB_FILES:db_files参数限制了数据库数据文件总的个数,datafiles数目达到db_files指定后数据库不能添加新的数据文件

LOG_ARCHIVE_DEST_n:此参数可以设置最多10(n=[1..10])个不同的归档路径

USER_DUMP_DEST:specifies the pathname for a directory where the server will write debugging trace files on behalf of a user process.

查看参数文件初始化值可以在oracle的官方文档上去看。在Basic Initialization Parameters就可以查看各项初始化参数了。每个基本参数点进去就有了详细的说明。

其中SGA_TARGET的初始化参数如下:

查看当前数据库的参数文件

show parameter SGA; /*显示和sga相关的参数*/

select name,value from v$parameter; /*显示所有的参数*/

show parameter spfile; /*显示spfile参数文件*/

spfile对应的SPFILEORCL.ORA是二进制文件,用show parameter spfile;可以显示该二进制文件的路径(D:\Oracle11g\Administrator\product\11.2.0\dbhome_1\database)。

使用create pfile from spfile;可以生成INITorcl.ORA文件,这是一个文本格式的文件,里面显示的参数可以直接修改。

2、控制文件

控制文件包含的信息

  • 数据库名字(DBID)
  • 数据库建立时间
  • 数据文件,在线日志文件和归档文件三中文件的信息
  • 表空间的信息
  • Rman的备份信息

控制文件的作用

  • 它包含数据文件,在线数据文件,归档文件的信息,这些文件用于数据库open时的 文件验证。当数据库的架构改变时,比如增减,删除文件时,会更新数据文件。
  • 包含了数据库恢复时候需要的一些信息,用于数据库的恢复。

控制文件的结构

  • 空间允许重用区

这个区域的信息是可以被重用的(覆盖的),当空间不足或者规则满足时,允许覆盖以前的信息,比如归档日志和Rman备份集的信息。

  • 空间不允许重用区

这个区域的信息是不允许重用的(覆盖的),因为他们是数据库必须的信息,比如表空间,数据文件,在线日志文件等。

控制文件丢失了怎么办?

  • 备份控制文件

  • 重建控制文件

参数文件和控制文件的丢失都不是致命的,都不会导致数据库的损坏。

3、数据文件

存放实际的数据,隶属于某个表空间。

查看表空间及对应的数据文件信息:

select file_name,tablespace_name from dba_data_files;
select file_name,tablespace_name from dba_temp_files;

数据文件的损坏

需用通过备份恢复

  • 还原备份文件
  • 用归档+在线redo恢复

使用Redo信息恢复

  • 创建新数据文件
  • 用归档+在线Redo恢复

4、重做日志文件-Redo Log File

重做日志文件的作用

  • 保护数据的安全

  • 恢复数据

  • 数据同步和分析 -golden gate,Data guard

日志文件损坏

活动日志损坏:数据丢失,数据库损坏

非活动日志损坏:数据不会丢失,可以重建日志文件

Oracle日志文件的状态可参见:Oracle日志文件的状态current/active/inactive/unused

第二部分、Oracle体系架构

Oracle整体架构图

由上图可知,主要分为三个部分:实例instance,数据库database,其他组成部分。上半部分中的Instance就是实例,有内存加进程构成,内存分为SGA(System Global Area)和PGA(Program Global Area)。下方的Database就是数据库,包含数据文件,控制文件,重做日志文件。数据库文件是一种相对静止的东西。

下面分别介绍SGA区,PGA区和后台进程。

SGA区

http://blog.itpub.net/25264937/viewspace-694917/

PGA区

http://blog.itpub.net/25264937/viewspace-694917/


记得帮我点赞哦!

精心整理了计算机各个方向的从入门、进阶、实战的视频课程和电子书,按照目录合理分类,总能找到你需要的学习资料,还在等什么?快去关注下载吧!!!

念念不忘,必有回响,小伙伴们帮我点个赞吧,非常感谢。

我是职场亮哥,YY高级软件工程师、四年工作经验,拒绝咸鱼争当龙头的斜杠程序员。

听我说,进步多,程序人生一把梭

如果有幸能帮到你,请帮我点个【赞】,给个关注,如果能顺带评论给个鼓励,将不胜感激。

职场亮哥文章列表:更多文章

本人所有文章、回答都与版权保护平台有合作,著作权归职场亮哥所有,未经授权,转载必究!

Oracle数据库的文件以及Oracle体系架构的更多相关文章

  1. Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法

    Oracle数据库误删文件导致rman备份报错RMAN-06169解决办法 可能是误删文件导致在使用rman备份时候出现以下提示 RMAN-06169: could not read file hea ...

  2. Oracle数据库控制文件多路复用

    Oracle数据库控制文件多路复用多路复用控制文件,指的是在系统不同的位置上同时存放多个控制文件的副本,此时如果某个路径对应的磁盘发送物理损坏导致该控制文件损坏,就可以通过另一个磁盘上的控制文件进行恢 ...

  3. Oracle数据库 控制文件

    一.概念控制文件的主要任务是管理数据库的状态以及描述数据库的物理结构 二.所含有的信息1.数据库名2.数据库标识符(DBID)3.数据库创建时间戳4.数据库字符集5.数据文件信息6.临时文件信息7.在 ...

  4. 定时备份oracle数据库脚本文件

    @echo off REM ########################################################### REM # Windows Server 2003下 ...

  5. .net4.0中使用ODP.net访问Oracle数据库(无需安装oracle客户端部署方法)

    1.在没有安装oracle客户端的设备上也能访问服务器上的oracle (通俗的讲就是:开发的应用程序 和 oracle数据库服务器分别在两台电脑上)2.不需要配置TnsNames.Ora文件 开发环 ...

  6. Oracl数据库管理方面的资料(查询sga,查看oracle数据库名称sid,查看oracle数据库名称,查看表空间,修改表空间名称)

    显示Oracle sga相关信息: SQL> show sga Total System Global Area 105978600 bytes Fixed Size 453352 bytes ...

  7. C# 连接Oracle数据库,免安装oracle客户端

    一.方案1 首先下面的内容,有待我的进一步测试和证实.18.12.20 被证实了,还需要安装Oracle客户端,或者本机上安装oracle数据库软件. 18.12.20 1.下载Oracle.Mana ...

  8. 本机未装Oracle数据库时Navicat for Oracle 报错:Cannot create oci environment 原因分析及解决方案

    因为要更新数据库加个表,远程桌面又无法连接...所以就远程到另外一台电脑,然后用navicat通过内网修改目标数据库. 一直用着navicat操作数据库,所以很速度的弄好然后新建连接进入数据库. 然而 ...

  9. 从ArcGIS连接Oracle数据库,并将Oracle数据库注册到ArcGIS Server

    环境说明 客户端机器环境: ① Win7 SP1 64位 ② ArcGIS Desktop 10.2 32位 ③ ArcGIS Server 10.2 64位 服务器环境 ① Windows Serv ...

随机推荐

  1. Linux的VMWare中Centos7磁盘分区管理 fdisk分区和制作文件系统格式化和开机自动挂载

    一.硬盘的组成零件扇区 磁道 磁盘容量 磁盘分区 简介 硬盘由容量.柱面数.磁头数.扇区数 C/H/S, Cylinder, Head, Sector(柱面/磁头数/扇区数) 1.磁头数表示硬盘总共有 ...

  2. .NetCore 配合 Gitlab CI&CD 实践 - 开篇

    引言 这是一个系列的文章,讲述的是一个中小型开发团队如何从零开始使用搭建基建 GitLab 代码托管平台,以及使用 GitLab Runner 实现 CI/CD 的故事.本系列通过部署一个完整的 .n ...

  3. 东哥学Node的故事——内存管理

    前言 东哥是一个平凡的前端攻城狮,北邮网研院研二在读,刚接触Node不久,心里充满了对Node的好奇和崇拜,只听噗通一声,掉入了Node的坑... 于是东哥开始疯狂地看Node相关的书籍,这不,就学到 ...

  4. 职场老鸟,一文教你如何正确入门Python爬虫!

    爬虫现在的火热程度我就不说了,先说一下这门技术能干什么事儿,主要为以下三方面: 1.爬取数据,进行市场调研和商业分析 爬取知乎.豆瓣等网站的优质话题内容:抓取房产网站买卖信息,分析房价变化趋势.做不同 ...

  5. 18、Memento 备忘录模式

    例如:用于记录快照(顺势状态).存盘 1.Memento Memento设计模式是一种软件设计模式,用于将对象回滚到其先前状态.它是行为设计模式的一部分,与算法和对象之间的职责分配有关. 行为模式描述 ...

  6. Grazing on the Run 题解

    [题目大意] 大致题意就是,你的初始坐标为\(x\),你要去数轴上的\(n\)个点,问你到达所有点的时间总和最小是多少. 直接贪心肯定不行,所以考虑\(DP\) 先把坐标离散(也就是预处理两点距离\( ...

  7. 2020-06-07:mysql中varchar类型的id,where id=1,会用到索引吗?int 类型的id,where id="1",会用到索引吗?为什么?

    福哥答案2020-06-07: 答案来自群员:对于int类型id,查询的varchar 类型 ‘1’会隐式转换成 1,‘1’和 1都能正常走索引:对于varchar类型id,查询的int 类型 1不会 ...

  8. JavaScript Babel说明

    babel插件只是去唤醒 @babel/core中的转换过程 转换模块需要手动安装 npm install @babel/core 转换方式需要安装 @babel/preset-env babel默认 ...

  9. Linux Centos 下安装npm 实测可用

    转载地址 https://blog.csdn.net/u012129607/article/details/60966045 1.root 登录linux 2.没有目录就自己创建一个 cd /usr/ ...

  10. Unix I/O

    Unix I/O 打开文件 一个应用程序通过要求内核打开相应的文件,来宣告它想要访问一个I/O设备.内核返回一个小的非负整数,叫做描述符,它在后续对此文件的所有操作中标识这个文件.内核记录有关这个打开 ...