Over the past several months I have worked with customers who have been implementing EMC Data Domain Boost for SQL Server. A common challenge for these customers is automating backups and restores using SQL Server tools such as T-SQL, maintenance plans, and agent jobs. I have posted about this previously here but found some organizations still needed additional help getting started. This led me to create the SQL Server Data Domain Boost Scripting Toolkit to provide DBAs with a head start. Currently the toolkit provides T-SQL stored procedures and a table definition to provide additional functionality on top of EMC’s Data Domain Boost for SQL Server.
The toolkit is published on GitHub at this address https://github.com/dmuegge/ddb-sql-toolkit. The toolkit is licensed under the MIT open source license agreement.
With this post I felt a demo video would provide the most value and you can also find documentation on using the toolkit in the scripts and files included with the toolkit. The video is approximately 24 minutes, Enjoy.
The goal of the SQL Server Data Domain Scripting Toolkit is to provide DBAs with a head start to T-SQL scripting and automation using DD Boost for SQL Server which is part of Data Domain Boost for Microsoft Applications. The initial toolkit utilizes the xp_cmdshell system stored procedure in a set of T-SQL stored procedures to execute the DD Boost for SQL executables. I also hope to extend this toolkit in the future with additional options to utilize SQL DD Boost.
See the previous post I wrote which led me to create the SQL Server Data Domain Boost Scripting Toolkit. I hope someone finds this toolkit useful. Please provide any feedback and updates to the toolkit.
I like the way that you have setup the toolkit. It is a very handy way to administer ddboost without using the plugin. I have modified your restore to be able to rename the database since this is functionality that we will use. We initially had a few problems with setting up the renaming since the manual has a lot to be desired when it is explaining something. I can send you my changes if you want them to incorporate into your procedure.
Sorry for the late reply and thanks for the input. I would like to see any improvements and incorporate them.
Great kit thank you.
However the relocation of log files when restoring does not work out of the box, nor does setting a BackupTimeStamp. Just formatting errors.
I have an amended script if you wish.
Thank you for the comment and yes any fixes you have will be appreciated. I had hoped folks would find it useful and improve on it.
[…] Update: This work has been expanded upon in the following post – DD Boost T-SQL Scripting Toolkit […]
Hi David. Wonderful toolkit. I am really getting some good mileage with it.
I have been using it with SQL 2008 2012 2014, but just recently came upon a little glitch.
With SQL 2014, replicated db, when i run the backup using your tool, or with EMC generated SQL in a query window, the C:\Program Files\EMC DD Boost Modules\DDBMA\logs\ddbmsqlsv.raw log file does not get updated/created. The backup completes successfully, just no update/create of the log file. If i run the command line version, the log gets updated. If i run the backup from EMC gui, the log gets updated. It happens on both nodes. Trying to determine if it’s the replication, or maybe the 2 Windows servers build/permissions. Any thoughts would be appreciated. Many Thanks! ~ mark
The successful writing to the ddbmsqlsv.raw log with SQL 2014 is running on Windows 2008 R2.
The unsuccessful writing to the ddbmsqlsv.raw log with SQL 2014 is running on Windows 2012 R2.
It turns out it was a permissions/policy issue with the user running the backup.
Even with local admin rights to the server and sql sysadmin rights, the user was unable to backup with ddboost via sql. I will post what change was made when i find out.
Good to hear and any improvements are welcome. Glad to hear you are finding the toolkit useful.
I was just wondering if you version on github as the issues fixed mentioned in the other comments or not? I would really like to try this out but if things like renaming are not working, I know I am not smart enough to figure out how to fix your code.
The toolkit was really meant to provide DBA’s with a good starting point with a framework to use SQL DD Boost and integrate with T-SQL. I am currently updating my lab with the 2.0 version of the plugin and hope to address some of the issues folks have mentioned. Although, this is very much a spare time project for me and I just cannot guarantee if and when issues will be addressed.
Yay! I got it to work.
I just had to modify the instance name from MSSQL to MSSQL$<myinstance?
Something that I could not quite figure out yet is: How do I restore with a new DB name?
Thanks for this fantastic toolkit. It really helped getting started faster.
You did not show the log ship restore output logs in your video. Did it restore just the log(s)? How does it know which logs have not yet been applied? (or did it just do a full point-in-time restore to the last log?
First time I am trying to implement Data Domain backups and found your scripts. But when i am trying to test full backup script i am getting below error. Can you please let me know if i am missing some thing here?
‘ddbmsqlsv.exe’ is not recognized as an internal or external command,
operable program or batch file.
Hello, I no longer maintain this code as EMC has built much of this functionality into the newer versions of DDBMA. I would recommend looking at the latest documentation.