Erlang 如何在mnesia中启动表格?

Erlang 如何在mnesia中启动表格?,erlang,mnesia,Erlang,Mnesia,我有一种情况,当一张桌子大2G之后,我就不能用这张桌子了 "mynode@localhost'5>记忆:首先是脏的(我的桌子)。 **退出:{已中止,{badarg,[my_table]}** 我知道我需要应用碎片,但如何在运行时做到这一点? 主要问题是-如何启动我的_表以在运行时减小其大小?(我的意思是不重新启动mnesia)您在mnesia中存储什么样的数据?据我所知,你正在试图遍历你的表,是吗? 如果可以决定数据库中存储的最大数据量,那么可以在创建表时预先确定所需的片段数 否则,如果需要重

我有一种情况,当一张桌子大2G之后,我就不能用这张桌子了

"mynode@localhost'5>记忆:首先是脏的(我的桌子)。 **退出:{已中止,{badarg,[my_table]}**

我知道我需要应用碎片,但如何在运行时做到这一点?
主要问题是-如何启动我的_表以在运行时减小其大小?(我的意思是不重新启动mnesia)

您在mnesia中存储什么样的数据?据我所知,你正在试图遍历你的表,是吗? 如果可以决定数据库中存储的最大数据量,那么可以在创建表时预先确定所需的片段数

否则,如果需要重新配置已经支离破碎的数据库,请检查以下链接是否有帮助:

是的,我尝试遍历表中的所有记录,但此时它一点也不零碎。我可以用数据分割表格吗?或者我需要用新属性重新创建表?您当然可以在创建表时使用“frag_属性”创建一个碎片表。我想你知道如何从碎片数据库访问数据。Mnesia维护一个散列来查找数据所在的片段。我认为可以使用mnesia:change_table_frag(my_table,{attr,Val})添加额外的片段。请检查我给你的链接,我别无选择。我把锉刀从2000M切割到1999M,然后修理工作台