`
JEmql
  • 浏览: 60792 次
  • 性别: 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;

分享到:
评论

相关推荐

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

    Oracle数据库体系结构-学习笔记,经过整理梳理让你比较清楚的学习整个Oracle体系

    Oracle体系结构概述

    Oracle体系结构概述,包括结构图. 物理结构 逻辑结构 内存结构 数据库实例与进程 数据字典

    Oracle 体系结构 说明

    详细描述了Oracle的体系结构,包括 物理结构 逻辑结构 等

    oracle数据库体系结构之一【逻辑结构】.docx

    oracle数据库体系结构之一【逻辑结构】.docx

    oracle体系结构.doc

    描述oracle体系结构的经典教程,你可以有如下收获 1、 理解ORACLE 实例的组成 2、 理解ORACLE 数据库的组成 3、 理解ORACLE内存结构的组成 4、 理解后台进程的作用与分工 5、 理解数据库的物理文件与对应的逻辑结构 ...

    Oracle DBA workshop1 (中文版)

    Oracle 数据库体系结构1-8 数据库结构1-9 Oracle 内存结构1-10 进程结构1-12 Oracle 实例管理1-13 服务器进程和数据库缓冲区高速缓存1-14 物理数据库结构1-15 表空间和数据文件1-17 SYSTEM 和SYSAUX 表空间1-18 段、...

    oracle10g课堂练习I(1)

    Oracle 数据库体系结构 1-8 数据库结构 1-9 Oracle 内存结构 1-10 进程结构 1-12 Oracle 实例管理 1-13 服务器进程和数据库缓冲区高速缓存 1-14 物理数据库结构 1-15 表空间和数据文件 1-17 SYSTEM 和 ...

    oracle 体系结构.doc

    在本章里你可以了解以下内容 1、 理解ORACLE 实例的组成 2、 理解ORACLE 数据库的组成 3、 理解ORACLE内存结构的组成 4、 理解后台进程的作用与...5、 理解数据库的物理文件与对应的逻辑结构 6、 理解ORACLE的整体构架

    oracle体系结构

    该资源包括一个时长为1小时13分的视频教程,两个PPT,一个word文件,讲解oracle的体系结构(Oracle服务器体系结构,Oracle 实例 ,Oracle内存结构 ,Oracle进程结构 ,Oracle 数据库逻辑存储结构 ,Oracle 数据库...

    Oracle数据库体系结构

    详细讲解了Oracle数据库的体系结构,以及物理结构和逻辑结构

    ORACLE数据库体系结构讲解

    介绍ORACLE数据库管理系统的基本轮廓和程序模块结构、实例概念和组织、进程结构和功能、内存结构和用途,数据字典结构和使用、进程配置和管理、运行模式、程序接口、事务管理。

    ORACLE 体系结构

    ORACLE 体系结构介绍 包括以下内容 1、 理解ORACLE 实例的组成 2、 理解ORACLE 数据库的组成 3、 理解ORACLE内存结构的组成 4、 理解后台进程的作用与分工 5、 理解数据库的物理文件与对应的逻辑结构 6、 理解ORACLE...

    Sharp-ORM 2007 (1.5) for Oracle

    通过Sharp-ORM自动生成数据库到类的代码,采用三层体系结构设计,屏蔽具体的数据库产品。生成的类可通过自定义的业务逻辑进行扩展。通过ORM让程序员彻底摆脱书写SQL的低效,提高SQL的执行效率。 Ver 1.5 - Release...

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

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

    oracle 11g体系结构讲解胶片

    Oracle 11g的逻辑结构:表空间、段、区间、数据块、表、其他逻辑对象。 Oracle 11g的物理结构:数据文件、控制文件、日志文件、初始化参数文件、其他文件。 Oracle 11g的总体结构:内存结构、后台进程、Oracle例程。...

    oracle10g课堂练习I(2)

    Oracle 数据库体系结构 1-8 数据库结构 1-9 Oracle 内存结构 1-10 进程结构 1-12 Oracle 实例管理 1-13 服务器进程和数据库缓冲区高速缓存 1-14 物理数据库结构 1-15 表空间和数据文件 1-17 SYSTEM 和 ...

    oracle10g课堂练习II(1)

    数据库体系结构:概述 1-8 Oracle 内存结构 1-9 Oracle 进程 1-11 概述 Oracle 实例管理 1-12 物理数据库结构 1-14 Oracle Managed Files (OMF) 1-16 逻辑和物理数据库结构 1-17 数据库体系结构:结构组件...

Global site tag (gtag.js) - Google Analytics