oracle表常駐記憶體

2021-09-01 04:39:39 字數 1343 閱讀 9077

(create table 表名 (字段) storage (buffer_pool keep); --建表時把表快取到keep中

alter table 表名 storage(buffer_pool keep);--把已存在的表快取至keep中

create table 表名(欄位..) storage (buffer_pool keep) cache;--建立快取表

alter table table_name storage ( buffer_pool keep) ;

oracle的db_buffer_pool由三部分組成:

buffer_pool_defualt

buffer_pool_keep

buffer_pool_recycle

如果要把表釘死在記憶體中,也就是把表釘在keep區。

alter table ..... storage(buffer_pool keep);

這句命令把表示表如果快取的話是快取在keep區。

可以通過語句:

select table_name from dba_tables where buffer_pool='keep';查詢到改表是放在keep區中的。

但是不意味著表已經被快取了。

下面的語句把錶快取:

alter table .... cache;

可以通過

select table_name from dba_ tables where rtrim(cache)='y'

查詢到該錶已經被快取了。

加入到keep區的表不是說不能被移出記憶體,不過是比較不容易移出記憶體。

也可以手工來移出記憶體,命令如下:

alter table ... nocache;

例項--select *from sms_accounts

--alter table sms_accounts storage(buffer_pool keep)

--alter table echobase20110515 storage(buffer_pool keep)

--select table_name from dba_tables where buffer_pool='keep'

--alter table sms_accounts cache

--alter table echobase20110515 cache

--select table_name,cache from user_tables where table_name='echobase20110515'

--select table_name,cache from user_tables where table_name='sms_accounts'

oracle如何讓表常駐記憶體?

1.前言。如題。2.如何常駐記憶體 摘自 create table 表名 字段 storage buffer pool keep 建表時把表快取到keep中 alter table 表名 storage buffer pool keep 把已存在的表快取至keep中 create table 表名 ...

常駐記憶體理解

比如你扔了乙個物件到容器裡,那麼你每次從容器裡拿這個物件,都是這乙個物件 那麼你某個請求裡改了這個物件的某個引數,其他請求進來,這個引數也是修改過的,第二點就是協程切換,乙個程序可以同時處理多個請求 然後每個請求裡靜態變數 容器物件啥的也是共用的,但同時處理的只有一處 這就導致你呼叫了協程切換的 a...

Android如何讓APP程序常駐記憶體?

目前google已經意識到這些問題,所以在android n中取消了action new picture,connectivity action等廣播。這種程序保活方式非常簡單,就是採用系統介面,啟動前台service,這樣你會在通知欄看到乙個notification,讓使用者明確的感知到你在執行中...