{"id":18045284,"url":"https://github.com/dpb587/mysql-archive-bosh-release","last_synced_at":"2025-04-05T03:41:41.599Z","repository":{"id":138804474,"uuid":"73601957","full_name":"dpb587/mysql-archive-bosh-release","owner":"dpb587","description":"To create a backup from a MySQL database and restore it later.","archived":false,"fork":false,"pushed_at":"2017-01-02T17:03:25.000Z","size":15,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-10T11:48:26.875Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dpb587.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":"2016-11-13T07:33:45.000Z","updated_at":"2017-08-07T05:57:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"3f11d64d-08f5-401f-a43a-9fd1c04790c8","html_url":"https://github.com/dpb587/mysql-archive-bosh-release","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpb587%2Fmysql-archive-bosh-release","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpb587%2Fmysql-archive-bosh-release/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpb587%2Fmysql-archive-bosh-release/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpb587%2Fmysql-archive-bosh-release/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dpb587","download_url":"https://codeload.github.com/dpb587/mysql-archive-bosh-release/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247284914,"owners_count":20913691,"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":[],"created_at":"2024-10-30T18:12:43.582Z","updated_at":"2025-04-05T03:41:41.574Z","avatar_url":"https://github.com/dpb587.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mysql-archive-bosh-release\n\nTo create a backup from a MySQL database and restore it later.\n\n\n## Usage\n\n### Backup\n\nTo prepare for a backup, configure the [`mysql-backup`](jobs/mysql-backup/spec) job with `mysql` and `storage` links, as well as the `database` and `storage_bucket` properties...\n\n    jobs:\n      - name: \"mysql-backup\"\n        release: \"mysql-archive\"\n        consumes:\n          mysql: { from: \"mysql\", deployment: \"mysql\" }\n          storage: { from: \"storage\", deployment: \"storage\" }\n        properties:\n          database: \"wordpress\"\n          storage_bucket: \"my-wordpress-backups\"\n\nConfigure the instance as an `errand` or `service`. As an `errand`, invoke it like normal...\n\n    $ bosh run-errand backup-database\n\nAs a `service`, invoke it manually (it will not run on its own)...\n\n    $ bosh ssh -c /var/vcap/jobs/mysql-backup/bin/run database/0\n\nOr colocate with and configure the [`mysql-backup-scheduler`](jobs/mysql-backup-scheduler) with a `schedule` property...\n\n    jobs:\n      - name: \"mysql-backup\"\n        ...snip...\n      - name: \"mysql-backup-scheduler\"\n        release: \"mysql-archive\"\n        properties:\n          schedule: \"0 1 * * *\"\n\nOnce completed, a compressed file might be available at...\n\n    https://backup.storage.internal/my-wordpress-backups/backup-20161101T010004Z.sql.xz.gpg\n\n\n### Restore\n\nTo prepare for a restore, configure the [`mysql-restore`](jobs/mysql-restore/spec) job with `mysql` and `storage` links, as well as the `database` and `storage_bucket` property...\n\n    jobs:\n      - name: \"mysql-restore\"\n        release: \"mysql-archive\"\n        consumes:\n          mysql: { from: \"mysql\", deployment: \"mysql\" }\n          storage: { from: \"storage\", deployment: \"storage\" }\n        properties:\n          database: \"wordpress\"\n          storage_bucket: \"my-wordpress-backups\"\n\n\nConfigure the instance as an `errand` and run it like normal...\n\n    $ bosh run-errand restore-database\n\n\n### Encryption\n\nUse the `public_key` property of `mysql-backup` to encrypt backups with `gpg`, and use the `private_key` property of `mysql-restore` to decrypt backups.\n\n\n## License\n\n[MIT License](./LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdpb587%2Fmysql-archive-bosh-release","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdpb587%2Fmysql-archive-bosh-release","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdpb587%2Fmysql-archive-bosh-release/lists"}