{"id":18436535,"url":"https://github.com/trimble-oss/sql-log-shipping-service","last_synced_at":"2025-07-17T05:34:29.871Z","repository":{"id":227517896,"uuid":"651440436","full_name":"trimble-oss/sql-log-shipping-service","owner":"trimble-oss","description":"This project provides a solution for automatically restoring SQL Server transaction log backups.  Designed for scale.  Works directly with backups in Azure blob or UNC path","archived":false,"fork":false,"pushed_at":"2024-07-10T13:52:34.000Z","size":280,"stargazers_count":46,"open_issues_count":1,"forks_count":7,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-11-23T07:33:16.597Z","etag":null,"topics":["sql-server"],"latest_commit_sha":null,"homepage":"","language":"C#","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/trimble-oss.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":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-09T08:38:52.000Z","updated_at":"2024-09-02T22:27:55.000Z","dependencies_parsed_at":"2024-03-29T12:28:47.042Z","dependency_job_id":"dc1825a5-8ace-4688-96f4-0cfbcc97339c","html_url":"https://github.com/trimble-oss/sql-log-shipping-service","commit_stats":null,"previous_names":["trimble-oss/sql-log-shipping-service"],"tags_count":28,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trimble-oss%2Fsql-log-shipping-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trimble-oss%2Fsql-log-shipping-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trimble-oss%2Fsql-log-shipping-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/trimble-oss%2Fsql-log-shipping-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/trimble-oss","download_url":"https://codeload.github.com/trimble-oss/sql-log-shipping-service/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230501172,"owners_count":18236061,"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":["sql-server"],"created_at":"2024-11-06T06:11:54.965Z","updated_at":"2024-12-19T21:08:40.998Z","avatar_url":"https://github.com/trimble-oss.png","language":"C#","funding_links":[],"categories":["SQL Server Web Resources"],"sub_categories":[],"readme":"# SQL Log Shipping Service \n\nThis project provides a solution for automatically restoring SQL Server transaction log backups. Implemented as a .NET application that runs as a Windows service, it provides the following features:\n\n* **Simple config based setup.** *Eliminates the need for per-database basis configuration.  Very effective for handling a large number of databases*\n* **Automatic initialization of new databases**. *Incorporate new databases without any manual intervention*\n* **UNC path or URL (Azure Blob or S3).** *Additional flexibility to work directly with Azure blob containers, S3 buckets or standard UNC paths.  e.g. `\\\\server\\share`*\n* **Scalable.** *The log shipping service allows for a configurable number of threads so your SQL instance isn't overloaded with a job per database or constrained by a single job.  The service is efficient and can scale to a large number (thousands) of databases*\n* **Standby mode support.** *Allow users to query your log shipped databases.  Prevent open connections from blocking log restores with options to kill sessions after a period of time. Keep your databases available for querying during certain hours.  Standby option is only applied after the last log is restored (more efficient than built-in log shipping)*\n* **A disaster recovery tool**.  *Beyond the tools primary capability as a log shipping tool, it can also be used as part of your disaster recovery strategy to restore your databases from backup.*\n\n## Intended Audience\n\nIdeal for anyone looking to implement log shipping or needing a reliable process for database recovery from backups. Especially beneficial for environments with a large number of databases or utilizing BACKUP TO URL, where alternative solutions are limited. Suitable for both small and large-scale database environments.\n\n## Getting Started\n\nThe [Quick Start](../../wiki/Quick-Start) guide will help you get up and running quickly.  The [wiki](../../wiki) also provides documentation on all the features and functionality of the tool.\n\n👉 [Get Started Here](../../wiki/Quick-Start)\n\n## Architecture\n\n![Diagram](images/diagram.png)\n\nThe tool runs as a Windows service, configured using an *appsettings.json* config file.  Log restores are run on a specified [schedule](../../wiki/Schedule) with a configurable number of threads processing the restores.  It can restore logs from a file share or from Azure blob.  For each database in a restoring or standby state, it enumerates the files for the database, checks the restore headers and restores the appropriate log files.\n\nNew databases can be [initialized](../../wiki/Initialization) by specifying the Full/Diff backup paths OR by specifying a connection string to the primary server.\n\nDesigned solely for restoration, this service complements backup solutions like [Ola'Hallegren's](https://ola.hallengren.com/) maintenance solution, which offer parallel backup capabilities and [support for BACKUP TO URL](https://gist.github.com/scheffler/7edd40f430235aab651fadcc7d191a89).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrimble-oss%2Fsql-log-shipping-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftrimble-oss%2Fsql-log-shipping-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftrimble-oss%2Fsql-log-shipping-service/lists"}