当前位置:首页 » 操作系统 » oracle数据库的物理结构

oracle数据库的物理结构

发布时间: 2022-12-21 16:33:06

① 请问Oracle的数据库体系的物理结构是怎样的

物理结构,即Oracle数据库使用的操作系统文件结构。
对于数据库物理结构文件,不同的oracle版本,不同的操作系统平台上有不同的存储目录结构.
数据库的物理结构文件按其作用可以分为三类:
数据文件
日志文件
控制文件
一、数据文件
数据文件用来存储数据库的数据,如表、索引等。读取数据时,系统首先从数据库文件中读取数据,并存储到SGA的数据缓冲区中。
二、重做日志文件
重做日志文件记录对数据库的所有修改信息。它是三类文件中最复杂的一类文件,也是保证数据库安全与数据库备份与恢复有直接关系的文件。
三、控制文件
控制文件是一个二进制文件,用来描述数据库的物理结构,一个数据库只需要一个控制文件,控制文件的内容包括:
数据库名及数据库唯一标识
数据文件和日志文件标识
数据库恢复所需的同步信息,即检查点号
.
Oracle数据库的体系结构包括四个方面:数据库的物理结构、逻辑结构、内存结构及进程。

② 如何合理配置Oracle数据库的物理结构和逻辑结构

物理结构和逻辑结构就是难兄难弟,对于Oracle来说,表空间就是逻辑结构,数据文件是物理结构;表空间是由数据库管理系统来管理的,用户可以建立、配置;数据文件是由操作系统来管理的,用户不能干预的。

③ oracle数据库组成部分

ORACLE由两部分:实例和数据库
实例由以下组成: SGA,Shared pool,Database buffer cache,Redo log buffer cache.
数据库由物理文件组成,其中必须有的文件是:数据文件,控制文件,重做日志
另外还有:参数文件,口令文件,归档日志文件(这三个不是必须的)
ORACLE SERVER 由两个部分组成,
1.INSTANCE:又由内存结构和后台进程组成
2.DATABASE:又由数据文件,日志文件和控制文件组成<这三个文件是必需的>.
CONTROL FILE是用来连接实例和DATABASE的
sql>SHUTDOWN IMMEDIATE
SQL>STARTUP NOMOUNT
SQL>ALTER DATABASE MOUNT
以上三个过程就是通过CONTROL FILE来连接实例和数据库.
SQL>ALTER DATABASE OPEN
在OPEN的过程对DATABASE的数据文件和重做日志文件进行一次性的验证,验证它们的状态.
ORACLE INSTANCE:存取数据库的一个手段
一个DATABASE与INSTANCE之间是1:N的关系,一个INSTANCE只能操作一个DATABASE,由内存结构(共享池,
BUFFER CACHE,REDO LOG BUFFER CACHE)及相应的进程结构组成(PMON<程序监控进程>,SMON<系统监控进
程>,CKPT<检查点进程>)
SQL>SHOW SGA ---显示DATABASE内存结构信息
SQL>SET WRAP OFF
SQL>SET LINESIZE 200
以上这两个是设置行宽
SQL>SELECT * FROM V$BGPROCESS;
将看到在这个系统中所有可能使用到的进程,其中PADDR并不每个进程都分配到有效的地址,即并不是每个进程都是必须的.
SQL>SELECT * FROM V$BGPROCESS WHERE PADDR<>\'00\'
将显示所有必需的进程.
ESTABLISHING A CONNECTION AND CREATING A SESSION
连接到ORACLE实例包括建立一个用户连接及创建会话.

