`
JEmql
  • 浏览: 62372 次
  • 性别: Icon_minigender_1
  • 来自: 无锡
社区版块
存档分类
最新评论

Oracle体系结构之-逻辑结构

阅读更多

一、Oracle 逻辑结构简介

oracle的逻辑结构包括表空间(tablespace),段(segment),数据块(data block)以及模式对象(schema)。

oracle数据库在逻辑上是由多个表间组成的,表空间中存储的对象叫段,比如数据段,索引段,和回退段。段由区组成,区是磁盘分配的最小单位。段的增大是通过增加区的个数来实现的。每个区的大小是数据块大小的整数倍,区的大小可以不相同;数据块是数据库中最小的I/O单位,同时也是内存数据缓冲区的单位,及数据文件存储空间单位。块的大小由参数DB_BLOCK_SIZE设置,其值应设置为操作系统块大小的整数倍。

表空间在物理上包含一个或多个数据文件。而数据文件大小是块大小的整数倍;


二、表空间

表空间是Oracle数据库最大的逻辑结构,一个Oracle数据库在逻辑上由多个表空间组成,一个表空间只隶属于一个数据库。Oracle中有一个称为SYSTEM的表空间,这个表空间是在创建或安装数据库时自动创建的。主要用于存储系统的数据字典,过程,函数,触发器等;也可以存储用户的表,索引等。

前面我们说过要查询表空间可以通过

SQL>select * form dba_data_files;

要查询表空间的空闲信息可以通过

SQL>select * from dba_free_space;

表空间有在线(online)或离线(offline)之说,一旦我们将表空间设置成离线的状态,则所有对该表空间内对象的修改将无法同步到数据文件中。我们可以将除SYSTEM和RBS表空间之外的其它表空间设置成离线状态。命令如下:

SQL>alter tablespace ***  offline;

如果我们想限制某个用户能够使用的表空间的大小,则我们可以通过命令:

SQL>alter user *** quota ***m on ***

这表示我们要限制某个指定用户的表空间使用限额为***M,on之后的参数就是要限制的表空间

临时表空间用于为用户排序的ORDER BY语句使用。创建数据库时可以指定数据库的默认临时表空间。在创建用户的时候可以指定用户的默认临时表空间。例如下句就指定temp为用户的临时表空间。

SQL>CREATE USER *** IDENTIFIED BY **** TEMPORARY TABLESPACE temp;


三、段

Oracle中的段可以分成4种类型:数据段、索引段、回滚段、临时段。

数据段用来存储用户的数据,每个表都有一个对应的回滚段,其名称和数据表的名字相同。我们可以用下列的SQL语句来查询用户的数据段信息:

SQL>select  * from user_extents;

索引段用来存储系统、用户的索引信息:

SQL>select * from all_indexs / user_indexs;

回滚段用来存储用户数据修改前的值,回退段与事务是一对多的关系,一个事务只能使用一个回退段,而一个回退段可存放一个或多个事务的回退数据。

临时段用于order by语句的排序以及一些汇总。


四、区

区是磁盘空间分配的最小单位。磁盘按区划分,每次至少分配一个区。区存储于段中,它由连续的数据块组成。
区的分配过程中,每次至分配5个区。如果所剩的空闲空间不够5个区,就会出现错误:ORA-01653。

可以通过字典dba_tablespaces查询表空间中区的信息。可以通过字典user_tables查询段中区的信息。可以通过字典user_extents查询区的分配状况。

SQL>select * from dba_tablespaces;

通过这个查询我们可以看到各个表空间的:
·BLOCK_SIZE :数据块的大小 
·INITIAL_EXTENT :初始化时分配的区的大小,其值为BLOCK_SIZE的整数倍
·NEXT_EXTENT:当初始化时分配的区不够时,下一次扩展的区的大小
·MIN_EXTENTS:区大小的下限
·MAX_EXTENTS:区大小的上限

我们可以通过以下SQL语句分别查询表空间、段、区中区的分配信息

SQL>select  *  from dba_tablespaces;
SQL>select table_name, tablespace_name, min_extents, max_extents from user_tables; 
SQL>select  *  from user_extents;


五、数据块

数据块是数据中中最小的数据组织单位与管理单位,是数据文件磁盘存储空间单位,也是数据库I/O 的最小单位,数据块大小由DB_BLOCK_SIZE参数决定,不同的oracle版本DB_BLOCK_SIZE的默认值是不同的。

六、模式对象(Schema Object)

Oracle 模式对象包括了表,索引,约束,过程,函数,触发器等等应用结构。我们可以通过以下语句查询表空间或当前用户下的所有schema对象:

SQL>select  *  from dba_source;
SQL>select  *  from user_source;

分享到:
评论

相关推荐

    09-10-2 第03讲补充 Oracle体系结构--SGAx.pptx

    Oracle体系结构详解 Oracle体系结构是指Oracle数据库的架构设计和组件之间的关系。 Oracle数据库实例、物理存储结构、逻辑存储结构、内存结构、数据库实例与进程、数据字典等都是Oracle体系结构的重要组件。 物理...

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

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

    【Oracle体系结构】-(个人研读整理).docx

    Oracle数据库体系结构是一个复杂而精细的系统,它由多个关键组件构成,包括实例、内存结构和后台进程,以及数据库的物理和逻辑结构。Oracle实例是数据库运行时的核心,由System Global Area (SGA)和后台进程两大部分...

    Oracle体系结构简介

    以下是对Oracle体系结构主要组成部分的详细说明: 1. **数据库**:数据库是Oracle的核心,它是一个逻辑数据集合,包含了物理存储的数据以及元数据。Oracle是关系型数据库管理系统(RDBMS),意味着它以表格形式组织...

    Oracle体系结构概述

    本文将深入探讨Oracle体系结构的各个关键组成部分。 首先,我们关注物理结构,这是Oracle数据库在磁盘上的实际存储形式。主要包含以下几个部分: 1. **数据文件**:数据文件是Oracle数据库中最基本的存储单元,...

    第二章 Oracle体系结构.ppt

    Oracle数据库的体系结构是其高效稳定运行的基础,涵盖了物理结构、逻辑结构、内存结构、数据库实例与进程以及数据字典等多个重要组成部分。本章主要围绕这些方面展开详细讲解。 首先,Oracle的物理结构主要包括数据...

    实验2_Oracle数据库体系结构

    Oracle数据库是世界上最流行的数据库管理系统之一,它具有复杂的体系结构,包括物理存储结构、逻辑存储结构以及各种组件。在实验“实验2_Oracle数据库体系结构”中,我们将深入理解Oracle数据库的关键组成部分。 ...

    Oracle数据库体系结构( 中文详细版)

    本文将详细解析Oracle数据库的体系结构,帮助读者深入理解其内部工作原理。 Oracle数据库的核心架构可以分为以下几个主要部分: 1. **数据文件**(Data Files):数据文件是Oracle数据库存储实际数据的地方,包含...

    Oracle体系结构4500695709.docx

    逻辑结构是 Oracle 体系结构的最高级别,它是面向用户的,用户使用 Oracle 开发应用程序使用的就是逻辑结构。逻辑结构主要由表空间、段、区和数据块等概念组成。 1. 表空间(Tablespace):一个表空间是一个逻辑...

    Oracle体系结构图以及分析

    Oracle数据库的逻辑结构(表空间、段、区、块)与物理结构(数据文件)相互映射,使得数据的存储和检索更为高效。这种复杂的架构设计使得Oracle能够支持高并发的用户访问、提供强大的数据管理和安全性,并保证了高度...

    oracle绝密培训.oracle体系结构

    在深入理解Oracle 10g的体系结构之前,我们需要了解数据库的基本概念。数据库管理系统(DBMS)是用于创建、管理和操作数据的软件系统。关系型数据库管理系统(RDBMS)遵循关系模型,其中数据以表格形式存储,并通过...

    oracle实验二 体系结构、存储结构与各类参数

    1. **理解Oracle体系结构**:包括逻辑组件如表空间、段、区等;物理组件如数据文件、控制文件、重做日志文件等。 2. **了解初始化参数文件以及初始化参数的含义**:初始化参数文件是用于配置Oracle实例的重要文件,...

    Oracle编程艺术-深入数据库体系结构

    《Oracle编程艺术-深入数据库体系结构》是一本深入解析Oracle数据库内部运作机制的专业书籍,对于想要提升Oracle数据库管理技能的IT从业者来说,是不可或缺的参考资料。本书主要涵盖了以下几个关键知识点: 1. ...

    精通oracle体系结构

    《精通Oracle体系结构》是Tom大师的一部经典之作,它深入浅出地解析了Oracle数据库的核心构造和工作原理。Oracle数据库作为全球广泛使用的大型企业级数据库管理系统,其强大的功能和复杂的内部架构对于IT专业人士来...

    Oracle体系结构材料

    Oracle的体系结构是理解其工作原理的关键,以下将详细讲解Oracle体系结构的主要组成部分及其功能。 首先,Oracle数据库的核心是数据库实例(Database Instance)。一个实例是由内存结构(如数据缓冲区高速缓存、...

    Oracle体系结构

    Oracle体系结构主要包括以下几个关键部分: 1. **实例(Instance)**:实例是Oracle数据库在内存中的表示,由系统全局区(SGA)、程序全局区(PGA)和后台进程组成。系统全局区存储共享数据,如数据缓冲区、重做...

    Oracle 体系结构组件

    Oracle体系结构由多个关键组件构成,这些组件协同工作,确保数据的安全、高效存储和检索。接下来,我们将详细探讨Oracle体系结构中的主要组件。 1. **数据库实例**:Oracle数据库实例是内存结构和后台进程的集合,...

Global site tag (gtag.js) - Google Analytics