oracle怎么把这个表一直放在内存中? 项目绝大部分操作都要使用一个基本信息表有没有办法把这个表一直放内存中,这样速度快些有没有别的办法,比如把这个表的内容读读到内存中,这样就不要读表了到晚上在和表里同步一次放在map里会不会比查表快表的内容并不多应该在100这个数量级上吧 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 create/alter table ...... storage(buffer_pool keep); 当表被读入的时候,放入keep pool,keep pool 中的数据会尽量长时间的保留,保留的时间长短依据keep pool的负载而定。 create/alter table ...... cache; 当全表扫描时,放入default pool 的LRU热端(如无cache,则放入LRU冷端,很快就会被age out),适合频繁使用的小表,如果有很多表要cache,那应该把表放如keep pool. 那就索性不要放在DB的内存中,直接用C#,JAVA等编程语言将小表的内容读出后,放在Hashtable放在application server的内存.然后使用~ ALTER TABLE "tablename" CACHE 如一楼说的,将表放在keep池中即可。数据库本身有的功能,不建议通过程序另外实现。 你要是对oracle的系统架构多了解一点,就会对oracle更有信心的:)就算你不把表放在keep池中,而是放在默认的default池中,如果这个表访问频繁,那也不会有什么问题。oracle存储数据前,都要将block读入到数据缓存中,default使用的是LRU算法,所以频繁访问的数据基本上也是会保留在内存中的。 update了查询求助啊!!! ORACLE解锁表 关联查询,如何去除重复的记录(在线等) 数据迁移,出现数据库连接数量问题 sqlplus问题 如何从SQLSERVER 转换脚本到 ORACLE9i? 关于无法编译存储过程。 orcale 8i 和9i 的之间联系问题,请高手指教。(来者有分) 在配置EPM System Configurator时IIS的问题 Oracle 在pl/sql develop查询数据,不加sid前缀查询不出来数据是什么原因? 有没有一个通用的分页sql语句,可以在任何数据库上使用的sql 关于BLOB调用dbms_lob.append的参数错误问题
create/alter table ...... cache; 当全表扫描时,放入default pool 的LRU热端(如无cache,则放入LRU冷端,很快就会被age out),适合频繁使用的小表,如果有很多表要cache,那应该把表放如keep pool.
直接用C#,JAVA等编程语言将小表的内容读出后,放在Hashtable放在application server的内存.然后使用~
ALTER TABLE "tablename" CACHE