最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

Mnesia数据库及其集群的配置

来源:懂视网 责编:小采 时间:2020-11-09 15:31:41
文档

Mnesia数据库及其集群的配置

Mnesia数据库及其集群的配置:mnesia_manage.erl模块专门用以管理本工程中用到的各种数据库。 其导出函数有: create_all_tables/0,用以创建本模块里定义的所有数据表。 create_online_users/0,创建在线用户表。 create_users/0,创建用户表 create_user_data
推荐度:
导读Mnesia数据库及其集群的配置:mnesia_manage.erl模块专门用以管理本工程中用到的各种数据库。 其导出函数有: create_all_tables/0,用以创建本模块里定义的所有数据表。 create_online_users/0,创建在线用户表。 create_users/0,创建用户表 create_user_data

mnesia_manage.erl模块专门用以管理本工程中用到的各种数据库。 其导出函数有: create_all_tables/0,用以创建本模块里定义的所有数据表。 create_online_users/0,创建在线用户表。 create_users/0,创建用户表 create_user_data/0,创建用户资料表 create_ava

mnesia_manage.erl模块专门用以管理本工程中用到的各种数据库。

其导出函数有:
create_all_tables/0,用以创建本模块里定义的所有数据表。

create_online_users/0,创建在线用户表。

create_users/0,创建用户表

create_user_data/0,创建用户资料表

create_available_acc/0,创建可供注册的账号表

create_reserved_acc/0,创建保留账号表


insert_formal_acc/2插入正式的账号

insert_test_acc/2,插入测试账号


select_all/1,[Tab]选择某表所有记录

tab_length/1,[Tab]查询某标的长度


使用本模块时,执行erl命令时,除了要指明节点名称等,还需要指明存放mnesia数据库的路径,命令如下:

erl -sname NodeChatCore1 -pa ./chat_server/ebin -mnesia dir '"./mnesia_dir_ChatServerCore_1"'

进入erlang shell后,执行命令:mnesia_manage:create_all_tables(). 之后退出shell,进入mnesia_dir_ChatServerCore_1文件夹,即可看到刚刚建立的各个数据库的文件。


再次进入节点NodeChatCore1 的shell,让我们检查一下刚才建立的数据表是否正常。

从上图可以看到,想要建立的数据库都建立好了。现在,往available_acc数据表里插入100条示例账号:

提示信息说明100条数据插入成功。100012-100100的数据太长,截图太小无法完全显示出来。

我们测试一下,随意从刚刚插入的数据表里读取一条记录:

成功了!


现在,用相同的方法打开ChatServerExt模块的shell,不要建立该模块的数据库模式,而是从已经建立数据库模式的节点NodeChatCore1@localhost处拷贝数据库模式,我们看到,现在2个节点已经形成了一个集群。具体过程如下:

但除了schema,其他数据库都是运行在remote上的,也即远端的其他节点。而且,即使schema也只是运行在ram里的,无法持久化存储。现在,我们从现有节点处拷贝各数据库的配置文件:

再次查看,我们发现,我们需要的数据表已经运行在当前节点了,2个节点的数据库将保持同步和一致。

我们选择做个测试,在2个节点里执行相同的命令,可以看到,2个节点都能获得相同的数据了。

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

Mnesia数据库及其集群的配置

Mnesia数据库及其集群的配置:mnesia_manage.erl模块专门用以管理本工程中用到的各种数据库。 其导出函数有: create_all_tables/0,用以创建本模块里定义的所有数据表。 create_online_users/0,创建在线用户表。 create_users/0,创建用户表 create_user_data
推荐度:
标签: 数据库 配置 及其
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top