oracle-存储结构

文件包括

控制文件.ctl、数据文件.dbf、日志文件.log这三类放在存储上。

参数文件:空间的划分,进程的选用(.ora)

oracle启动的时候需要读一下,数据库启动后,参数文件并不关闭,但即使文件丢了,数据库也没影响。

备份文件:主要备份数据文件和归档日志文件,一定不能放在存储上,存储出问题,数据文件和归档都没了,数据丢失。放在带库上(虚拟的和真实的都可以)

归档日志文件:离线文件

口令文件:远程需要,丢失也无所谓,可以临时生成

预警日志:alert,重大错误记录,checkpoint

跟踪文件:trc,进程出问题记录

表空间

数据库、表空间、段、区、块

一个表空间由一个或多个文件组成

在表和数据文件之间的一个中间层

系统级别的:system,sysaux,这两个都是系统和数据字典相关的,undo,temp

user虽然是用户的,但实际中也不用,自己建立

方案其实就是用户的概念,schema

段区块

一般8个块是一个区,每次段用满了,就分配一个区

表空间创建可以用em,也可以sql


区管理选本地,段管理自动

对表进行分析,分析后,上面的sql数值更准确

高水位线

假设一个表中有1000条数据,然后删除了500条数据,表的高水位线仍然会保持在1000条数据的位置。这意味着即使删除了一半的数据,表所占用的存储空间仍然会保持在删除前的大小。

要降低高水位线,可以采取以下几种方法:

压缩表:使用Oracle提供的压缩表功能,可以将表的高水位线调整到合理的位置,回收被删除数据所占用的存储空间。

重建表:通过备份表数据,删除原表,然后重新创建表并将备份数据重新插入表中,可以有效地降低高水位线。

重新组织表空间:通过重新组织表空间,可以将表的高水位线重新设置到合理的位置,回收被删除数据所占用的存储空间。

这些方法可以帮助降低高水位线,回收被删除数据所占用的存储空间,从而减少存储空间的浪费。

全表扫面:扫面高水位线以下的所有空间

oracle块物理结构

行链接:尽量一行放在一个block中,但如果放不下,那就链接的方式存放

行迁移:当更新行时,当前block放不下,只能放到别的block中,当前位置不移除,而是写新地方的地址

相关推荐
戒不掉的伤怀41 分钟前
【Navicat 连接MySQL时出现错误1251:客户端不支持服务器请求的身份验证协议;请考虑升级MySQL客户端】
服务器·数据库·mysql
cv高级工程师YKY1 小时前
服务器 - - QPS与TPS介绍
数据库
nbsaas-boot1 小时前
高可扩展属性建模设计:架构师的全局思考与落地方案
数据库
爱上语文1 小时前
Redis基础(5):Redis的Java客户端
java·开发语言·数据库·redis·后端
陈敬雷-充电了么-CEO兼CTO2 小时前
推荐算法系统系列>推荐数据仓库集市的ETL数据处理
大数据·数据库·数据仓库·数据挖掘·数据分析·etl·推荐算法
MeshddY2 小时前
(超详细)数据库项目初体验:使用C语言连接数据库完成短地址服务(本地运行版)
c语言·数据库·单片机
wuxinyan1232 小时前
Java面试题033:一文深入了解MySQL(5)
java·数据库·mysql·面试
萧曵 丶3 小时前
Spring @TransactionalEventListener
java·数据库·spring·事务·transactional·异步
坤坤不爱吃鱼3 小时前
【MySQL\Oracle\PostgreSQL】迁移到openGauss数据出现的问题解决方案
mysql·postgresql·oracle
胡斌附体3 小时前
mobaxterm终端sqlplus乱码问题解决
数据库·乱码·sqlplus·字符集设置