码迷,mamicode.com
首页 > 数据库 > 详细

Erlang Mnesia数据库迁移方法

时间:2020-07-07 13:34:18      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:type   指定   sch   tps   没有   启动   数据库   另一个   sdn   

本文参考https://blog.csdn.net/yangzm/article/details/51686249

需求

因为一些原因,需要把一个Mnesia节点的数据库搬迁到另一个节点,然后弃用原来的节点。

步骤

  1. 首先假设节点A‘A@IPA‘需要搬迁到节点B‘B@IPB‘,它们需要能够连通
  2. ‘A@IPA‘需要启动着(包括mnesia, -set_cookie $CookieA)
  3. 启动节点B,为mnesia指定一个新路径
#erl -name ‘B@IPB‘ -set_cookie $CookieA -mnesia dir mnesia数据路径 -s mnesia
  1. 链接:‘A’@IPA
(‘B@IPB‘)1>mnesia:change_config(extra_db_nodes,[‘A@IPA‘, ‘B@IPB‘]).
  1. 将B节点的schema表该为disc_copies
(‘B@IPB‘)2>mnesia:change_table_copy_type(schema,node(),disc_copies).
  1. 把A节点所有的disc_copies、disc_copies_only表拷贝过来 mnesia:move_table_copy(Tab :: table(), From :: node(), To :: node()) -> t_result(ok)
(‘B@IPB‘)3>mnesia:move_table_copy(表名, ‘A@IPA‘, ‘B@IPB‘).

6.停止A节点,在B节点删掉A节点上的schema表

mnesia:del_table_copy(schema,‘A@IPA‘).

7.停止B节点,重新启动B节点,查看B节点Mnesia中A节点的schema表已经没有了

Erlang Mnesia数据库迁移方法

标签:type   指定   sch   tps   没有   启动   数据库   另一个   sdn   

原文地址:https://www.cnblogs.com/jlom/p/13260031.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!