Oracle 数据库架构

查看数据库在linux系统的安装目录路径情况:

[root@localhost ~]# cd /u01/app/oracle/oradata/orcl/
[root@localhost orcl]# ls
control01.ctl datafilebig_1.dfb redo04.log tbsp_1.dbf tp1.dbf undotbs01.dbf
datafile1.dbf example01.dbf redo4.log temp_01.dbf tp2.dbf undotbs_1.dbf
datafile3.dbf redo01.log sysaux01.dbf temp_1.dbf ts1.dbf undotbs_add.dbf
datafile4.dbf redo02.log system01.dbf temp_2.dbf ts2.dbf users01.dbf
datafile5.dbf redo03.log tbs_example .dbf temp.dbf ts3.dbf
[root@localhost orcl]# pwd
/u01/app/oracle/oradata/orcl
[root@localhost orcl]#

注:*.log 为日志文件  *.dbf 为数据文件 *.ctl 为控制文件

SYS@orcl> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/system01.dbf
/u01/app/oracle/oradata/orcl/sysaux01.dbf
/u01/app/oracle/oradata/orcl/undotbs01.dbf
/u01/app/oracle/oradata/orcl/users01.dbf
/u01/app/oracle/oradata/orcl/example01.dbf
/u01/app/oracle/oradata/orcl/datafile1.dbf
/u01/app/oracle/oradata/orcl/ts1.dbf
/u01/app/oracle/oradata/orcl/datafile3.dbf
/u01/app/oracle/oradata/orcl/datafile4.dbf
/u01/app/oracle/oradata/orcl/datafile5.dbf
/u01/app/oracle/oradata/orcl/datafilebig_1.dfb NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/ts2.dbf
/u01/app/oracle/oradata/orcl/ts3.dbf
/u01/app/oracle/oradata/orcl/tbsp_1.dbf 14 rows selected. SYS@orcl> select name from v$controlfile; NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/control01.ctl
/u01/app/oracle/fast_recovery_area/orcl/control02.ctl SYS@orcl> select member from v$logfile; MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/redo03.log
/u01/app/oracle/oradata/orcl/redo02.log
/u01/app/oracle/oradata/orcl/redo01.log
/home/oracle/oracle_system_files_back/logfile_bak/logfile_bak_20180228/redo20180
228.log /home/oracle/oracle_system_files_back/logfile_bak/logfile_bak_20180228/redo20180
228_1.log /home/oracle/oracle_system_files_back/logfile_bak/logfile_bak_20180228/redo04.lo
g MEMBER
-------------------------------------------------------------------------------- 6 rows selected. SYS@orcl>

1:数据库和实例

  • 数据库

  • 数据库实例

专有服务器模式:


共享服务器模式:


一个数据文件只有1个表空间;1个表空间可以有多个数据文件。数据表等对象的存储都是以逻辑结构方式进行存储的。最终 以物理文件形式存放在磁盘上的。例如创建1个表并指定表空间。


2:数据库存储结构

  • 物理存储结构
  • 数据文件(Data files)

  • 控制文件(Control files)

元数据:数据库物理结构属性信息



  • 在线重做日志文件(Online redo log files)

注:

1:至少要有2个日志文件。目的:是为了日志切换。

2:查看日志文件位置信息:

SYS@orcl>  select member from v$logfile;

MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/orcl/redo03.log
/u01/app/oracle/oradata/orcl/redo02.log
/u01/app/oracle/oradata/orcl/redo01.log
/home/oracle/oracle_system_files_back/logfile_bak/logfile_bak_20180228/redo20180
228.log /home/oracle/oracle_system_files_back/logfile_bak/logfile_bak_20180228/redo20180
228_1.log /home/oracle/oracle_system_files_back/logfile_bak/logfile_bak_20180228/redo04.lo
g MEMBER
-------------------------------------------------------------------------------- 6 rows selected.
  • 逻辑存储结构

  • 数据块(Data blocks)

注:

1:数据块是数据库存放数据的最小单位。

2:数据信息都是以数据块形式存放在数据文件中的。




  • 扩展区(Extents)

注:

1:区的分配是可以不连续的。

2:区的分配是可以存放在不同的数据文件当中的。


  • 段(Segments)

注:

1:

  • 表空间(Tablespaces)

注:

1:



3:数据库实例结构

注:

1:

  • Oracle 数据库进程

  • 客户端进程(Client processes)

注:

1:

  • 后台进程(Background processes)

注:

1:

  • 服务端进程(Server processes)

注:

1: 服务器进程如同餐厅服务员的角色。后台进程如餐厅的厨师角色 前台进程如同餐厅客户。


  • 实例内存结构
  • 系统全局区(System Global Area(SGA) )

  • 程序全局区(Program Global Area(PGA) )

注:

1: 当有1个客户端进程连接到数据库的时候,服务器端会分配一个服务器进程和一个PGA内存区。

2:后台进程启动的时候,也会分配一个PGA内存区

