i backup mnesia database to a file ej20100109.bak from old ver 2.0.5, and then i put the file ej20100109.bak to the new ver server.when i restore the bakfile on the version server. i get an Error Message:
Can't restore backup from "/opt/ejabberd-2.1.0/bin/ej20100109.bak" at node ejabberd@newver: Table disco_publish does not exist.
so how to reslove this problem!
You can also try to simply
You can also try to simply copy all the Mnesia spool files (*.DCD, *.DCL, *.DAT, ...) to the new location. You may find them somewhere in /var/lib/ejabberd/
You didn't say if you only upgraded ejabberd version from 2.0.5 to 2.1.0, or if you also moved to a different machine.
proper solution
this solution has been given by Christian on the ejabberd MUC.
It installs the Mnesia DB, skipping the disco_publish tables, which is not used anymore in the new (2.1.0) ejabberd :
sudo ejabberdctl debug
mnesia:restore("/path/to/ejabberd.backup", [{skip_tables, [disco_publish]}]).