ORACLE MEMORY STRUCTURE (内存结构)
由两部分组成:
1.SGA
SGA是动态的,其最大值由SGA_MAX_SIZE指定,SGA的内存由SGA COMPONENTS来动态调整.
2.PGA 是不共享的,即其包含的信息是不一样的,有两个可享的内存可以由SGA配置
<1> LARGE POOL
<2> JAVA POOL
SQL>SHOW PARAMETER SHARED
SQL>SHOW PARAMETER DB_CACHE
SQL>SHOW PARAMETER LOG
以上三个命令是用于查看相关内存信息
SQL>ALTER SYSTEM SET DB_CACHE_SIZE=20M;
所有内存大小总和不能大于SGA_MAX_SIZE的值,当提示信息出现?号或乱码时,是由于系统的语言问题.
可以通过ALTER SESSION SET NLS_LANGUAGE=\'AMERICAN\'或ALTER SESSION SET NLS_LANGUAGE=\"SIMPLE
[Page]
CHINESE\"
SHARED POOL (共享池)
含:<1>LIBRARY CACHE 库缓存
<2>DATA DICTIONARY CACHE 数据字典缓存,有的地方又称行CACHE,由SHARED_POOL_SIZE指定大小.
SQL>ALTER SYSTEM SET SHARED_POOL_SIZE=64M;
LIBRARY CACHE 主要为提高代码的共享,存储的是最近使用的SQL和PL/SQL代码.
<1>.用最近最少使用(LRU)算法
<2>.包括两个结构 1:共享SQL代码 2:共享PL/SQL代码
<3>.不可直接定义,而由SHARED POOL SIZE决定.
DATA DICTONARY CACHE.
执行此命令的过程是:首先确认是否存在AUTHORS,,然后确认字段存不存在,再检查语法,最后验证权限,而
这些信息就属于DATA DICTIONARY CACHE的内容.其包含的信息有:DATABASE FILES,表,索引,字段,用户,
权限和其他数据库对象.

④ 什么是oracle的逻辑数据库结构和物理数据库结构

1.Oracle数据库的物理结构
Oracle物理结构包含了数据文件、重做日志文件、控制文件、参数文件、密码文件、归档日志文件、备份文件、告警日志文件、跟踪文件等等;其
中数据文件、控制文件、重做日志文件和参数文件是必须的,其他文件可选。

2.Oracle数据库的逻辑结构
Oracle数据库的逻辑结构是一种层次结构,主要由表空间、段、区和数据块等概念组成。逻辑结构是面向用户的,用户使用Oracle开发应用程序使
用的就是逻辑结构。数据库存储层次结构及其构成关系,结构对象也从数据块到表空间形成了不同层次的粒度关系。

⑤ 如何通过sql命令查看oracle数据库的物理结构

数据库的物理结构一般是指数据库文件的组成情况,
数据文件可以查询数据字典dba_data_files:
select
*
from
dba_data_files;
日志文件可以查询v$logfile;
select
*
from
v$logfile;
控制文件可以直接查参数
show
parameter
control;

⑥ oracle中的物理存储结构有哪些

oracle物理结构包括:数据文件(data file)、联机日志文件(online redo log file)、控制文件(control file)组成的,当然他也包括一些其他的文件如归档日志文件、参数文件、警报文件、跟踪文件、备份文件等。
逻辑结果是表空间、段、区和块。

⑦ 如何分析oracle数据库中的表结构

去这里看看??
数据结构被称为物理(存储)的数据结构在计算机中的表示(图片)。它包括一个数据元素表示的关系的表示。
物理结构,也就是由Oracle数据库所使用的操作系统的文件结构。对于数据库的物理结构文件,不同版本的Oracle,不同的操作系统平台上的数据库文件存放的目录结构不同的物理结构
其作用可分为三类:
数据日志文件的文件
控制文件
数据文件,数据文件,用于存储数据库中的数据,如表,索引等。当读取数据时,系统首先读取的数据从数据库文件,并存储到数据缓冲器,SGA。
重做日志文件,重做日志文件
所有的记录在数据库中的信息。这是三种类型的文件,文件中最复杂的,而且要保证数据库的安全性和数据库的备份和恢复文件直接。
控制文件
控制文件是一个二进制文件,用来描述数据库的物理结构,数据库只需要一个控制文件,控制文件的内容,包括:
>同步需要恢复的数据文件和日志文件的信息标识数据库和数据库的名称,唯一标识
数据库,检查点数量
/
a>
如果有,请记得采纳为满意的答复,谢谢你!我祝你幸福的生活!
vaela

⑧ Oracle中逻辑结构和物理结构,他们之间的关系是什么

