Software /
code /
prosody-modules
Comparison
mod_migrate/README.markdown @ 1813:f02f52a2ee11
mod_migrate: Add support for migrating archives
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Tue, 01 Sep 2015 10:59:43 +0200 |
parent | 1812:22b799c7b50a |
child | 1814:7b4e841dcd77 |
comparison
equal
deleted
inserted
replaced
1812:22b799c7b50a | 1813:f02f52a2ee11 |
---|---|
1 --- | 1 --- |
2 labels: | |
3 summary: prosodyctl cross storage driver migration tool | 2 summary: prosodyctl cross storage driver migration tool |
4 ... | 3 ... |
5 | 4 |
6 Description | 5 Description |
7 =========== | 6 =========== |
8 | 7 |
9 This module adds a command to `prosodyctl` for copying data between | 8 This module adds a command to `prosodyctl` for copying data between |
10 storage drivers. | 9 storage drivers. |
11 | 10 |
12 Usage: | 11 Usage: |
13 `prosodyctl mod_migrate example.com <source-store> <target-driver> [users]*` | |
14 | 12 |
15 `<source-store>` would be e.g. `accounts` or `private` | 13 Usage: prosodyctl mod_migrate example.com <source-store>[-<store-type>] <target-driver> [users]* |
14 | |
15 `<source-store>` would be e.g. `accounts` or `private`. To migrate | |
16 archives, the optional suffix `<store-type>` would be set to `archive`, | |
17 so e.g. `archive2-archive` or `muc_log-archive`. | |
16 | 18 |
17 `<target-driver>` is the storage driver to copy data to, sans the | 19 `<target-driver>` is the storage driver to copy data to, sans the |
18 `mod_storage_` prefix. | 20 `mod_storage_` prefix. |
19 | 21 |
20 The process is something like this: | 22 The process is something like this: |
21 | 23 |
22 1. Decide on the future configuration and add this to your prosody | 24 1. Decide on the future configuration and add for example SQL |
23 config. | 25 connection details to your prosody config, but don't change the |
26 `store` option yet. | |
24 2. With Prosody shut down, run | 27 2. With Prosody shut down, run |
25 `prosodyctl mod_migrate example.com accounts sql` | 28 `prosodyctl mod_migrate example.com accounts sql` |
26 3. Repeat for each store, substituting 'accounts'. E.g. vcards, | 29 3. Repeat for each store, substituting 'accounts'. E.g. vcards, |
27 private... | 30 private... |
28 4. Change the `storage` configuration to use the new driver. | 31 4. Change the [`storage` configuration](https://prosody.im/doc/storage) |
32 to use the new driver. | |
29 5. Start prosody again. | 33 5. Start prosody again. |
34 | |
35 Examples | |
36 ======== | |
37 | |
38 for store in accounts roster private blocklist vcard archive2-archive; do | |
39 prosodyctl migrate example.com $store sql2 | |
40 done | |
41 | |
42 Compatibility | |
43 ============= | |
44 | |
45 Should work with 0.8 and later. |