Force Full Database Caching Mode

意思就是可以把整个数据库缓存到内存中,当然你内存一定要非常大,起码要等于数据库的大小,才能容下整个数据库。

在RAC环境下,对于一个良好的分区应用,当要把所有实例的内存缓存结合到一起的时候可以使用,但是需要额外的一些空间去处理在实例之间的复制缓存块,所以内存的大小要大于数据库的大小。

1.数据库缓存类型

1.1在此之前还有一个默认的数据库缓存类型

Oracle数据库进行全表扫描时使用的默认数据库缓存模式。在默认缓存模式,Oracle数据库并不总是当用户查询一个大表,因为这样做可能会从缓冲区缓存中删除更多有用的数据缓存中的基础数据。

1)小表只有在表的大小小于内存的百分之二的情况下,才会被载入到内存。

2)对于中表,Oracle会分析上一次表扫描和缓存到内存的时间间隔。如果上一次扫描中表被重用的大小大于内存中保留的缓存大小,则表会被缓存。

3)对于大表,不会被加载到内存中,除非你手动声明KEEP到共享池中。
1.2.强制全数据库缓存类型-

随着更多的内存被添加到数据库,缓存的大小也随着增大。在一些情况下,数据库甚至可以被全部缓存到内存中。当然这个可以大大提高数据库的性能。

在启用强制全数据库缓存,Oracle会缓存整个数据库到内存中,内存大小要足够大。所有的数据文件,包括NOCACHE的LOB,使用SecureFiles的LOB都会被加载到内存中。

2.1决定什么时候使用强制

1)The logical database size (or actual used space) is smaller than the individual buffer cache of each database instance in an Oracle RAC environment. This is applicable for non-Oracle RAC database as well.
2)The logical database size is smaller than 80% of the combined buffer cache sizes of all the database instances for well-partitioned workloads (by instance access) in an Oracle RAC environment.
3)The database uses SGA_TARGET or MEMORY_TARGET.
4)The NOCACHE LOBs need to be cached. The NOCACHE LOBs are never cached unless force full database caching is used.

对于前三种情况,在启用全数据库缓存期间,要观察数据库的性能是否达到期望的性能。

对于RAC环境,必须所有实例同时启用全数据库缓存。

3.验证数据库缓存类型

默认情况下,数据库是在默认数据库缓存类型上运行

A)查看是否启用全数据库缓存

SELECT FORCE_FULL_DB_CACHING FROM V$DATABASE;

B)启用全数据库缓存

ALTER DATABASE FORCE FULL DATABASE CACHING;

转:http://www.cndba.cn/Expect-le/article/282

12C 新特性--全库缓存的更多相关文章

  1. Oracle 12c新特性

    转载自:Oracle 12c新特性(For DBA) 一: Multitenant Architecture (12.1.0.1)      多租户架构是Oracle 12c(12.1)的新增重磅特性 ...

  2. 11g新特性与12c新特性

    1. 11g新特性概图 管理新特性> 开发新特性> 2. 12c 新特性概图

  3. Maclean Liu对Oracle Database 12c新特性研究汇总

    Maclean Liu关于DB 12c新特性的研究文章如下: [Oracle Database 12c新特性] In-Database Archiving数据库内归档 [Oracle Database ...

  4. Oracle 12C 新特性之扩展数据类型(extended data type)

    Oracle 12C 新特性-扩展数据类型,在12c中,与早期版本相比,诸如VARCHAR2, NAVARCHAR2以及 RAW这些数据类型的大小会从4K以及2K字节扩展至32K字节.只要可能,扩展字 ...

  5. Java 8 正式发布,新特性全搜罗

    经过2年半的努力.屡次的延期和9个里程碑版本,甲骨文的Java开发团队终于发布了Java 8正式版本. Java 8版本最大的改进就是Lambda表达式,其目的是使Java更易于为多核处理器编写代码: ...

  6. ORACLE 12C新特性——CDB与PDB

    Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库( ...

  7. Oracle 12C 新特性之 PDB热克隆(本地克隆、远端异机克隆)

    说明:版本12.2.0.1 12c r1版本中 clone 一份PDB源库需要打开在read only只读模式 , 在12c r2版本中引入了local undo mode, 源PDB在read/wr ...

  8. Oracle 12c新特性(For DBA)

    一: Multitenant Architecture (12.1.0.1)      多租户架构是Oracle 12c(12.1)的新增重磅特性,内建的多分租(Multi-tenancy),一个容器 ...

  9. Oracle Database 12c 新特性 - Pluggable Database

    在Oracle Database 12c中,可组装式数据库 - Pluggable Database为云计算而生.在12c以前,Oracle数据库是通过Schema来进行用户模式隔离的,现在,可组装式 ...

随机推荐

  1. 解决You have new mail in /var/spool/mail/root提示

    终端远程登陆后经常提示You have new mail in /var/spool/mail/root 这个提示是LINUX会定时查看LINUX各种状态做汇总,每经过一段时间会把汇总的信息发送的ro ...

  2. Gradle 引入本地定制 jar 包,而不使用坐标下载 jar 包的方法

    第 1 步:创建文件夹,拷贝 jar 包 在自己的 Gradle 项目里建立一个名为 “libs” (这个名字可以自己定义,不一定非要叫这个名字)的文件夹,把自己本地的 jar 包拷贝到这个文件夹中. ...

  3. PHP练习题三

    1.用PHP打印出前一天的时间格式是2006-5-10 22:21:21. echo date(‘Y-m-d H:i:s’, strtotime(‘-1 days’)); 2.不使用第三个变量交换两个 ...

  4. PHP设计模式(一):简单工厂模式

  5. dubbo用户指南-总结

    dubbo用户指南-总结 入门 背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用 ...

  6. timer使用方法

    , HEART_EXPIRE}; , }; /* 第一次调用要多长时间 */ struct itimerval it; it.it_interval = tv_interval; it.it_valu ...

  7. bootstrap-datepicker 时间范围选择函数封装

    bootstrap-datepicker 时间范围选择函数封装 官网 https://bootstrap-datepicker.readthedocs.io/en/latest/index.html ...

  8. ubuntu16.04 运行elasticfusion

    环境:Ubuntu16.04 64bit    Kinect V1 XBOX 360 1.安装OpenNI2并试运行 https://fredfire1.wordpress.com/2016/09/2 ...

  9. Windows Server 2016 桌面环境的自动配置脚本(2017-10-24更新)

    github:https://github.com/m2nlight/WindowsServerToWindowsDesktop 下载:https://github.com/m2nlight/Wind ...

  10. dga2

    0e527eaf_5ec5_4623_9fe9_e459583acd72.com0fmgm1cuu7h1279dghgka0ltg.com0ydlanpuh4e2wl9h6udk6.com10uz8k ...