I know many DBA build custom solutions to restore databases for some application. But in many cases I find customers are restoring same user databases manually again and again. Even if restores only take 5-10 minutes, over the period of week or month it takes way time away from important tasks.
As DBAs are always fighting the fires, this creates a bottleneck for development team to request restores and complete them without issues quickly.
I created a solution, https://github.com/sqlcan/AutoResEng, just for this purpose. This solution allows developers to request a restore. It doesn’t grant any elevated permissions.
Users logging in the dashboard can see their restore requests and their status. If is pending request the status in queue. If a DBA logs in they can see full queue of requests and most recent requests completed.
A user or DBA can also schedule a restore request just as easy by going to “Submit a Restore Request”.
Once request is submitted via PowerShell automation solution, request is collected and executed.
After request is completed an output is generated via email and accessible from landing page.
The goal of the tool is remove DBA as a blocker and free up-DBA time for simple restore requests. The solution is designed to make sure when restoring all the settings, database owner, permissions are reverted back to pre-restore. All production security is deleted.
This solution is designed to go from PROD to UAT/DEV/TEST. All though there are no restrictions to go in any direction, it is not intended to move workloads to PROD.
Try it out, let me know what you think. Or fork the solution and submit your own updates!