1.1、物理结构:由构成数据库的操作系统文件组成,它是从操作系统的角度来分析数据库的组成,在操作系统中可以看得到的文件,也就是说它是数据库在操作系统中的存储位置。常见的物理结构包括:控制文件、数据文件、重作日志文件、归档日志文件、初始化参数文件、还有其它文件(密码文件、报警日志文件和后台及用户跟踪文件)。
1.2、逻辑结构:描述数据库从逻辑上如何存储数据库中的数据。它是从数据库的角度来分析数据的逻辑存储。常见的逻辑结构包括:表空间、数据段、扩展区间、块构成。需要明白的是:
*1、数据库逻辑上是由一个或多个表空间组成的,常见的表空间包括:系统表空间、系统辅助表空间、UNDO表空间、临时表空间、用户表空间
*2、表空间与数据文件是物理上的一对多的关系,既一个表空间对应一个或多个数据文件,但是一个数据文件只能属于一个表空间
*3、表空间将数据库的物理结构与逻辑结构相连接
2、物理结构
2.1、控制文件 (Control files):主要记录数据库的物理结构及其他的一些控制信息,如数据库的名称、数据文件、日志文件的名称及位置。通常oracle会保留多个控制文件副本,并分别放在不同的物理位置,一旦其中的某个控制文件损坏,则可以通可其它的副本进行启动。
参数文件init.ora记录了控制文件的位置
控制文件包括如下主要信息
�6�1数据库的名字,检查点信息,数据库创建的时间戳
�6�1所有的数据文件,联机日志文件,归档日志文件信息
�6�1备份信息等
有了这些信息,Oracle就知道那些文件是数据文件,现在的重做日志文件是哪些,这些都是系统启动和运行的基本条件,所以他是Oracle运行的根本。如果没有控制文件系统是不可能启动的。控制文件是非常重要的,一般采用多个镜相复制来保护控制文件,或采用RAID来保护控制文件。控制文件的丢失,将使数据库的恢复变的很复杂。
控制文件信息可以从v$controlfile中查询获得
SQL> select * from v$controlfile;
STATUS NAME
------- --------------------------------------------------------------------------------
C:\ORACLE\ORADATA\ORCL\CONTROL01.CTL
C:\ORACLE\ORADATA\ORCL\CONTROL02.CTL
C:\ORACLE\ORADATA\ORCL\CONTROL03.CTL2.2、数据文件(Data files),注意可以与后面讲到的表空间进行对比,数据文件的详细信息记载在控制文件中。注意:SYSTEM表空间是不允许脱机的。在进行数据库恢复时,很多时候需要先将故障数据文件脱机。
可以通过如下方式查看数据文件:
SQL> select name,status,enabled from v$datafile;
NAME STATUS ENABLED
-------------------------------------------------------------------------------- ------- ----------C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSTEM01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\UNDOTBS01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSAUX01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\USERS01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\EXAMPLE01.DBF ONLINE READ WRITE
C:\ORACLE\ORADATA\ORCL\TEMP01.DBF ONLINE READ WRITE
2.3、重做日志文件(Redo files)用户对数据库进行的任何操作都会记录在重做日志文件。在了解重做日志之前必须了解重做日志的两个概念,重做日志组和重做日志组成员(Member),一个数据库中至少要有两个日志组文件,一组写完后再写另一组,即轮流写。每个日志组中至少有一个日志成员,一个日志组中的多个日志成员是镜相关系,有利于日志文件的保护,因为日志文件的损坏,特别是当前联机日志的损坏,对数据库的影响是巨大的。
联机日志组的交换过程叫做切换,需要特别注意的是,日志切换在一个优化效果不好的数据库中会引起临时的“挂起”。挂起大致有两种情况:
�6�1在归档情况下,需要归档的日志来不及归档,而联机日志又需要被重新利用
�6�1检查点事件还没有完成(日志切换引起检查点),而联机日志需要被重新利用
解决这种问题的常用手段是:
i.增加日志组
ii.增大日志文件成员大小
通过v$log可以查看日志组,v$logfile可以查看具体的成员文件。SQL> select group#,thread#,bytes,archived,members,archived,status from v$log; GROUP# THREAD# BYTES ARC MEMBERS ARC STATUS
---------- ---------- ---------- --- ---------- --- ----------------
1 1 10485760 NO 1 NO CURRENT
2 1 10485760 NO 1 NO INACTIVE
3 1 10485760 NO 1 NO INACTIVE2.4、归档日志文件(Archived files)Oracle可以运行在两种模式之中,归档模式和不归档模式。如果不用归档模式,当然,你就不会有归档日志,但是,你的系统将不会是一个实用系统,Oracle不能保证数据能够被正确恢复,因为你可能会丢失数据。但是在归档模式中,为了保存用户的所有修改,在重做日志文件切换后和被覆盖之间系统将他们另外保存成一组连续的文件系列,该文件系列就是归档日志文件。
有人或许会说,归档日志文件占领我大量的硬盘空间,其实,具体想一想,你是愿意浪费一点磁盘空间来保护你的数据,还是愿意丢失你的数据呢?显而义见,我们需要保证我们的数据的安全性。其实,归档并不是一直占领你的磁盘空间,你可以把她备份到磁带上,或则删除上一次完整备份前的所有日志文件。2.5、初始化参数文件(Parameter file)initSID.ora或init.ora文件,因为版本的不一样,其位置也可能会不一样。在8i或10g中,通常位于$ORACLE_HOME/admin/<SID>/Pfile下
初始化文件记载了许多数据库的启动参数,如内存,控制文件,进程数等,在数据库启动的时候加载(Nomount时加载),初始化文件记录了很多重要参数,对数据库的性能影响很大,如果不是很了解,不要轻易乱改写,否则会引起数据库性能下降。2.6、其他文件i . 密码文件。用于Oracle 的具有sysdba权限用户的认证。文件一般位于
$ORACLE_HOME/database/PWD<sid>.ora。
ii. 日志文件�6�1报警日志文件(alert.log或alrt<SID>.ora)
记录数据库启动,关闭和一些重要的出错信息。数据库管理员应该经常检查这个文件,并对出现的问题作出即使的反应。你可以通过以下SQL 找到他的路径
select value from v$PARAMETER where name ='background_mp_dest';
VALUE
--------------------------------------------------------------------------------
C:\oracle\admin\orcl\bmp
�6�1后台或用户跟踪文件
系统进程或用户进程出错前写入的信息,一般不可能读懂,可以通过ORACLE的TKPROF工具转化为可以读懂的格式。对于系统进程产生的跟踪文件与报警日志文件的路径一样,用户跟踪文件的路径,你可以通过以下SQL找到他的路径
select value from v$PARAMETER where name ='user_mp_dest';
SQL> select value from v$PARAMETER where name ='user_mp_dest';VALUE
--------------------------------------------------------------------------------
C:\oracle\admin\orcl\ump3、逻辑结构
3.1、表空间(tablespace)
表空间是数据库中的基本逻辑结构,一系列数据文件的集合。一个表空间可以包含多个数据文件,但是一个数据文件只能属于一个表空间。3.2、 段(Segment)
段是对象在数据库中占用的空间,虽然段和数据库对象是一一对应的,但段是从数据库存储的角度来看的。一个段只能属于一个表空间,当然一个表空间可以有多个段。
表空间和数据文件是物理存储上的一对多的关系,表空间和段是逻辑存储上的一对多的关系,段不直接和数据文件发生关系。一个段可以属于多个数据文件,关于段可以指定扩展到哪个数据文件上面。
段基本可以分为以下四种
�6�1数据段(Data Segment)
�6�1索引段(Index Segment)
�6�1回滚段(Rollback Segment)
�6�1临时段(Temporary Segment)3.3、区间(Extent)
在一个段中可以存在多个区间,区间是为数据一次性预留的一个较大的存储空间,直到那个区间被用满,数据库会继续申请一个新的预留存储空间,即新的区间,一直到段的最大区间数(Max Extent)或没有可用的磁盘空间可以申请。
在ORACLE8i以上版本,理论上一个段可以无穷个区间,但是多个区间对ORACLE却是有性能影响的,ORACLE建议把数据分布在尽量少的区间上,以减少ORACLE的管理与磁头的移动,但是在某些特殊情况下,需要把一个段分布在多个数据文件或多个设备上,适当的加多区间数也是有很大好处的。3.4、Oracle数据块(Block)
ORACLE最基本的存储单位,他是OS数据块的整数倍。ORACLE的操作都是以块为基本单位,一个区间可以包含多个块(如果区间大小不是块大小的整数倍,ORACLE实际也扩展到块的整数倍)。3.5、基本表空间介绍
3.5.1、系统辅助表空间(sysaux)
SYSAUX表空间在Oracle Database 10g中引入,作为SYSTEM表空间的辅助表空间.
以前一些使用独立表空间或系统表空间的数据库组件现在在SYSAUX表空间中创建.
通过分离这些组件和功能,SYSTEM表空间的负荷得以减轻.反复创建一些相关对象及组件引起SYSTEM表空间的碎片问题得以避免。
3.5.2、系统表空间(System)
该表空间包含的数据文件称为系统数据文件。
该存放系统表和数据字典,一般不放用户的数据,但是用户脚本,如过程,函数,包等却是保存在数据字典中的。
名词解释:数据字典
数据字典是一些系统表或视图,他存放系统的信息,他包括数据库版本,数据文件信息,表与索引等段信息,系统的运行状态等各种和系统有关的信息和用户脚本信息。数据库管理员可以通过对数据字典的查询,就可以了解到Oracle的运行状态。
查看数据数据字典的SQL
select * from dict;
查看内部系统表的SQL
select * from v$fixed_view_definition;
大量的读少量的写是该表空间的一个显着的特点。再次提醒:该表空间不能脱机
3.5.3、 临时表空间(Temporary)
该表空间包含的数据文件称为临时数据文件
主要存放用户的排序等临时数据,因为没有办法在一个永久表空间上开辟临时段,所以就必须有一个临时表空间,主要用于不能在内存上进行的排序操作。我们必须为用户指定一个临时表空间。
临时段占有的空间会在下次系统启动的时候全部被释放。
3.5.4、回滚段表空间(Rollback)
如果数据库进行对数据的修改,那么就必须使用回滚段,回滚段是用来临时存放修改前的数据(UNDO)。回滚段通常都放在一个单独的表空间上(回滚表空间),避免表空间碎片化,这个表空间包含的数据文件就是回滚数据文件。在Oracle9i中,提供了单独的表空间用于保存回滚段,不再需要手工干预。
*1回滚段在系统中的作用
当数据库进行更新插入删除等操作的时候,新的数据被更新到原来的数据文件,而旧的数据(Before Image)就被放到回滚段中,如果数据需要回滚,那么可以从回滚段将数据再复制到数据文件中。来完成数据的回滚。在系统恢复的时候, 回滚段可以用来回滚没有被commit 的数据,解决系统的一直性读。
回滚段在什么情况下都是大量的写,一般是少量读,因此建议把回滚段单独出来放在一个单独的设备(如单独的磁盘或RAID),以减少磁盘的IO争用。
*2、回滚段的工作方式
�6�1一个回滚表空间可以被划分成多个回滚段.
�6�1一个回滚段可以保存多个会话的数据.
�6�1回滚段是一个圆形的数据模型
3.5.5、用户表空间(User)
其包含的数据文件称为用户数据文件
一般是由用户建立,来存取用户数据的表空间,一般有两类常见的用户型数据,数据和索引,一般来说,如果条件许可的话,可以考虑放在不同的磁盘上。
3.5.6 例子表空间(example):例子表空间,可以不管。,它是数据库在操作系统中的存储位置。常见的物理结构包括:控制文件、数据文件、重作日志文件、归档日志文件、初始化参数文件、还有其它文件(密码文件、报警日志文件和后台及用户跟踪文件)。

