replicatord.yml 2.88 KB
Newer Older
pryanikov's avatar
pryanikov committed
1
2
3
4
5
mysql:
    host: 192.168.2.13
    port: 3306
    user: tarantool
    password: tarant00l
pryanikov's avatar
pryanikov committed
6
    connect_retry: 15 # seconds
pryanikov's avatar
pryanikov committed
7
8
9
10
11

tarantool:
    host: 10.5.4.248:5000
    user: ""
    password: ""
pryanikov's avatar
pryanikov committed
12
    binlog_pos_space: 512
pryanikov's avatar
pryanikov committed
13
    binlog_pos_key: 0
pryanikov's avatar
pryanikov committed
14
15
    connect_retry: 15 # seconds
    sync_retry: 1000 # milliseconds
pryanikov's avatar
pryanikov committed
16
17

mappings:
pryanikov's avatar
pryanikov committed
18
19
20
21
      # Первая встреченная в конфиге таблица считается основной для спейса,
      # удаление записи в ней вызовет удаление записи и в Tarantool'е.
      # Удаление в следующих таблицах с таким-же id спейса удаления записи в Tarantool'е не вызовет,
      # вместо этого все поля будут забиты null'ами (с подстановкой, см. ниже)
pryanikov's avatar
pryanikov committed
22
23
24
    - database: Monamour2
      table: User
      columns: [ oid, email, login, prefix_id, confirmed, password, secret ]
pryanikov's avatar
pryanikov committed
25
      space: 513
pryanikov's avatar
pryanikov committed
26
27
28
29
30
31
32
33
      key_fields: [ 0 ]
      # insert_call: function_name
      # update_call: function_name
      # delete_call: function_name

    - database: Monamour2
      table: AnketaMini
      columns: [ oid, package_id, birthdate, country_id, region_id, city_id, metro_id, gender, orientation, lookfor, age, iam, target, status, system_status, language_id, partner_id, type, type2, type3, type4, search_mode, changed, created, updated, to_vip_status, theme_id ]
pryanikov's avatar
pryanikov committed
34
      space: 513
pryanikov's avatar
pryanikov committed
35
36
37
38
39
      key_fields: [ 0 ]

    - database: Monamour2
      table: AnketaNamesDescr
      columns: [ oid, name ]
pryanikov's avatar
pryanikov committed
40
      space: 513
pryanikov's avatar
pryanikov committed
41
42
43
44
45
      key_fields: [ 0 ]

    - database: Monamour2
      table: DefaultPhotos
      columns: [ anketa_id, oid, platform_id, extension, small_face, updated, moderated, huge_adult, rating_id, album_id, width, height, photo_params ]
pryanikov's avatar
pryanikov committed
46
      space: 513
pryanikov's avatar
pryanikov committed
47
48
49
50
51
      key_fields: [ 0 ]

    - database: Monamour2
      table: RealUser_Phone
      columns: [ anketa_id, number ]
pryanikov's avatar
pryanikov committed
52
      space: 513
pryanikov's avatar
pryanikov committed
53
54
55
56
57
      key_fields: [ 0 ]

    - database: Monamour2
      table: AnketaCounter
      columns: [anketa_id, photos_active, photos_adult ]
pryanikov's avatar
pryanikov committed
58
      space: 513
pryanikov's avatar
pryanikov committed
59
60
61
62
63
64
65
66
67
      key_fields: [ 0 ]

spaces:
    # Tarantool не умеет вставлять null'ы в поля, по которым есть индекс, а также при upsert'е зачем-то
    # сначала валидирует ВСЕ аргументы, а только потом делает либо вставку, либо апдейт.
    # Это проблема, если делать вставку из нескольких таблиц в один спейс, т.к. набор для вставки
    # приходится дополнять null'ами, чтобы количество полей было всегда одинаковым.
    #
    # column_id: { (string|integer|unsigned): value }
pryanikov's avatar
pryanikov committed
68
    513:
pryanikov's avatar
pryanikov committed
69
70
71
        replace_null:
            1: { string: "" }
            2: { string: "" }