How to troubleshoot MS SQL Server – Part 2

In this post we carry one from where we left off in the first part. Since we discussed what the L1 DBA (resident) should try and do when he is troubleshooting let’s look at our GP (I am continuing the analogy of how DBAs and like Doctors here too) now. A general practitioner of GP…

SQL Cuppa – A new skype handle and logo

Recently I tried to start a thing every Friday where database folks get together and chat over coffee or some other beverage. The intention was to share knowledge and experience among the community and get to meet your peers. As with most first attempts it didn’t go as expected but I did learn a lot…

Auditing via the T-log

A client of mine recently wanted to find out who deleted all the records from a table being used in production. This is an issue that we have all come across at some point in our careers. Usually the stage just before we finally implement audits or triggers to prevent these things from happening in…

Training Feedback 2015

  As with the previous 2 years we have finished analyzing our feedback data from all the trainings conducted over Jan 15 – Dec 15. Another remarkable year with amazing feedback score for our core metrics. This year however the analysis was done using MS SQL Server 2016 SSRS. We have tried to compress our…

How to troubleshoot MS SQL Server

I am sure the title must have piqued the interest of most DBAs since this is what we do every day. It’s also one of the most common questions I get when I conduct trainings as well.   Before I get into the details I want to call out that this post is not technical in…

SQL 2016 – Always encrypted

Here I try to summarize a lot of the information available on the MSDN website for the Always Encrypted feature being launched in SQL 2016. The primary concept to keep in mind here is that the application is the owner of the encryption keys and therefore the data comes to the database already encrypted. The…

SQL 2016 – Setting up Always Encrypted

A quick Step by step guide on setting up always encrypted on the server as well as the client, and a quick approach on migrating existing tables to Always Encrypted. Right click the database > Tasks > Encrypt Columns Press Next on the Introduction screen (BTW nice touch with the image) On the Column Selection…

SQL 2016 – In-Memory OLTP enhancements

A bit late in the day but I am still posting the changes to In-memory OLTP that are proposed for SQL 2016. Why? In-memory OLTP in SQL 2014 wasn’t production ready in my opinion but with the upcoming changes it’s become more compatible with what real world OLTP databases look like. I have arranged the…

SQL 2016 – Possible bug in temporal tables

I am not sure if this has been raised before, it seems like a very common scenario that I am sure most people will encounter but I wasn’t able to find any details on the internet or the connect website so here goes. While testing out temporal tables I found that if a record is…

SQL Cuppa Sessions

If you have been following me on LinkedIn recently you must have seen this update. Looking forward to having some fun SQL conversations, especially on what people think of SQL 2016 so far. One of the questions I have been asked is “How will we recognize you”? (I don’t have a lot of pics on…

Sample Script for Partitioning

First we create the database CREATE DATABASE PARTITIONSAMPLE GO — SET THE CONTEXT TO PARTITIONSAMPLE DATABASE USE PARTITIONSAMPLE GO — ALTER THE DATABASE TO ADD A NEW FILE GROUP , THIS ALLOWS US TO ADD ADDITIONAL DATA FILES WHICH IN TURN — WILL ALLOW THE DATABASE TO BE SPLIT OVER MULTIPLE DISK , REDUCNG DISK…