{"id":15295824,"url":"https://github.com/lynxline/momyre","last_synced_at":"2026-02-05T15:31:18.885Z","repository":{"id":37580468,"uuid":"506000707","full_name":"LynxLine/momyre","owner":"LynxLine","description":"MOngo to MYsql simple REplicator. The package is the missing link to run replication process from the mongo cluster to the mysql databse","archived":false,"fork":false,"pushed_at":"2023-12-27T22:03:03.000Z","size":87,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-01T23:04:21.803Z","etag":null,"topics":["database","databases","docker","mariadb","mariadb-database","mariadb-replication","mongo","mongo-mariadb","mongo-mysql","mongo-replication","mongodb","mysql","mysql-database","replica","replica-set","replicaset","replicate","replication","replication-package","replicator"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/LynxLine.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-06-21T20:54:05.000Z","updated_at":"2024-06-06T13:53:08.000Z","dependencies_parsed_at":"2023-12-27T22:47:31.761Z","dependency_job_id":"e7d572a0-7c46-4e83-b467-625af97271f1","html_url":"https://github.com/LynxLine/momyre","commit_stats":null,"previous_names":["yshurik/momyre"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/LynxLine/momyre","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LynxLine%2Fmomyre","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LynxLine%2Fmomyre/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LynxLine%2Fmomyre/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LynxLine%2Fmomyre/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LynxLine","download_url":"https://codeload.github.com/LynxLine/momyre/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LynxLine%2Fmomyre/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263047660,"owners_count":23405280,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","databases","docker","mariadb","mariadb-database","mariadb-replication","mongo","mongo-mariadb","mongo-mysql","mongo-replication","mongodb","mysql","mysql-database","replica","replica-set","replicaset","replicate","replication","replication-package","replicator"],"created_at":"2024-09-30T18:08:19.110Z","updated_at":"2026-02-03T16:12:07.688Z","avatar_url":"https://github.com/LynxLine.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MOMYRE\n\nWhat is it?\n\n# MOngo to MYsql simple REplicator\n\n## Intro\n\nThe repository is missing link to run replication process from the mongo cluster to the mysql databse\n\nThat way the data from mongo databse can be used with\nany compliant application for making sql queries over the data replicated from mongo databse.\n\nAlso note Momyre is a work in progress and currently has some limitations.\n\nThe docker image is compact (~20MB) alpine-based, can run on Linux / Mac / Windows with\nappropriate setup of Mongo custer and MySQL databse\n\n## Disclaimer\n\nI am not a database expert and I don't know whether Momyre is actually perfectly safe for \nreplication. I wouldn't recommend using for anything highly sensitive until you \nproof it fill your needs with appropriate restrictions.\n\n## Download the software\n\nPC: linux/amd64:\n```bash\ndocker pull yshurik/momyre:latest\n```\n\n## Run stages\n\nFirst momyre gets list of exisiting tables and compare with list of mappings.\n\nIf there are extra tables it will create them.\n\nAlso momyre gets list of columns in tables and compare with list of mappings.\n\nIf there are extra columns it will create them.\n\nIf some table/column is not present in mappings, momyre wil want to remove it.\n\nTo have it removed the momyre needs to run with ```--force``` options\n\n## Examples of mapping data\n\n``` yaml\n  emails:\n    from: \"varchar(100)\"\n    rcpt: \"varchar(100)\"\n    subj: \"varchar(100)\"\n    body: \"blob\"\n```\n\nCan also map arrays into blobs as json:\n\n``` yaml\n  emails:\n    from: \"varchar(100)\"\n    rcpts: \"blob\"\n    subj: \"varchar(100)\"\n    body: \"blob\"\n```\nIn last case if you have an mongo object with multiple recipients like:\n``` json\n{\n  \"from\" : \"test@test.com\",\n  \"rcpts\" : [\n    \"test1@test.com\",\n    \"test2@test.com\"\n  ],\n  \"subj\" : \"test\",\n  \"body\" : \"test\"\n}\n```\nThen mysql/mariadb column \"rcpts\" will have blob with json \n``` json\n[ \"test1@test.com\", \"test2@test.com\" ]\n```\n\n## Running momyre docker container\n\nThe docker container can be started with appropriate config mappings.\n\n```bash\ndocker run -v ./momyre.yml:/momyre/momyre.yml -d --name momyre yshurik/momyre:latest\n```\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flynxline%2Fmomyre","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flynxline%2Fmomyre","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flynxline%2Fmomyre/lists"}