Software /
code /
prosody-modules
Diff
mod_migrate/README.md @ 6211:750d64c47ec6 draft default tip
Merge
author | Trần H. Trung <xmpp:trần.h.trung@trung.fun> |
---|---|
date | Tue, 18 Mar 2025 00:31:36 +0700 |
parent | 6003:fe081789f7b5 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mod_migrate/README.md Tue Mar 18 00:31:36 2025 +0700 @@ -0,0 +1,51 @@ +--- +summary: prosodyctl cross storage driver migration tool +... + +Introduction +============ + +This module adds a command to `prosodyctl` for copying data between +storage drivers. + +Usage +===== + + prosodyctl mod_migrate example.com <source-store>[-<store-type>] <target-driver> [users]* + +`<source-store>` would be e.g. `accounts` or `private`. To migrate +archives, the optional suffix `<store-type>` would be set to `archive`, +so e.g. `archive2-archive` or `muc_log-archive`. Multiple stores can be +given if separated by commas. + +`<target-driver>` is the storage driver to copy data to, sans the +`mod_storage_` prefix. + +`mod_migrate` tries to request a list of users from `usermanager`, but +this does not always work. If so, you can supply usernames as arguments +after the target driver. + +The process is something like this: + +1. Decide on the future configuration and add for example SQL + connection details to your prosody config, but don't change the + `store` option yet. +2. With Prosody shut down, run + `prosodyctl mod_migrate example.com accounts sql` +3. Repeat for each store, substituting 'accounts'. E.g. vcards, + private... +4. Change the [`storage` configuration](https://prosody.im/doc/storage) + to use the new driver. +5. Start prosody again. + +Examples +======== + +``` sh +prosodyctl mod_migrate example.com accounts,roster,private,vcard sql +``` + +Compatibility +============= + +Should work with 0.8 and later.