Replicates insert-only tables, views and dynamic tables (through table recreation).
- Python 3.5
- SQLAlchemy
- sqlalchemy-utils
- sqlalchemy-views
- pid
- pymysql
Environment variables:
CONFIG_FILE
(required). Path to configuration fileSLEEP_TIME
(required). Sleep time in seconds between iteration and another
{
"replication_scheme_name": {
"source": {
"host": string,
"port": int,
"driver": "mysql",
"username": string,
"password": string,
},
"target": {
"host": string,
"port": int,
"driver": "mysql",
"username": string,
"password": string,
},
"databases": [{
"source": regex,
"target"?: string,
"naming_strategy"?: "replace" | "exact" | "original",
"exclude_tables"?: regex,
"include_tables"?: regex,
"dynamic_tables"?: regex
}],
"batch_size"?: 100000
},
"replication_scheme_name": { ... }
}
- Do not forget to set dynamic tables in
dynamic_tables
orexclude_tables
to prevent replicating them on automatic replication runs - Use
--only-dynamic-and-views
or-d
to replicate dynamic views on a manual fashion