⑨ ORACLE数据库结构的简介

关于ORACLE数据库结构的简介

ORACLE的数据库结构大家都了解吗?如果不了解,下面我为大家整理了关于ORACLE数据库结构简介的文章,希望能为你提供帮助:

一、物理结构:

1、数据文件:ORACLE数据库包含若干数据文件,数据文件存储数据库数据,包括表、索引等等。数据文件的几个特点:

1)一个数据文件只允许分配给一个数据库

2)数据文件可设置为自动扩展

3)一个或多个数据文件构成表空间

在进行数据库操作的时候,数据库先从内存寻找要操作的数据,如果没有找到的话,再从数据文件取出数据放在内存中,然后才对内存中的数据进行相关的操作。操作完的数据并没有立即写到数据文件中(这样减少了磁盘的IO),而是放在内存中,然后由DBWn进程决定何时批量写入数据文件。

2、控制文件:每一个数据库都有一个或多个控制文件,控制文件包含了数据库的物理结构,包括:

1)数据库名

2)数据文件名及位置

3)重做日志文件名及位置

4)数据库的建立时间等等

一般一个数据库都有若干个控制文件镜像。数据库在打开的时候(ALTER

DATABASE OPEN),会读取控制文件中的信息来打开数据库。当数据库的物理结构发生变化的时候,比如增加一个数据文件、一组重做日志等等,控制文件都会自动地做相应的修改。在数据库物理结构发生变化后,最好重新备份一下控制文件,用于数据库恢复。

