summary refs log tree commit diff
path: root/debian/synapse_port_db.ronn
blob: e167af2ba499dbd005b391715dfd97f40aa340bd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
synapse_port_db(1) -- A script to port an existing synapse SQLite database to a new PostgreSQL database.
=============================================

## SYNOPSIS

`synapse_port_db` [-v] --sqlite-database=<dbfile> --postgres-config=<yamlconfig> [--curses] [--batch-size=<batch-size>]

## DESCRIPTION

**synapse_port_db** ports an existing synapse SQLite database to a new
PostgreSQL database.

SQLite database is specified with `--sqlite-database` option and
PostgreSQL configuration required to connect to PostgreSQL database is
provided using `--postgres-config` configuration.  The configuration
is specified in YAML format.

## OPTIONS

  * `-v`:
    Print log messages in `debug` level instead of `info` level.

  * `--sqlite-database`:
    The snapshot of the SQLite database file. This must not be
    currently used by a running synapse server.

  * `--postgres-config`:
    The database config file for the PostgreSQL database.

  * `--curses`:
    Display a curses based progress UI.

## CONFIG FILE

The postgres configuration file must be a valid YAML file with the
following options.

  * `database`:
    Database configuration section.  This section header can be
    ignored and the options below may be specified as top level
    keys.

    * `name`:
      Connector to use when connecting to the database.  This value must
      be `psycopg2`.

    * `args`:
      DB API 2.0 compatible arguments to send to the `psycopg2` module.

      * `dbname` - the database name

      * `user` - user name used to authenticate

      * `password` - password used to authenticate

      * `host` - database host address (defaults to UNIX socket if not
        provided)

      * `port` - connection port number (defaults to 5432 if not
        provided)


    * `synchronous_commit`:
      Optional.  Default is True.  If the value is `False`, enable
      asynchronous commit and don't wait for the server to call fsync
      before ending the transaction. See:
      https://www.postgresql.org/docs/current/static/wal-async-commit.html

Following example illustrates the configuration file format.

    database:
      name: psycopg2
      args:
        dbname: synapsedb
        user: synapseuser
        password: ORohmi9Eet=ohphi
        host: localhost
      synchronous_commit: false

## COPYRIGHT

This man page was written by Sunil Mohan Adapa <<sunil@medhas.org>> for
Debian GNU/Linux distribution.

## SEE ALSO

synctl(1), hash_password(1), register_new_matrix_user(1), synapse_review_recent_signups(1)