> Erlang中文手册 > start/0 启动一个本地 Mnesia 系统

mnesia:start/0

启动一个本地 Mnesia 系统

用法:

start() -> ok | {error, Reason}

启动一个 Mnesia 节点集群是一个相当复杂的操作过程。一个 Mnesia 系统由一个节点集群组成,这些节点都是会在本地启动 Mnesia 服务的节点。正常情况下,每个节点有一个给 Mnesia 写入文件数据的目录。该目录也将被看作是 Mnesia 服务的目录。Mnesia 也许会启动在一个无磁盘(disc-less)的节点上。于更多关于 Mnesia 无盘节点的信息可以查看 mnesia:create_schema/1 和 Mesia 用户指南。

组成 Mnesia 系统的集群节点是建立在一个架构模式下,并且可以从结构模式里添加或删除 Mnesia。架构模式的初始是用 mnesia:create_schema/1 函数在磁盘上创建。在无盘的节点上,一个极小默认的架构模式会在每次 Mnesia 启动的时候生成。在启动的过程中,节点间的 Mnesia 服务会互相交换架构模式信息,来验证表定义方面的兼容性。

每一个架构模式会有一个唯一的 cookie 来认作是一个唯一架构模式的标示符。该 cookie 必须是 Mnesia 启动的相同所有节点才能运行。关于这方面的更多细节信息可以查看 Mnesia 用户指南。

架构模式文件(同时也是 Mnesia 所需的其他所有文件)是保存在 Mnesia 服务目录里。在命令行里写上 "-mnesia dir Dir",可以用来指定 Mnesia 系统保存数据所在的目录位置。如果命令行不指定,那么目录的命令默认为 "Mnesia.节点名"。

也可以使用 application:start/1 的 application:start(mnesia) 。

mnesia:start().