3、重做日志文件:重做日志中记录了数据的变化。一般一个数据库都会有两到三组重做日志文件。同一日志组的镜像最好分布于不同的磁盘上。

4、归档日志:当数据库启动归档的时候,重做日志会被自动归档到指定的位置。

5、初始化参数文件:包含了数据库启动时的配置信息

6、警告和跟踪日志文件

1)跟踪文件:每一个后台进程都有一个单独的'跟踪文件,比如当系统发现某一个进程有问题的时候,相关的信息就会写到相应的跟踪文件中。可以从数据库的跟踪文件来发现和调试数据库的错误。

2)警告文件,也叫警告日志。是一个特别的跟踪文件,它记录着数据库启动、运行中的相关信息,它是按时间顺序进行记录的。

7、备份文件

二、逻辑结构

1、表空间:相关逻辑对象的集合。在oracle10g中,在创建数据库的时候就自动创建了SYSTEM和SYSAUX表空间。

2、数据块:数据存储在数据块中,一个数据块的大小(DB_BLOCK_SIZE)由操作系统块来决定。可以指定5种,分别为2K、4K、8K、16K、32K。

3、区:一系列连续的数据块组成区,区存储特定类型的数据,比如索引,表等等。

4、段:由一系列区组成段。

1)数据段:对于每一个非聚集表有一数据段,表的所有数据存放在该段。每一聚集有一个数据段,聚集中每一个表的数据存储在该段中。分区表中的每一个分区有一个数据段,分区中的数据存储在该段中。

