将表填充到Oracle内存中的段

时间:2016-10-06 14:00:44

标签: oracle in-memory-database

我正在尝试将表加载到oracle内存数据库中。我使用sql + command ALTER TABLE table_name INMEMORY为INMEMORY启用了表。该表还包含数据,即填充表。但是当我尝试使用命令SELECT v.owner, v.segment_name name, v.populate_status status from v$im_segments v;时,它会显示no rows selected

可能是什么问题?

1 个答案:

答案 0 :(得分:0)

你考虑过这个吗?

https://docs.oracle.com/database/121/CNCPT/memory.htm#GUID-DF723C06-62FE-4E5A-8BE0-0703695A7886

  

响应查询的IM列存储的填充   在对象上设置INMEMORY属性意味着此对象是IM列存储中填充的候选对象,而不是数据库立即填充内存中的对象。

     

默认情况下(INMEMORY PRIORITY设置为NONE),数据库会延迟IM列存储中表的填充,直到数据库认为它有用。当为对象设置INMEMORY属性时,当数据库确定在其他地方更好地使用内存时,数据库可以选择不实现所有列。此外,IM列存储可以填充表中的列子集。

您可能需要先针对日期运行选择