Smile_xiaoxin
2015-01-27 11:52
采纳率: 80%
浏览 3.1k

求高手解答,ORACLE 12C 中新加功能InMemory疑问

在SQLPLUS中设置完一些表为InMemory之后,后面进行维护时,有没有方法可以获取到哪些表为InMemory表
我测试重复设置InMemory和no InMemory,SQLPLUS中也不会有错误信息

SQL> alter table test no inmemory;

Table altered.

SQL> alter table test no inmemory;

Table altered.

SQL> alter table test inmemory;

Table altered.

SQL> alter table test inmemory;

Table altered.

SQL>

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • Smile_xiaoxin 2015-02-13 06:22
    已采纳

    找到相关的查询了,发出来共享一下

    -- 查询是否为内存表, enabled--内存表 disabled--非内存表 (普通当前用户执行)
    select t.table_name,
    t.inmemory,
    t.inmemory_priority,
    t.inmemory_distribute,
    t.inmemory_compression,
    t.inmemory_duplicate,
    t.*
    from user_tables t;

    -- 查询InMemory空间使用量 (DBA用户执行)
    select t.POOL,
    t.ALLOC_BYTES/1024/1024 || 'M' ALLOC_BYTES,
    t.USED_BYTES/1024/1024 || 'M' USED_BYTES,
    t.POPULATE_STATUS,
    t.CON_ID
    from v$inmemory_area t;

    -- 调整InMemory大小
    -- alter system set inmemory_size=1000M scope=spfile;
    -- 重启数据库

    -- InMemory组件是否启用
    select parameter,value from v$option where parameter like 'In-Memory%';

    -- InMemory参数
    select NAME,value,DESCRIPTION from v$parameter where NAME like 'inmemory%';

    打赏 评论
  • Smile_xiaoxin 2015-01-28 07:08

    不要沉啊,自己先顶起来!

    打赏 评论
  • WorldMobile 2015-02-04 04:44

    看一下以下视图里是否有你需要的信息

    SQL> SELECT VIEW_NAME FROM DBA_VIEWS WHERE VIEW_NAME LIKE 'V_$IM%';

    VIEW_NAME

    V_$IM_SEGMENTS_DETAIL --记录IM段对象的详细存储属性
    V_$IM_SEGMENTS --记录IM段对象的存储属性
    V_$IM_USER_SEGMENTS --记录当前用户下IM段对象的存储属性
    V_$IM_TBS_EXT_MAP --记录IM区1M子池对象的区间映射关系
    V_$IM_SEG_EXT_MAP --记录IM区对象的所有区间映射关系
    V_$IM_HEADER --记录IM区对象所分配IMCU的详细信息
    V_$IM_COL_CU --记录IMCU中基于列的统计信息
    V_$IM_SMU_HEAD
    V_$IM_SMU_CHUNK
    V_$IM_COLUMN_LEVEL --记录IMCU中对象的列级压缩属性,若未在列级定义,则改视图为空

    打赏 评论

相关推荐 更多相似问题