`

oracle学习笔记第一章:体系结构

阅读更多

 

1、安装简介:省去1000行

2、实例和数据库:

   实例:数据库里的一些相关的进程启动起来,调入到内存当中,共同起到一个协调的作用


   数据库:通常讲的数据库就是一系列的文件系统,在oracle数据库当中:控制文件*.ctl,数据文件*.dbf,日志文件*.log,在oracle中有两种日志文件:


       联机日志文件:redo*.log,又称重做日志文件,特点是:redo01.log写完写redo02.log,在写redo03.log  当 redo03.log写满以后,重写redo01.log,将原来的内容覆盖;

       归档日志文件:在我们进行备份的时候,尤其是热备份的时候要选择的一种归档方式备份的文件;

  

   在这三类文件中由控制文件管理和控制数据文件和日志文件,在启动数据库的时候,启动起对应的实例之后首先启动 控制文件,由控制文件打开数据文件。

  

    利用sqlplus查看文件:

       查看控制文件结构: DESC v$controlfile

       查看控制文件里面的内容,如:select status,name from v$controlfile;


       查看数据文件结构: DESC v$datafile

       查看数据文件里面的内容,如:select status,file# from v$datafile;


       查看日志文件结构: DESC v$logfile

       查看日志文件里面的内容,如:select member from v$logfile;


 

oracle数据库中还有一种参数文件,它不是数据库的有效组成部分,也就是说当我们启动数据库的时候参数文件不直接参与启动工作,而我们的控制文件是由参数文件来寻找的。参数文件位于database目录下名称是spfiletest.ora


Oracle数据库的物理结构或称为文件系统

 

数据库物理结构图

 

 

Oracle的内存结构如图:

oracle内存结构图

 

 

 

 

 

 

 

当一个oracle实例运行的时候,它分配了一个称为SGA(系统全局区)的大的内存块,实例的SGA被实例的所有后台进程所共享,在整个的SGA的区域里面,包括一下几个缓存池:

 

数据库高速缓存区(DB buffer),大共享区,共享池 ,日志缓存区,固定SGA(系统全局区)

解读:

 

       1、DBbuffer (数据库的高速缓存区):如果每次执行SQL查询的时候,oracle必须从磁盘读取数据块,并且在改变之后把每一个数据块写入到磁盘,那么oracle的执行效率非常的慢,而oracle的缓存区能经常使用内存中的数据块,数据库中用来频繁访问数据的区域就称之为高速缓存区;高速缓存区也是SGA里面最大的一个部分,高速缓存区包括以下三个缓存池:默认缓存池,保持缓存池,再生缓存池;

    保持缓存池:在数据库中长期保持的,经常访问的,如代码表使用该缓存池;该缓存池在

        数据块运行期间一直保留,并不从内存中释放空间;

 

 

再生缓存池:想尽快从内存中排除的对象我们可以使用再生缓存池,如频繁访问的大表。

   默认缓存池:在oracle8a之前它仅仅支持缓存器池,比如修改buffer等相关参数的值来决定缓冲池的大小

DB高速缓存池

 

2、共享池:

共享缓存池

 共享池的规模对数据库的性能有着非常重要的影响,

 

 

 

3、redoBuffer(日志缓存池):是oracle里面的一个内存区域,用来放入需要写入磁盘的redo记录,我们在数据库里面的文件系统里面包括redo的日志文件,通过一个日志的书写进程,来对日志文件进行操作,它是oracle一循环的方式先进先出的缓存器池

4、  大共享区:是oracle可选的特性,他提供了一个分配大内存块的隔离内存区,不一定需要一个大的共享区,如果使用多线程的服务器,或者备份或者使用RMN等相关的操作的时候,可能会需要到它。

5、  固定的SGA域是我们不能设定大小的,完全由oracle独立的去控制;

     字典缓存区是oracle缓存字典信息的一个缓存区,当分析sql语句校验表名,列名等数据库信息的时候,oracle将频繁的提到数据字典,通过把最频繁使用的数据字典的信息存储到内存中。Oracle减少了一些sql语句引起的性能上的冲突。

 

 

 

 

 

Oracle的逻辑结构。

 oracle的逻辑结构

 

Oracle存储数据的最基本单位是一个块,在windows平台下,默认的块大小是8K8192个字节,我们可以在安装数据库之前设定块大小,但是一定是操作系统块大小的整数倍


一个表空间对应着多个数据文件,我们从数据文件当中并不能直接解读对应的表的信息,这是关于数据库共通的特点。从逻辑上讲一个表空间可以包含着多个段。

 

共享sql区保留了sql语句的解释版本,以便于再次访问的时候不必要再去解释,

在共享的sql区里面保留了用户执行sql语句的解释版本,目的是这些sql再吃执行的时候能够提高进程的速度;

 

PL/SQL区保留了PLsql的过程,函数等程序单元的编译版本,以便于所有的用户能够共享,当程序执行一个plsql的一个单元的时候,当有两个以上用户执行相同的内容的时候,oracle并不缓存两个以上的区域,它吧相同的代码做一个拷贝,被不同的用户所缓存;

 

分享到:
评论

相关推荐

    Oracle学习笔记 PDF

    ### Oracle学习笔记知识点详解 #### 一、Oracle简介 Oracle是一家知名的软件公司,以其数据库管理系统闻名全球。该公司成立于1977年,总部位于美国加利福尼亚州。Oracle不仅提供数据库解决方案,还涉及中间件、...

    ORACLE数据库体系架构视频教程详细完整版

    第一部分: Oracle体系架构 第一章:实例和数据库 第二章:实例管理及数据库的启动/关闭 第三章:控制文件 第四章:redo日志 1 第五章:归档日志 archivelog 第六章:日志挖掘 logminer 第七章:管理undo 第八章: ...

    Oracle学习笔记.pdf

    Oracle是世界上最广泛使用的数据库管理系统之一,它提供了丰富的功能和组件,包括数据存储、查询优化、安全性、并发控制等。以下是对Oracle学习笔记中提到的一些关键知识点的详细解释: 1. **SQL执行顺序**: SQL...

    oracle体系结构、ocp笔记

    "Oracle体系结构与OCp笔记" ...本节笔记对Oracle体系结构进行了详细的讲解,涵盖了数据库、实例、Oracle网络架构和Oracle内存架构等方面的知识点,为读者提供了一个系统的Oracle体系结构知识框架。

    oracle dba学习笔记

    Oracle DBA 学习笔记 标题:Oracle DBA 学习笔记 描述:学习使用维护 Oracle 数据库数年,对认为值得记录的 Oracle 维护脚本进行记录总结,存起来,虽然今后开源是方向,但不可否认 Oracle 仍然非常有水平的,在...

    Oracle学习笔记精华版

    Oracle学习笔记精华版是针对数据库管理系统Oracle的一份重要学习资源,涵盖了从基础概念到高级特性的全面知识。Oracle,作为全球广泛使用的大型企业级数据库系统,对于IT专业人员尤其是数据库管理员(DBA)来说,是...

    Oracle学习笔记

    Oracle学习笔记 Oracle学习笔记是李兴华老师编写的Oracle从入门到精通的学习笔记,涵盖了 Oracle 的多表查询、连接、组...李兴华老师的 Oracle 学习笔记是一份非常有价值的学习资源,适合所有想学习 Oracle 的读者。

    Oracle学习笔记.doc

    主要的形式是例子代码加代码解释加运行结果,我个人认为对于没有学习过oracle的同学是比较好的一个学习笔记,同时我对做的笔记都加了标题,做了一个简单的目录,对于已经学习过的同学也是一个很好的帮助文档,由于是...

    ORACLE数据库性能调优视频教程详细完整版

    第一章:oracle资源管理 第二章:oracle任务调度 第三章:AWR及顾问框架 第四章:自动维护任务 第五章:预警及诊断系统 第六章:Optimizer策略与管理 第七章:oracle内存管理 第八章:11g其他新特性 第九章:性能...

    ORACLE学习笔记:日常应用、深入管理、性能优化.part1/2

    ORACLE学习笔记:日常应用、深入管理、性能优化.part1

    Oracle学习笔记-日常应用、深入管理、性能优化

    资源名称:Oracle学习笔记-日常应用、深入管理、性能优化内容简介:Oracle学习笔记-日常应用、深入管理、性能优化Oracle 11g是最具代表性的高端关系型数据库管理系统,它在世界各地的大型商务数据库应用系统中被广泛...

    Oracle 9i&10g编程艺术:深入数据库体系结构.pdf

    《Oracle 9i&10g编程艺术:深入数据库体系结构》是一本专注于Oracle数据库9i和10g版本的深度解析书籍,旨在为读者提供关于Oracle数据库内部工作原理及编程技巧的详尽指南。该书由多个章节构成,覆盖了从数据库基本...

    Oracle数据库体系结构-学习笔记.docx

    #### 一、Oracle体系结构简介 **Oracle Server**: Oracle服务器包含两个主要部分:数据库(Database)和实例(Instance)。 - **Database**: 包括数据文件(Datafiles)、控制文件(Controlfile)和重做日志文件(Redolog ...

    oracle体系结构学习课件第一章

    oracle体系结构学习之入门介绍等;是体系结构学习英文版ppt的第一章,后续还有其他所有章节,是学习体系结构很全面的教材,比官方文档易学,结构清晰。

    Oracle体系结构详解.pdf

    Oracle 体系结构详解 Oracle 体系结构是围绕 Oracle Server 架构展开的, Oracle Server 由 Instance 和 Database 组成。一个 Instance 只能对应一个 Database,特殊情况下一个 Database 可以有多个 Instance(RAC...

    ORACLE学习笔记(一)---体系结构

    这篇"ORACLE学习笔记(一)---体系结构"将带你深入理解Oracle数据库的基础架构,这对于任何想要掌握Oracle数据库操作和管理的人来说都是至关重要的。 首先,我们要了解Oracle数据库的三大核心组件:数据存储、进程...

Global site tag (gtag.js) - Google Analytics