我試圖從單獨的腳本插入聯盟數據到ejabberd的Mnesia數據庫中。我是一個Erlang初學者,雖然我可以想出如何創建和使用單獨的Mnesia數據庫,但我無法弄清楚如何連接到ejabberd。使用相同的「-mnesia目錄」似乎不夠。如何使用單獨的腳本連接到ejabberd的Mnesia數據庫?
1
A
回答
5
問題簡化爲如何在Erlang中進行rpc調用的問題。
確保ejabberd以節點主機部分的全限定主機名或IP地址運行。這在我的安裝中指定爲/etc/ejabberd/ejabberdctl.cfg中的EJABBERD_NODE。如果您必須在此步驟中更改主機名,請參閱https://git.process-one.net/ejabberd/mainline/blobs/raw/v2.1.10/doc/guide.html#htoc79(「更改計算機主機名」)。
使用-name或-sname啓動您的shell或腳本,並使用與上述限制相同的主機。
您已準備好使用Erlang的內置RPC。例如:
(在你的shell或腳本)
Cookie = 'YOUR_EJABBERD_COOKIE'. % mine was found in /var/lib/ejabberd/.erlang.cookie
EjabberdNode = '[email protected]'. % or whatever you set as EJABBERD_NODE
erlang:set_cookie(EjabberdNode, Cookie).
net_adm:ping(EjabberdNode).
rpc:call(EjabberdNode, mnesia, system_info, [tables]).
2
只需使用命令ejabberdctl調試
mnesia:info(). %to overview mnesia
mnesia:schema(schema). %see table named schema`s detail
相關問題
- 1. Ejabberd mnesia數據庫到mysql
- 2. 如何直接訪問ejabberd的mnesia?
- 3. 連接到單獨的'數據庫連接文件'
- 4. 如何停止使用mnesia ejabberd
- 5. 連接到數據庫 - 腳本建議?
- 6. 如何連接到bash腳本中的oracle數據庫?
- 7. 如何從/ lib目錄中的腳本連接到數據庫?
- 8. 使用'sysdba'從shell腳本連接到Oracle數據庫
- 9. 使用php腳本連接到數據庫
- 10. 使用Shell腳本連接到Postgres(Redshift)數據庫和表
- 11. 如何從ASP.NET腳本連接到Informix數據庫?
- 12. 如何通過Unix腳本連接到KDB數據庫?
- 13. 如何將Firebase數據庫連接到Php腳本?
- 14. Django獨立數據庫腳本 - 太多連接錯誤
- 15. ejabberd:檢查Mnesia表?
- 16. mysql連接表單獨的數據庫到錶行
- 17. 在Rails中連接到一個單獨的mysql數據庫
- 18. C#連接到單獨的線程數據庫
- 19. ejabberd:用mysql替換mnesia
- 20. 如何使用smack-android連接到安全禁用的ejabberd?
- 21. 如何連接oracle數據庫和我的python腳本?
- 22. 將獨立腳本連接到使用框架的joomla DB
- 23. 如何使用java jdbc連接到本地SQL數據庫
- 24. 如何使用Induction連接到本地SQLite數據庫?
- 25. 如何使用python在本地連接到Mongo數據庫
- 26. 連接到我的SQL數據庫的php腳本
- 27. 如何將數據庫連接信息放到單獨的文件中?
- 28. 連接mysql數據庫與tcl腳本
- 29. Python的ejabberd驗證腳本不響應變化的數據庫
- 30. 您可以使用MySQL連接到獨立數據庫「MYDATA.DB」?