oracle 逻辑写,写写Oracle数据库的结构——物理&逻辑

数据库是什么东西

A database is an organized collection of data. It is the collection of schemas, tables, queries, views, and other objects.

——Wikipedia

数据库就是管理和组织数据的一组集合。数据库在现实生活中处处可寻:抽屉、冰箱、衣柜、钱包等等都可以说是一个数据库,拿钱包来说,里面存放的钱、名片则就是数据,而钱包会通过分层和夹层的方式来存放钱和名片,我们将钱放到分层和夹层就是一种管理和组织数据的方式。

比如我所学习的Oracle数据库,目前我对它的认识是这样子的:Oracle数据库当中有两个比较重要的概念,一是数据库,二是实例;

**数据库 = 物理结构+逻辑结构;实例 = 后台进程 + 内存 **。

物理结构

我是真实存在的文件,也就是你钱包里面存的钱:比如10块、50块、100块 ,在操作系统里面就是占用了你的磁盘空间,在数据库里面来说就是一群实实在在存在的文件,比如控制文件、数据文件、日志文件、密码文件和参数文件。

4d388f148737

物理结构

下面将这些文件的作用简单描述一般。

控制文件:没有了控制文件就无法装载(mount)数据库。控制文件里头大概包含了数据库的名字、ID、创建的时间戳;表空间信息;日志文件、数据文件存放的路径;检查点信息以及归档和备份信息。

可以查看 V$CONTROLFILE 了解它

数据文件:数据文件存放在表空间里面,数据库mount后会使用到它,里面存放的是以block为单位的数据。

可以查看 V$DATAFILE 看看它里面的信息

日志文件:对数据库每做的任一事务都会记录到日志文件里面,以redo record的方式记录在数据库数据文件中发生的block变化。可以利用日志文件实现rollback操作。

它对应的视图是 V$LOG 和 V$LOGFILE

口令文件:这是Oracle的安全认证机智,口令文件里面可以使用Oracle用户名密码验证,也可以使用OS认证(必须属于OS中的DBA用户组)。与口令文件息息相关的是sqlnet.ora文件

参数文件:在mount数据库之前,需要依靠参数文件打开实例,没有了参数文件,实例就不能启动,更不能管理和组织数据库。

在V$PARAMETER里是它的全部

其实,我们新手来说,能够清楚地知道Oracle数据库启动的全过程,这就是很大的一步探索了。

4d388f148737

启动Oracle数据库过程

逻辑结构

物理结构占用了磁盘空间,逻辑结构定义一系列的对象存放数据文件。这些对象有:表空间、段、区、块。下面来说说逻辑结构的作用。

表空间(Tablespace):Oracle 官方是这样子介绍它的:A database is divided into logical storage units called tablespaces.

表空间存放数据文件,呈一对多的关系。并且各个表空间里的数据文件作用也不一样;建库时默认建的表空间有:SYSTEM表空间、SYSAUX表空间、UNDO表空间、USERS表空间和TEMP表空间。

常用的视图:V$TABLESPACE 、V$DATAFILE、V$TEMPFILE

段(Segments):由一个或多个连续的区组成段,段里面有特定的数据库对象:Table、Index、Cluster Table,还有 user segments 、undo segments 和所有类型的segements。

相关表:DBA_SEGMENTS 、 USER_SEGMENTS

区(Extents):由多个连续的数据块集合组成区,每一个表的数据段都会有一个初始区。当段中的空间耗尽时,会自动分配一个新的区给段。

> 相关表:DBA_EXTENTS 、USER_EXTENTS

块(Data Block):是Oracle数据库中数据存储的最小逻辑单元,也被称为Oracle block 或 pages。一个数据块对应物理磁盘中特定的bytes大小。

在参数文件中可以指定block的大小,name为db_block_size,默认值为8192 bytes。

4d388f148737

逻辑结构 .png

看了数据库、物理结构和逻辑结构的基本概念之后,对Oracle数据库的大概框架会明白不少。想要深刻地学习某个东西,必须得深刻了解它的架构。

4d388f148737

Oracle数据库

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值