——————————————————————————————————————————————————————————————

Oracle 数据库架构的更多相关文章

  1. OCA读书笔记(1) - 浏览Oracle数据库架构

    Objectives: List the major architectural components of Oracle DatabaseExplain the memory structuresD ...

  2. oracle数据库架构

    3.1 Client/Server Oracle 采取的是 Client/Server 架构. oracle 服务端分为两部分: Instance 实例 Database 数据库 实例, 又称为数据库 ...

  3. Linux服务器下对Oracle数据库expdp(导出)和impdp(导入)

    紧接上篇文章,Oracle数据库架构已经创建完成,我的需求是:将老服务器上的数据库迁移到新的数据库上. 这就用到impdp(导入)操作. 要想实现对新数据库的impdp(导入)工作, 首先需要从老的数 ...

  4. 关于Oracle数据库故障诊断基础架构

    本节包含有关Oracle数据库故障诊断基础结构的背景信息.它包含以下主题: 故障诊断基础架构概述 关于事件和问题 故障诊断基础设施组件 自动诊断信息库的结构,内容和位置 故障诊断基础架构概述 故障诊断 ...

  5. Oracle数据库的文件以及Oracle体系架构

    第一部分.Oracle数据库的文件 1.参数文件:控制实例的行为的参数的集合 参数文件的作用 设定数据库的限制 设置用户或者进程的限制 设定数据库资源的限制 调整系统的性能 主要的参数文件 SGA_T ...

  6. Oracle 数据库知识汇总篇

    Oracle 数据库知识汇总篇(更新中..) 1.安装部署篇 2.管理维护篇 3.数据迁移篇 4.故障处理篇 5.性能调优篇 6.SQL PL/SQL篇 7.考试认证篇 8.原理体系篇 9.架构设计篇 ...

  7. 将Oracle数据库中的数据写入Excel

    将Oracle数据库中的数据写入Excel 1.准备工作 Oracle数据库"TBYZB_FIELD_PRESSURE"表中数据如图: Excel模板(201512.xls): 2 ...

  8. Oracle数据库基础知识

    oracle数据库plsql developer   目录(?)[-] 一     SQL基础知识 创建删除数据库 创建删除修改表 添加修改删除列 oracle cascade用法 添加删除约束主键外 ...

  9. ORACLE数据库SQL语句的执行过程

    SQL语句在数据库中处理过程是怎样的呢?执行顺序呢?在回答这个问题前,我们先来回顾一下:在ORACLE数据库系统架构下,SQL语句由用户进程产生,然后传到相对应的服务端进程,之后由服务器进程执行该SQ ...

随机推荐

  1. 双系统中卸载Ubuntu后又efi系统分区删除方法

    参考:https://blog.csdn.net/qq_28057541/article/details/51723914 首先 window键(窗口键) + R ,然后输入 Diskpart 打开命 ...

  2. 【tmos】创建自定义400、500页面

    解决方案

  3. Javascript入门(四)条件控制语句

    一.条件控制语句 1. if <script type="text/javascript"> var num = 1 if( num == 3 ){ alert(&qu ...

  4. mongodb系列~ mongodb慢语句(1)

    1 简介:讲讲mongo的慢日志2 慢日志类型    query insert update delete 3 查看慢日志  1 db.system.profile.find() 慢日志总揽  2 d ...

  5. shiro-5基于url的权限管理

    1.1 搭建环境 1.1.1 数据库 mysql5.1数据库中创建表:用户表.角色表.权限表(实质上是权限和资源的结合 ).用户角色表.角色权限表. 完成权限管理的数据模型创建. 1.1.2 开发环境 ...

  6. Javascript - ExtJs - GridPanel组件 - 编辑

    GridPanel组件 - 编辑 Ext.grid.plugin.Editing 如果要对表格使用列编辑器控件,则需要完成以下几步 1.将columns中需要编辑的列设为editor并提供编辑列时所要 ...

  7. 20165237 2017-2018-2 《Java程序设计》第5周学习总结

    20165237 2017-2018-2 <Java程序设计>第5周学习总结 教材学习内容总结 1.内部类:在一个类中定义另一个类:外嵌类:包含内部类的类. 2.内部类的类体中不能声明类变 ...

  8. tp5.0 结合 Redis Cache缓存风暴

    方法介绍 1.sadd() 描述:为一个Key添加一个值.如果这个值已经在这个Key中,则返回FALSE. 参数:key value 返回值:成功返回true,失败false   2.delete() ...

  9. Invalid character found in the request target.

    背景:springboot项目内置tomcat9.0 调用的接口中有{}就会报错 解决办法: 新的tomcat新版本增加了一个新特性,就是严格按照 RFC 3986规范进行访问解析,而 RFC 398 ...

  10. 【转】Python用数据说明程序员需要掌握的技能

    [转]Python用数据说明程序员需要掌握的技能 https://blog.csdn.net/HuangZhang_123/article/details/80497951 当下是一个大数据的时代,各 ...