对于12.1.0.2的In-Memory特性很多朋友都已经知晓,现在可能有这个困惑我一张表启用In-Memory大概需要多少内存呢?该如何估算这个值呢?这里我告诉你通过dbms_compression可以完成你想做的事情 启用In-Memory功能 [[email protected] u02]$ sqlplus / as
对于12.1.0.2的In-Memory特性很多朋友都已经知晓,现在可能有这个困惑我一张表启用In-Memory大概需要多少内存呢?该如何估算这个值呢?这里我告诉你通过dbms_compression可以完成你想做的事情
启用In-Memory功能
[[email protected] u02]$ sqlplus / as sysdbaSQL*Plus: Release 12.1.0.2.0 Production on Thu Aug 7 17:50:47 2014Copyright (c) 1982, 2014, Oracle. All rights reserved.Connected to:Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit ProductionWith the Partitioning, OLAP, Advanced Analytics and Real Application Testing optionsSQL> show parameter inmemory;NAME TYPE VALUE------------------------------------ ----------- ------------------------------inmemory_clause_default stringinmemory_force string DEFAULTinmemory_max_populate_servers integer 0inmemory_query string ENABLEinmemory_size big integer 0inmemory_trickle_repopulate_servers_ integer 1optimizer_inmemory_aware boolean TRUESQL> alter system set inmemory_size=400M;alter system set inmemory_size=400M*ERROR at line 1:ORA-02097: parameter cannot be modified because specified value is invalidORA-02095: specified initialization parameter cannot be modifiedSQL> alter system set inmemory_size=400M scope=spfile;System altered.SQL> show pdbs; CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 PDB1 READ WRITE NO 4 PDB2 READ WRITE NOSQL> alter session set container=pdb1;Session altered.SQL> show parameter inmemory;NAME TYPE VALUE------------------------------------ ----------- ------------------------------inmemory_clause_default stringinmemory_force string DEFAULTinmemory_max_populate_servers integer 0inmemory_query string ENABLEinmemory_size big integer 0inmemory_trickle_repopulate_servers_ integer 1optimizer_inmemory_aware boolean TRUESQL> alter system set inmemory_size=200M;alter system set inmemory_size=200M*ERROR at line 1:ORA-02097: parameter cannot be modified because specified value is invalidORA-02095: specified initialization parameter cannot be modifiedSQL> alter system set inmemory_size=200M scope=spfile;alter system set inmemory_size=200M scope=spfile *ERROR at line 1:ORA-02096: specified initialization parameter is not modifiable with thisoptionSQL> !oerr ora 209602096, 00000, "specified initialization parameter is not modifiable with this option"// *Cause: Though the initialization parameter is modifiable, it cannot be// modified using the specified command.// *Action: Check the DBA guide for information about under what scope// the parameter may be modifiedSQL> select 200*1024*1024 from dual;200*1024*1024------------- 209715200SQL> alter system set inmemory_size=209715200; alter system set inmemory_size=209715200*ERROR at line 1:ORA-02097: parameter c<em style="color:transparent">本文来源[email protected]搞@^&代*@码)网9</em>annot be modified because specified value is invalidORA-02095: specified initialization parameter cannot be modifiedSQL> shutdown immediate;Pluggable Database closed.SQL> conn / as sysdbaConnected.SQL> shutdown immediateDatabase closed.Database dismounted.ORACLE instance shut down.SQL> startupORACLE instance started.Total System Global Area 838860800 bytesFixed Size 2929936 bytesVariable Size 360712944 bytesDatabase Buffers 50331648 bytesRedo Buffers 5455872 bytesIn-Memory Area 419430400 bytesDatabase mounted.Database opened.SQL> show parameter inmemory;NAME TYPE VALUE------------------------------------ ----------- ------------------------------inmemory_clause_default stringinmemory_force string DEFAULTinmemory_max_populate_servers integer 1inmemory_query string ENABLEinmemory_size big integer 400Minmemory_trickle_repopulate_servers_ integer 1optimizer_inmemory_aware boolean TRUESQL> alter session set container=pdb1;Session altered.SQL> alter database open;Database altered.SQL> show parameter inmemory;NAME TYPE VALUE------------------------------------ ----------- ------------------------------inmemory_clause_default stringinmemory_force string DEFAULTinmemory_max_populate_servers integer 1inmemory_query string ENABLEinmemory_size big integer 400Minmemory_trickle_repopulate_servers_ integer 1optimizer_inmemory_aware boolean TRUESQL> alter system set inmemory_size=100M;System altered.SQL> show parameter inmemory;NAME TYPE VALUE------------------------------------ ----------- ------------------------------inmemory_clause_default stringinmemory_force string DEFAULTinmemory_max_populate_servers integer 1inmemory_query string ENABLEinmemory_size big integer 100Minmemory_trickle_repopulate_servers_ integer 1optimizer_inmemory_aware boolean TRUE