ORACLE FREELIST HWM(3)
4.优化4.1手工回收存储空间在HIGH WATER MARK以上的块对性能没有影响,但是会耗费空间。如何空间大小是一个考虑的问题,就可以决定回收空块。假设表T1的存储示意图如图2.5所示,使用ALTER TABLE ... DEALLOCATE UNUSED语句可以回收HWM以上的空间。比如:alter table t1 deallocate unused;回收后T1的存储示意如图4.1.1如果在ALTER TABLE ... DEALLOCATE UNUSED语句中使用了KEEP关键字,则可以在HWM之后保留指定大小的空闲空间,比如:alter table t1 deallocate unused keep 10K;回收后T1的存储示意如图4.1.24.2删减表根据3.2.1可以得到HW
ORACLE FREELIST HWM(1)
ORACLE FREELIST HWM在Oracle9I中引入了ASSM自动表空间管理,这个使得段上面freelist,pctused,pctfree的定义已经没有太大意义,但现在很多系统还是8I,或是没有使用ASSM特性,直接采用本地手工管理表空间,所以这些参数的含义还是有意义的PCTUSED 代表每个数据块必须用多少,PCTFREE代表每个数据库需要保留多少的空间,供以后块上数据行的扩展,一般一个段上面包含一个FREELIST,当事务 需要获取空闲块时,就扫描freelist,如果扫描块数超过5块或到达freelist尽头,则抬高HWM(高水位线),让freelist容纳新的空 闲块,以供使用,如果不能抬高HWM,表示段
修改Oracle数据库字符集
html,body { border: 0px; }If the database has been created with the wrong character set, use the following to change the character set UPDATE SYS.PROPS$ SET VALUES$ = 'WE8ISO8859P1' WHERE NAME = 'NLS_CHARACTERSET'; It is VERY important to specify the character set name correctly. If the NLS_CHARACTERSET is updated to an invalid value, it will not then be possible to restart the database once it has been shutdown. 如果已经创建的数
Oracle数据库数据锁定机制全面解析
html,body { border: 0px; }为了得到最大的性能,一般数据库都有并发机制,不过带来的问题就是数据访问的冲突。为了解决这个问题,大多数数据库用的方法就是数据的锁定。 数据的锁定分为两种方法,第一种叫做悲观锁,第二种叫做乐观锁。什么叫悲观锁呢,悲观锁顾名思义,就是对数据的冲突采取一种悲观的态度,也就是说假设数据肯定会冲突,所以在数据开始读取的时候就把数据锁定住。而乐观锁就是认为数据一般情况下不会造成冲突,所以在数据进行提交更新的时候,才会正式对数据的冲突与否进行检测,如果发现冲突了,则让用户返回错