【问题标题】:Is there a built-in mechanism for us to launch Mnesia in Elixir?我们是否有内置机制可以在 Elixir 中启动 Mnesia?
【发布时间】:2014-01-16 16:00:00
【问题描述】:

看来我们只能通过输入iex --erl "--mnesia dir '~/doc/'" --name mynode来启动Mnesia。

我们可以在不向 erl 传递参数的情况下直接启动它吗?

【问题讨论】:

    标签: mnesia elixir


    【解决方案1】:

    您可以在代码中动态设置它。上面的所有--erl 指令所做的就是在启动mnesia 应用程序之前对其进行配置。您可以通过以下方式实现:

    # First load mnesia
    iex(1)> :application.load(:mnesia)
    :ok
    # Now configure the desired directory
    iex(2)> :application.set_env(:mnesia, :dir, 'sample')
    :ok
    # Start mnesia as usual
    iex(3)> :mnesia.start
    :ok
    # See if the desired info is correct
    iex(4)> :mnesia.info
    :ok
    

    请注意,它仅在您手动启动应用程序时才有效。如果您是自动启动它并想通过命令行进行配置,那么您当前的 sn-p 是最好的选择(或使用ELIXIR_ERL_OPTS)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-01-21
      • 2012-05-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-03-20
      • 2019-08-28
      相关资源
      最近更新 更多