Si une application Erlang, myapp, nécessite mnesia, alors mnesia
doit être inclus dans son fichier de ressources d'application, sous la clé applications
, de sorte que si myapp est démarré, mnesia démarre automatiquement - c'est Le type de nœud par défaut est opt_disc
(OTP 18). Et si je veux un noeud disc
?Erlang: créer un schéma de disque
Je sais que je peux définir -mnesia schema_location disc
en ligne de commande, mais cela ne fonctionne que si un schéma existe déjà, ce qui signifie que je devrais effectuer une initialisation avant de démarrer myapp, y-a-t-il un OTP-ful sans mnesia
de applications
, pour éviter cela initialisation? L'objectif principal est de transformer "init-then-start" en "start".
Techniquement, vous avez raison, mais si vous utilisez release, [systools utilise cette liste pour générer des scripts de démarrage corrects] (http://www.erlang.org/doc/man/app.html), donc je ne sais pas J'ai besoin de 'mnesia: start/0' moi-même,' mnesia: change_table_copy_type/3' fonctionne :) –
@NotanID Oui, utiliser 'release' est une autre option qui démarre les dépendances automatiquement. –