Oracle的Pctfree
1、创建一张表
create table student(
student_id number
);
但是在pl/sql中查看却是以下的建表语句:
-- Create table
create table STUDENT
(
student_id NUMBER
)
tablespace SYSTEM
pctfree 10
pctused 40
initrans 1
maxtrans 255;
1)其中下面的几个参数是什么意思呢?
2)假如数据块是8k,但是真的全部都拿来存数据吗?
数据块的结构
1)块头
2)数据
3)空闲空间
高水位线概念
当表刚创建时,HWM明显位于这个表的第一个块中,当插入数据后,水位线会升高。
但当我们删除了一些数据后,甚至删除所有的数据。就会出现一种情况:许多块即使不包含了数据,但依然处于水位下下,而且会一直保持。
因为:HWM永远不会下降,除非使用rebuild、truncate或shrunk这个对象(shrunk是10g的新特性,仅ASSM支持)
ASSM:自动段存储管理
高水位线什么作用呢?
Oracle在全表扫描时会扫描HWM下所有块,即使其中不包含数据。
pctfree
1、数据块大小
2、参数的含义=20 = 不被使用的空间占20%
为一个块保留空间的百分比,表示数据块在什么情况可以被insert。
当数据块的可硬空间低于10%时,就不能被insert了,只能用于update。
即:当一个block在到达pctfree之前,该block处于上升期,可以被insert
3、为什么要留一些空间?
为了留给insert update等操作预留空间
pctused
指当块数据第一是多少百分比时,又可以重新被insert
=40 = 要使用40%,当低于40%时,oracle认为这个数据块使用率比较低了,可以进行insert操作。
当数据低于40%时,改block处于下降期,可以写入新的数据。
==注意:如果表空间上启用了ASSM,建表的时候只能执行PCTFREE,否则可以执行PCTFREE和PCTUSED
查看表空间是否启动了自动段管理
SELECT d.tablespace_name,
d.segment_space_management
FROM dba_tablespaces d
TABLESPACE_NAME SEGMEN
------------------------------ ------
SYSTEM MANUAL
SYSAUX AUTO
UNDOTBS1 MANUAL
TEMP MANUAL
USERS AUTO
SIM_DATA AUTO
Oracle的Pctfree的更多相关文章
- 【Oracle 】pctfree和pctused详解
一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert ...
- oracle tablespace pctfree pctused
二.oracle pctfree和pctused详解 一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示 ...
- postgresql-pgbench(转)
pgbench测试: pg9.6.2的pgbench报错: [thunisoft@localhost ~]$ pgbench -S -c 8 -t 60 pgbenchdb Segmentatio ...
- 【Oracle】oracle pctfree和pctused详解
oracle pctfree和pctused详解 一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数 ...
- 二、oracle pctfree和pctused详解
一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert ...
- oracle pctfree和pctused详解
一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert ...
- Oracle数据库入门——pctfree和pctused详解
一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert ...
- oracle pctfree和pctused 详解
一.建立表时候,注意PCTFREE参数的作用 PCTFREE:为一个块保留的空间百分比,表示数据块在什么情况下可以被insert,默认是10,表示当数据块的可用空间低于10%后,就不可以被insert ...
- oracle表空间中PCTFREE, PCTUSED, INITRANS, MAXTRANX参数的解释
1. PCTFREE 要形容一个 BLOCK 的运作,我们可以把一个 BLOCK 想成一个水杯.侍者把水倒入放在我们面前的水杯,要多满呢,我们要求他倒 9 分满好了,这时候 PCTFREE 代表着设定 ...
- ORACLE 数据块PCTFREE和PCTUSED
PCTFREE表示一个数据块可用空间小于PCTFREE时,该数据块不在被记录在FREELIST中,即不能插入新数据. PCTUSED表示一个数据块已经用空间如果小于PCTUSED时,该数据块才会被重新 ...
随机推荐
- CF1358D The Best Vacation
题目传送门 思路 做这道题主要是需要发现一个性质:选择的区间必定是从某一个月的最后一天开始往前连续的一段区间. 考虑如何证明这个结论,设这个月有 \(x\) 天,假设有更优的方案满足到下一个月的第 \ ...
- Cobalt Strike 之:会话管理
郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护网络安全人人有责,共同维护网络文明和谐. Co ...
- flutter系列之:Navigator的高级用法
目录 简介 named routes 给named route传参数 从Screen返回值 向Screen传值 总结 简介 上篇文章我们讲到了flutter中navigator的基本用法,我们可以使用 ...
- SAP SPOOL_INTERNAL_ERROR
运行SE38程序 RSPO0041
- 桌面应用(.exe)设置窗口默认最大化、全屏(electron)
设置窗口默认最大化.全屏(electron) 一.默认最大化 win = new BrowserWindow({show: false}) win.maximize() win.show() 二.默认 ...
- 【FPGA学习】MATLAB和FPGA实现FFT
本博客记录一下在matlab设计和在FPGA平台实现FFT的方法,平台是Xilinx的ZYNQ 参考: COE文件制作与使用 Vivado使用技巧(9):COE文件使用方法 .coe文件生成 在某些I ...
- TiDB日常运维手册
1.处理dm不兼容DDL 迁移中断,执行跳过操作 tiup dm list tiup dm display xxx-dm-prod tiup dmctl --master-addr 10.0.xx.x ...
- el-inpu 输入框,输入一个字符失去焦点,不能连续输入问题
问题出现的原因:输入框绑定值改变导致代码从新渲染 <div v-for="(x,index) in item.newAttrs " :key="x.en" ...
- linux 替换csv的换行符(Linux 替换^M字符 方法)
sed -i 's/^M//g' a.csv 注意:这里的"^M"要使用"CTRL-V CTRL-M"生成,而不是直接键入"^M". 实验: ...
- 谷歌浏览器console.log打印失效问题
什么都没干,谷歌浏览器console.log就失效了,百度说如下图就能打印了,该勾选的勾选了,就是打印无效 后来发现是眼睛边上的那个输入框将打印的内容给过滤掉了,将输入框中的内容删掉就好了 Filte ...