@@ -3604,8 +3606,17 @@ mv /var/lib/ejabberd/*.* /var/lib/ejabberd/oldfiles/
ejabberdctl start
Convert the backup to new node name:
ejabberdctl mnesia_change_nodename $OLDNODE $NEWNODE $OLDFILE $NEWFILE
-
Import the new backup:
-ejabberdctl restore $NEWFILE
+
Install the backup file as a fallback:
+ejabberdctl install_fallback $NEWFILE
+
Stop ejabberd:
+ejabberdctl stop
+
You may see an error message in the log files, it’s normal, so don’t worry:
+Mnesia(ejabberd@newmachine):
+** ERROR ** (ignoring core)
+** FATAL ** A fallback is installed and Mnesia must be restarted.
+ Forcing shutdown after mnesia_down from ejabberd@newmachine...
+
Now you can finally start ejabberd:
+ejabberdctl start
Check that the information of the old database is available: accounts, rosters...
After you finish, remember to delete the temporary backup files from public directories.
diff --git a/doc/guide.tex b/doc/guide.tex
index 71d830bbf..edb626c43 100644
--- a/doc/guide.tex
+++ b/doc/guide.tex
@@ -4364,11 +4364,13 @@ The most interesting ones are:
Store internal Mnesia database to a binary backup file.
\titem {restore ejabberd.backup}
Restore immediately from a binary backup file the internal Mnesia database.
- This will consume quite some memory for big servers.
+ This will consume a lot of memory if you have a large database,
+ so better use \term{install\_fallback}.
\titem {install\_fallback ejabberd.backup}
The binary backup file is installed as fallback:
it will be used to restore the database at the next ejabberd start.
- Similar to \term{restore}, but requires less memory.
+ This means that, after running this command, you have to restart ejabberd.
+ This command requires less memory than \term{restore}.
\titem {dump ejabberd.dump}
Dump internal Mnesia database to a text file dump.
\titem {load ejabberd.dump}
@@ -4617,9 +4619,26 @@ ejabberdctl start
ejabberdctl mnesia_change_nodename $OLDNODE $NEWNODE $OLDFILE $NEWFILE
\end{verbatim}
-\item Import the new backup:
+\item Install the backup file as a fallback:
\begin{verbatim}
-ejabberdctl restore $NEWFILE
+ejabberdctl install_fallback $NEWFILE
+\end{verbatim}
+
+\item Stop ejabberd:
+\begin{verbatim}
+ejabberdctl stop
+\end{verbatim}
+You may see an error message in the log files, it's normal, so don't worry:
+\begin{verbatim}
+Mnesia(ejabberd@newmachine):
+** ERROR ** (ignoring core)
+** FATAL ** A fallback is installed and Mnesia must be restarted.
+ Forcing shutdown after mnesia_down from ejabberd@newmachine...
+\end{verbatim}
+
+\item Now you can finally start ejabberd:
+\begin{verbatim}
+ejabberdctl start
\end{verbatim}
\item Check that the information of the old database is available: accounts, rosters...