| A community of more than 1,600,000 database professionals and growing |
| | Someone Lost My Data It was bound to happen. I'm sure it's happened before, but this event was interesting to me as it wasn't a customer issue, but a cloud vendor problem. There was an outage in Azure on Jan 29, which happens, but in this case data was lost. There was problem internal code in the Azure cloud that dropped some customer databases using the Azure Key Vault with TDE encryption. That was slightly disconcerting for me as I was setting up and testing Azure Key Vault this week. There are frequent snapshots and Microsoft was able to restore the databases from one that was about five minutes old. Microsoft acknowledges that five minutes of data loss might be an issue and is asking customers that lost business or were affected by the drops to raise a support ticket. I have found Azure support to be pretty good about crediting my account when issues occur, and I hope they do the same here, though I wonder if they'll compensate anything beyond the charges normally assessed to customers. They are offering credit for the restored and original databases for a few months as well. Plenty of people are upset, and with good reason. There should not be Azure management code that drops databases. Or should there be? Would this be any different on premises? I've had cleanup code that removed resources after some time. I don't work at the scale of Azure, so I usually have things removed after a month or quarter. With the scale of Azure and potential costs, they might remove resources quicker, but I certainly have seen similar home grown, if-this-then-that code that does x when y occurs. In this case, I remove encryption keys, which might be not actually be removed for month or more. At that point, there is code that trigger a drop of databases. I've certainly seen users in various organizations drop, or restore over, the wrong database. In some cases they don't realize it in five minutes, and often don't have a way to restore from a five minute ago backup. Actually, relatively few people I know have RPOs under five minutes. This is bad, but it isn't necessarily out of the ordinary for complex IT environments. If this happened in an organization, the IT staff would be worried and hoping for forgiveness. Some people would want others fired, but most of the time management would understand these things happen. Perhaps not if this isn't the first time, but usually we accept some people make mistakes. Most of us don't have complete control of all aspects of our environment. We depend on network staff, storage people, employees that manage hardware, and more. It's possible that any one of these people could destroy data inadvertently. That happened here, though I don't want to make excuses for Microsoft. They're supposed to hire the best people and build processes that are better than what I'd expect inside an organization. Events will cascade into different areas, and there should be circuit breakers that prevent anything that could cause data loss in those events. Protect other people's data with more care than you think you need. It's your responsibility to do so. 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 ( 4.7MB) 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 | | Become a more efficient SQL developer with SQL Prompt Learn how to write SQL faster and more efficiently with these exclusive short videos from Data Platform MVPs and SQL Server experts. With SQL Prompt you can strip out the repetition of coding and write SQL 50% faster. Check out the tips |
| |
|
|
| | | Konstantin Taranov from SQLServerCentral.com This article is a complete list of all SQL Server trace flags - 593 trace flags. More » |
| Kendra.Little from SQLServerCentral.com Kendra Little explains why Redgate would like to hear your stories of how the database has been left behind. More » |
| In the first two articles in this series on creating DAX formulae, Andy Brown of Wise Owl Training showed how to create calculated columns and measures. In this third article, he turns his attention to two of the most important DAX functions (CALCULATE and VALUES), showing how and when to use them. If DAX knowledge can be compared to a heavily fortified castle, the CALCULATE function is the drawbridge giving access to it. More » |
| Like any good tool, SQL Prompt not only will format your code for you, but will also help you to format the code in an alternative manner, or to apply exceptions to certain parts of a SQL script, where the formatting applies by the current style isn't what's required. More » |
| Arthur Daniels from SQLServerCentral Blogs This is the sequel to “It’s always parameter sniffing (part 1).” In that post, we identified the stored procedure, and... More » |
| SQLServerSteve from SQLServerCentral Blogs By Steve Bolton …………One of the major thrusts of my various mistutorial series has been to drive home the point that... More » |
|
|
| | Today's Question (by Steve Jones): I have this table in SQL Server 2017: CREATE TABLE dbo.SalesOrderHeader ( OrderKey TINYINT IDENTITY(1, 1) , CustomerName VARCHAR(30) ) GO INSERT dbo.SalesOrderHeader (CustomerName) VALUES ('Andy') INSERT dbo.SalesOrderHeader (CustomerName) VALUES ('Brian') INSERT dbo.SalesOrderHeader (CustomerName) VALUES ('Steve') GO Now I run this code to reset the seed. DBCC CHECKIDENT('dbo.SalesOrderHeader', RESEED, 0) If I run this, what is returned? SELECT IDENT_SEED('dbo.SalesOrderHeader') |
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: IDENTITY Property. 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 | Extract, Transform, and Load with SQL Server Integration Services: With Microsoft SQL Server, Oracle, and IBM DB2 Readers will learn by example how to use Microsoft SQL Server 2016 Integration Services (SSIS) as they design and implement extract, transform, and load (ETL) solutions to support a business application that integrates with a data warehouse and an online Web store across a heterogeneous system. This volume describes proven methods to support common ETL needs, such as databases communicating directly with each other, using files to exchange data, or performing database operations using Web services. Pick up your copy of this great book today at Amazon today. |
|
|
|
|
|
| Yesterday's Question of the Day |
| Yesterday's Question (by Steve Jones): I have this data frame in R. > head(nfl2018.qb) Rk Player Tm Age Pos G GS QBrec Cmpâ.. Att CompPrcnt Yds TD 1 1 Ben Roethlisberger\\RoetBe00 PIT 36 QB 16 16 9-6-1 452 675 67.0 5129 34 2 2 Andrew Luck\\LuckAn00 IND 29 QB 16 16 10-6-0 430 639 67.3 4593 39 3 3 Kirk Cousins\\CousKi00 MIN 30 QB 16 16 8-7-1 425 606 70.1 4298 30 4 4 Matt Ryan\\RyanMa00 ATL 33 QB 16 16 7-9-0 422 608 69.4 4924 35 5 5 Patrick Mahomes*\\MahoPa00 KAN 23 QB 16 16 12-4-0 383 580 66.0 5097 50 6 6 Derek Carr\\CarrDe02 OAK 27 QB 16 16 4-12-0 381 553 68.9 4049 19 I want to find out who in this group is an older player, defined as over 35. What code gives me data frame of this set of players? Answer: subset(nfl2018.qb, Age>=35) Explanation: The subset() function will return a dataframe that is a set of data, based on the criteria of the second parameter. Ref: subset data in R - click here » Discuss this question and answer on the forums |
|
|
| | Database Pros Who Need Your Help |
| Here's a few of the new posts today on the forums. To see more, visit the forums. SQL Script - Hi All, Could you please help me in get the script for below scenario: Table Creation and Insertion: CREATE TABLE .( (50) NULL, ... Visual studio 2017 data tool SSIS with Oracle OLEDB data source - We recent upgraded our server from 2014 to SQL 2017. And we use visual studio 2017 data tools for SSIS,... Offsite backups - So this week I'm a BI Developer turned DBA (not by choice) and am looking into off-site backups for a couple... Why are my 2 Transaction Logs growing at roughly the same speed? - I think I may have the answer, I just cannot find the definitive version. I have a database with 2... Columnstore Indexes - do we need to perform any maintenance on them? - Hi all Our devs are about to implement columnstore indexes on a couple of their DBs. I've been thinking about what... Reporting Services Migration Problems - I am trying to get SSRS running on Server #2, copied from Server #1 What I've done so far. - Backup Reports... A real doozie! - Microsoft SQL Server 2016 (SP1-GDR) (KB4019089) - 13.0.4206.0 (X64) I am performing a very simple table insert and seeing the dreaded Msg... Odd issue, DBA says due to parameter sniffing, could use advice, please... - I manage this 1 data warehouse company (an Active Directory snapshot data warehouse), approx. 40M rows of data total, 1 app that... control order of execution within a stored procedure? - I have problem where a stored procedure is daily executed as part of an SSRS subscription, but the last of... Tuning Query In Stored Procedure - Below table contains five millions of records. My Table Structure CREATE TABLE .( (50) NOT NULL, (2) NOT NULL, ... Login failed for cross domain - Hello All, We have DEV and UAT domain. I am trying to create replication from UAT to DEV and vice versa.... Question on Grouping -Working number of days - Hi All, I am trying to work out the number of days for each (CODE) from the Code (REQUEST DATE) till... Convert string MMDDYYYY to a date - First I will say I've found a couple different SQL solutions for this, I'm asking if there is a better... insert with output clause - I have an insert with an output clause where one of the outputted columns is not in the inserted list,... Join an unbound recordset to a bound one. - I am working with Excel and MS SQL 2008. I defined a virtual (unbound) recordset based on data from Excel named... Increment dates for a set of records - Hi all, I have a table of records. The table contains a date field and so each record is dated. So... I wanted to delete records from a big table. - Hello, I have a table with 200 millions records and the table has p_Index] int IDENTITY(1,1) NOT NULL, SessionID] (1000) NULL, ... Deadlock issue - Hi All, I am going through a strange issue. We have a very simple file processing system with users submitting reports... SSRS Chart filter working backwards - I'm working in VS2010, where I have two identical bar charts in an SSRS report (one is literally a copy... Creating a custom field and creating an expression to populate it - Hi, I'm looking to create a custom field and am not 100% sure if I can use an SQL statement to... |
|
| This email has been sent to [email protected]. To be removed from this list, please click here. If you have any problems leaving the list, please contact the [email protected]. | 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 ©2018 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved. Contact: [email protected] |
|
|