Connects to MySQL/MariaDB via the replication protocol, and sends updates to Sphinx.
docker-compose up
-
Install Go
-
Install dep
-
Build
$ make
-
Configure MySQL/MariaDB
binlog_format
must beROW
binlog_row_image
must beFULL
(otherwise you may not be able to determine which documents should be updated)
-
Configure Sphinx
-
index
sync_state
should exist and have the following structuretype = rt rt_attr_string = binlog_name rt_attr_uint = binlog_position rt_attr_string = gtid rt_attr_string = flavor
-
for every RT-index there should be a plain index with
_plain
suffix -
if an index is partitioned, then its parts should have the same schema and names that end with
_part_0
,_part_1
, etc. -
searchd
should expect all index files to be in the same folder (i.e.path
of each index should have the same dirname)
-
-
Configure go-mysql-sphinx
See example config file river.toml.
-
Run
$ ./bin/go-mysql-sphinx [-config config-file]