数据库概念

数据库概念

数据库:       容纳数据的仓库。

数据库系统:    数据库、数据库管理系统、硬件、操作人员的合在一起的总称。

数据库管理系统:用来管理数据及数据库的系统。

数据库系统包含数据库管理系统、数据库及数据库开发工具所开发的软件(数据库应用系统)。

这里写图片描述

1.数据库实例

每个运行的oracle数据库与一个数据库实例相联系 , 数据库服务器启动一个数据库时, 系统全局区(SYSTEM GLOBAL ALER)的一个内存区被分配, 有一个或多个oracle进程被启动 ,SGA和oracle进程称为数据库实例
  • Oracle实例的SGA:
    SGA(系统全局区)是存储数据库进程共享的数据信息的内存区域

    共享池(shared pool)用来存最近执行的SQL语句和最近使用的数据字典的数据
    
    数据缓冲区(database buffer cache)用来储存最近从数据文件中读取过的数据
    
    重做日志缓冲器(redo log buffer)用来记录服务或后台进程对数据库的操作
    
    java pool:用来储存java代码
    
    Large pool: 用来存储不与SQL直接相关的大型内存结构
    
  • Oracle实例的后台进程:

    Database Writer负责将数据的更改由database buffer cache写入到数据文件中 .
    
    Log Writer 负责将数据更改记录由redo log buffer写到重做日志文件中
    
    System Monitor 检查数据库的一致性, 必要的情况下在数据库打开时执行恢复 
    
    Process Monitor 用户进程失败时,进程监控程序实现进程恢复
    
    The Checkpoint Process 负责更新数据库的控制文件中的状态信息.
    
    ARCH进程,该进程负责将已填满的在线日志文件拷贝到指定的存储设备中
    

2.Oracle的物理结构:

2.1.数据文件(data file):

每个Oracle数据库包含一个或多个数据文件
一个数据文件仅与一个数据库联系
一个表空间由一个或多个数据文件组成

2.2.控制文件(control file):

 每一个数据库有一个控制文件,记录数据库的物理结构,包含:
      数据库名
      数据库数据文件与日志文件的名字与位置 ;
      数据库建立日期
 控制文件负责整个数据库的调度, 是数据库的心脏 .

2.3.初始化参数文件(parameter file):

参数文件时一个文本文件, 该文件只有在建立数据库或启动实例时才被访问, 在修改文件之前必须关闭实例
包括:
      一个实例所启动的数据库名字;
      在SGA中存储结构所使用的内存大小; 
      在填满日志文件后做什么
      数据库控制文件的位置和名字
      在数据库总专用回滚段的名字

2.4.重做日志文件(redo log file)

每个数据库有两个或多个日志文件组, 每个日志文件用于收集数据库日志,以备恢复数据时使用, oracle默认给每个数据库建立三个日志文件组,每组一个成员

2.5.归档日志文件(archive log file)

当数据库运行在归档日志模式下时, 当oracle覆盖在线重做日志文件时, 归档文件将数据库的所有操作记录下来         

2.6.口令文件(password file)

口令文件对sys用户或具有sysdba权限的用户进行验证, OraPwd命令重建口令文件或改变sysdba用户的口令

3.Oracle的逻辑结构:

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

3.1表空间(tablespace)

表空间是数据库中最大的逻辑单位,每一个表空间由一个或多个数据文件组成,一个数据文件只能与一个表空间相联系。每一个数
据库都有一个SYSTEM表空间,该表空间是在数据库创建或数据库安装时自动创建的,用于存储系统的数据字典表,程序系统单
以将除SYSTME以外的其他任何表空间置为离线。

3.2段(segment)

数据库的段可以分为四类:数据段、索引段、回退段和临时段。

3.3区

区是磁盘空间分配的最小单位。磁盘按区划分,每次至少分配一个区。区存储与段中,它由连续的数据块组成。

3.4数据块

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

3.5模式对象

模式对象是一种应用,包括:表、聚簇、视图、索引序列生成器、同义词、哈希、程序单元、数据库链等。 

4.总结

Oracle的用户、表空间和数据文件的关系:

一个用户可以使用一个或多个表空间,一个表空间也可以供多个用户使用。用户和表空间没有隶属关系,表空间是一个用来管理数据存储的逻辑概念,表空间只是和数据文件发生关系,数据文件是物理的,一个表空间可以包含多个数据文件,而一个数据文件只能隶属一个表空间。 

解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值