 | A community of more than 1,600,000 database professionals and growing |
| | Backups Aren't Backups Until a Restore Is Made One of the interesting things I saw in the recent GitLab outage and data loss was the fact that none of their backups were available. They use PostgreSQL and I'm not familiar with the ways in which the modern PostgreSQL engine handles backups or the options you have, so I'm not knocking either GitLab or PostgreSQL. It's possible one or the other had fewer options than we do with SQL Server with our full, differential, log, and filegroup backups, all during live database activity. There was a live stream and a Google Doc open during the incident, showing the response by their employees (and plenty of Hacker News comments). Kudos to GitLab for their bravery and transparency in showcasing their mistakes and choices. I've been in similar situations, and the war room can be chaotic and stressful. There have been no shortage of times when someone makes a mistake under pressure and we scramble to recover from the damage. I've made those mistakes and understand how they happen when you get desperate and are tired. This is one reason I've usually insisted that when an incident is declared, I immediately send at least one person home to rest. I never know what time I'll need to get them back. In reading the notes, there are a number of issues. One of the respondents doesn't know where the once a day backups are stored (1). The location they check has files only a few bytes in size, so backups might not be working (2). No disk snapshots in their Azure space for database servers (3), though the NFS servers get them. The snapshot process is incomplete, in that once snapshots are made, some data is removed from production, and will be lost in this recovery (4). The backups to S3 don't work (5). All of this results in a backup that is six hours old being restored. For people that commit code often, this could be a lot of data. Hopefully there weren't too many merges and branch deletions in this time for customers. A backup doesn't matter. A restore matters. It doesn't matter what backup process you have, if you don't test it, then you don't know if you can recover. In fact, with databases (really any system), you need to test the restores regularly because the backup process can fail. I learned this early in my career when one of our admins realized his fancy tape changer that let him only change tapes once a week was broken. The drive had stopped writing and he never noticed. Not only is it important to monitor that the backup process runs, it's important to ensure the backup files exist, where we expect them to exist. If this is a remote location, you need monitoring there as well. It's also important to restore backups regularly. Ideally you'd test every one, but at least get a regular rotation of testing once a week to ensure your process is working. If you don't, then you risk not only data loss, as GitLab experienced, but an RGE. That's a resume generating event, and it's something none of us would like to experience. Steve Jones from SQLServerCentral.comJoin the debate, and respond to today's editorial on the forums |
| The Voice of the DBA Podcast Listen to the MP3 Audio ( 5.9MB) podcast or subscribe to the feed at iTunes and Libsyn. The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music. | |
|
|
| ADVERTISEMENT |  | How can you help your team write better, shareable SQL faster? Find out by discovering 15 Super SQL Tips from Microsoft MVPs and other SQL Server experts. Using SQL Prompt to write, refactor, and share SQL, they show how it strips away the repetition of coding and standardizes it everywhere. View the tips and download a free trial. |
|
|
|
| |  | Jerod Johnson from SQLServerCentral.com This article demonstrates using Angular2 and the CData API Server to build dynamic Web pages using SQL Server data. More » |
 | Additional Articles from Database Journal Have you ever had a need to place some simple row level security on a SQL Server table? Well now you can do that in SQL Server 2016 by using row level security. More » |
 | Andreas.Wolter from SQLServerCentral Blogs (EN) In this article I will bring together several techniques for troubleshooting a performance as well as a security related “phenomenon”... More » |
|
|
| | Today's Question (by Junior Galvão - MVP): When running a DBCC SHRINKFILE, which file types have their sizes changed using the TruncateOnly option? |
Think you know the answer? Click here, and find out if you are right.
We keep track of your score to give you bragging rights against your peers. This question is worth 1 point in this category: SHRINKFILE. We'd love to give you credit for your own question and answer. To submit a QOTD, simply log in to the Contribution Center. |
|
|
| |
ADVERTISEMENT | The Definitive Guide to DAX: Business intelligence with Microsoft Excel, SQL Server Analysis Services, and Power BI - This comprehensive and authoritative guide will teach you the DAX language for business intelligence, data modeling, and analytics. Leading Microsoft BI consultants Marco Russo and Alberto Ferrari help you master everything from table functions through advanced code and model optimization. Get your copy from Amazon today. |  | |
|
|
|
|
|
| Yesterday's Question of the Day |
| |
| Database Pros Who Need Your Help |
| Here's a few of the new posts today on the forums. To see more, visit the forums. Query to take the backup - I need a query to take the differential backup of all the databases in sql ? can any one help .. Thanks, 2 consecutive timestamps greater than 4 hours - Hello SSC, I posted this question earlier yesterday, but I don't think I asked the question correctly, so I will try... Interview Question - Hi. Recently I have attended a couple of interviews. I have faced a similar question about stored procedures. What are... setting up DBMail - Hi. I am setting up database mail for the first time and have gotten test emails to go to the... Very large Indexes (~3TB) and need to rebuild fast - Hi, Hi, We have a 40 TB DB, and have some big tables and few indexes which are too big now to... TDE after restoring to a Different Instance - Hi Experts, I have a TDE enabled database and i successfully restored it to another instance of SQL after restoring the... Query to show users who have been active for 4 hours straight - Hello, I am having issues with this query. I have a table which has a UserID and a datetime stamp. The... SSIS Delete rows in EXCEL workbook - I am trying to process files that I receive through email, I have them being saved in a directory, I... AlwaysOn Availabilty Group listener connection issues - Hi, I'm hoping someone can offer some suggestions on what to look at here as we're getting a little stumped. Currently... How to write a string to a file in SQL. - Hello All, I want to write a varchar(max) string to a file. The file should be UTF-8 (and not in a multi... convert HH:MM:SS to datetime - I receive duration data that is in hh:mm:ss format and stored in nvarchar(50) column I want convert that to datetime by... HOW TO RUN THE SAME SCRIPT TO RETRIEVE DATA FROM MULTIPLE DATABASES - Greetings, i have a challenge, who can point me or show me the simplest how to for retrieving data from multiple... Rank records including datediff between records - I need to find records based on this identifier, IDXMRN, that have a NoteName='PCCP' with subsequent NoteNames='Care Coordination Note'. I need... Seq No based on the column values reappearing. - HI All, i have the data in the below format in the table. What i need to do is i to... High Memory Usage - In our production server , memory usage is around 95% even tho it has been capped (8 GB ) . Total memory 12... modifying a 'replace' function to use Lower and Upper - I have a function that I'm using that is working with one glitch. It is designed to change non-English characters... SSRS Group Total does not match Excel - Am trying to create an SSRS report based off an Excel query. The source is an SSAS database. The hierarchy... connection manager time of day configuration - Microsoft Visual Studio Premium 2012 Version 11.0.61219.00 Update 5 Microsoft .NET Framework Version 4.6.01055 Microsoft SQL Server Integration Services Designer Version 11.0.3369.0 Microsoft... FAQ: Using the new forum Software (Jan 2017) - After we completed the forum upgrade on Jan 12, 2017, quite a few things changed, so this thread is a... Automatically create column names for flat file connector - Is there a simple way to get the SSIS flat file connector to automatically use column names when the incoming... |
|
| This email has been sent to newsletter@newslettercollector.com. To be removed from this list, please click here. If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com.
| This newsletter was sent to you because you signed up at SQLServerCentral.com. Feel free to forward this to any colleagues that you think might be interested. If you have received this email from a colleague, you can register to receive it here.
| This transmission is ©2015 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved. Contact: webmaster@sqlservercentral.com |
|
|