2013-07-30 1 views
0

ejabberd 우분투에서 실행되는 버전은 하나 개의 노드 만, 배포되지 2.1.13이며, 내가 ejabberdctl 디버그 내가 사용을 TV를 시도ejabberd`s mnesia에 직접 액세스하는 방법은 무엇입니까? (시작 :

쉘에서 그것은`에게 mnesia 데이터베이스를 조회 할) ejabberdctl 디버그, 그러나 나는 또한 시도

undefined function tv:start/0 

돌아

Cookie = 'MY_COOKIE'. 
EjabberdNode = '[email protected]'. 
erlang:set_cookie(EjabberdNode, Cookie). 
** exception error: distribution_not_started 
    in function auth:set_cookie/2 (auth.erl, line 119) 
net_adm:ping(EjabberdNode). 
rpc:call(EjabberdNode, mnesia, system_info, [tables]). 

알다시피, 나는 배포판에 오류가있는 것 같아.

및 mysql 셸과 같은 셸을 사용하여 mnesia의 테이블을 쿼리하는 방법은 무엇입니까?

답변

3

여기 내 첫 번째 노드가 첫 번째 노드의 액세스 mnesia을 위해, ejabberd의 @ localhost를, 우리는 첫 번째 노드가있는 클러스터를 생성 whitch 다른 노드 테스트 @ localhost를를 구축하고, 당신은 mnesia에 액세스 할 수 있습니다.

명령을

erl -sname test -mnesia dir '"/tmp/"' -mnesia extra_db_nodes "['[email protected]']" -s mnesia 

주의 : -sname 시험, 첫 번째 노드 이름과 반드시 ​​동일하지, 여기에 다음 ejabberd

당신이 명령에 의해 mnesia를 확인할 수 있습니다

mnesia:info(). 

행운을 빕니다 ~