2)索引段:每一个索引有一索引段,存储索引数据。分区索引中的每一分区有一个索引段。

3)回滚段:用于临时存储要撤消的信息,这些信息用于生成读一致性数据库信息,在数据库恢复时使用,回滚未提交的事务。系统回滚段用于处理系统事务,不建议用户使用系统回滚段来做其它操作。

4)临时段:当一个SQL语句需要临时工作区时,由ORACLE建立临时段。当语句执行完毕,临时段的区退回给系统。

;
热点内容
安卓软件为什么经常自启动 发布:2025-05-14 04:38:17 浏览:158
谭浩强c语言第三版课后答案 发布:2025-05-14 04:37:31 浏览:59
san存储和nas存储 发布:2025-05-14 04:34:44 浏览:152
幽灵战士3什么配置 发布:2025-05-14 04:33:53 浏览:114
安卓的虚拟机哪个好用 发布:2025-05-14 04:32:34 浏览:871
宿迁存储式化工设备 发布:2025-05-14 04:32:33 浏览:54
s7200编程s7200 发布:2025-05-14 04:28:32 浏览:413
安卓定制版苹果手机是什么意思 发布:2025-05-14 04:26:27 浏览:379
如何搭建php环境虚拟服务器免费 发布:2025-05-14 04:25:37 浏览:103
相册加密怎么看 发布:2025-05-14 04:24:53 浏览:573