QuickQuestion: When Stored Procedure break execution on error?

QuickQuestion series is a series of short posts in which I answer database related questions asked by my colleagues, friends, and co-workers, mainly application developers.

Today’s question:

When Stored Procedure break execution on error?

Continue reading “QuickQuestion: When Stored Procedure break execution on error?”

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

QuickQuestion: Does Stored Procedure rollback on error?

QuickQuestion series is a series of short posts in which I answer database related questions asked by my colleagues, friends and co-workers, mainly application developers.

Today’s question:

Does Stored Procedure rollback on error?

Continue reading “QuickQuestion: Does Stored Procedure rollback on error?”

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

XE Profiler – the new feature available in SSMS v17.3

SSMS v17.3At the end of September during Microsoft Ignite event Microsoft announced new SQL Server 2017. On this conference, Bob Ward (b|t) a Principal Architect for the Microsoft Database Systems Group delivered a great session titled: Experience Microsoft SQL Server 2017: The fast and the furious. In 70 minutes he led us into the amazing world of SQL Server 2017 features. During this presentation he used a preview version of SQL Server Management Studio v17.3 and did a quick demo of XE Profiler – one of the new features (youtube).

Few days ago I had a great opportunity to play with SSMS v17.3 (build 14.0.17199.0) and I want to describe you how the XE Profiler works.  Continue reading “XE Profiler – the new feature available in SSMS v17.3”

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

How to change configuration setting when your SQL Server instance cannot start

Recently one of my colleagues asked me for help with his SQL Server instance. He made a mistake while configuring Maximum Server Memory and his instance was not able to run because of wrong memory settings. He set it to low 10MB instead of 10GB. I was working on customer related issues which couldn’t wait, so I asked other DBA to help him with this. Of course everything was fixed in a few minutes. Later I realized that’s good topic for my next blog post.  So it is… Continue reading “How to change configuration setting when your SQL Server instance cannot start”

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

SQL Saturday #664 -Troubleshoot SQL Server performance problems like a Microsoft Engineer

This Saturday I had great pleasure to be part one of the greatest SQL Server community event: SQL Saturday 664. It is a free training event for Microsoft Data Platform professionals and those wanting to learn about SQL Server, Business Intelligence and Analytics. This time we met in Katowice in Poland.

I had an amazing occasion to present my session about Tools used by Microsoft engineers for SQL Server performance troubleshooting.

Here you can find my slide deck: SQLSaturday 664 – Troubleshoot SQL Server performance problems like a Microsoft Engineer

I also posted it on my slideshare profile.

-Marek

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

SQLDay2017 – Database Unit Tests with tSQLt

Last week I had a great pleasure to speak at SQLDay 2017. It is the biggest conference focused on databases, data platform, big data, advanced data analysis and business intelligence in Poland. This year we had an opportunity to attend workshops and sessions delivered by real SQL Server stars: Brent Ozar (b|t) and Greg Low (b|t).

I had an amazing occasion to present my session about Database Unit Tests with tSQLt.

Here you can find my slide deck and materials: SQLDay2017 – Database Testing with tSQLt

I also posted it on my SlideShare profile.

-Marek

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

T-SQL Tuesday #85 – Backup and Recovery – Maintenance Plans

tsql2sday-300x300This month’s topic for T-SQL Tuesday #85 post is: Backup and Recovery. I think this is very interesting topic and will result in many new great articles. I assume you already know what a backup is, and why it is very important to do and store backups for all your databases. The question which many database administrators ask themselves is how to do backups right? What tools to use?

There is a lot of possibilities:

In my post for this month’s T-SQL Tuesday topic I decided to describe you, how you can leverage SQL Server built-in Maintenance Plans step-by-step. Continue reading “T-SQL Tuesday #85 – Backup and Recovery – Maintenance Plans”

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

DevOps and Databases

codeeurope

This week I had a great pleasure of speaking at Code Europe conference – the largest programming conference in Poland. I had opportunity to present my session in two cities: Cracow and Warsaw. I was talking about DevOps, databases, and how to implement DevOps for Databases.

Here you can find my slide deck: DevOps-and-Databases.pdf

It is also posted on my slideshare profile.

-Marek

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

How to test connectivity to the SQL Server

udl-iconSome time ago I was asked to check if there is a possibility to access one of our SQL Server instances from a new hardware we got. That seems to be easy task, right? I thought so. Later, when I log in to the server, I immediately realized it will be not so easy to test connectivity to this SQL Server. That was pure Windows Server installation, without any additional tools. There was neither SQL Server Management Studio nor SQLCMD. In addition I had no Admin rights and was not allowed to install or add any software without official CR. Fortunately my teammate gave me an advice, to use UDL files. I never heard about that before and I was really amazed how easy solution that was. Continue reading “How to test connectivity to the SQL Server”

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail

In the 8 years I have been using SQL Server, we’re still dealing with a lack of cooperation

Ittsql2sday-300x300’s the first time when I’m participating in T-SQL Tuesday event. I’m so excited I can share my thoughts with you. This month’s topic is:

In the <N> years I have been using SQL Server, we’re still dealing with <some problem>

That’s very interesting topic and when I read Andy Mallon (b|t) post I already knew what I will write about. My version of this topic is:

In the 8 years I have been using SQL Server, we’re still dealing with a lack of cooperation.

During my career I’ve already had plenty of situations when a different teams which supposed to work on the same side, doesn’t do that in proper way.

My favorite example is when one team, like first level of Product Support Team or Customer Care Team works on database related issue. It doesn’t matter what kind of issue is that. It can be database slowness, query timeout, transactional log growth, etc. You can put here everything you would like or what you worked recently on. After all, when issue is somehow fixed, the case is handover to the second team, like third level of Database Administrators support, which should do a root cause analysis and close the case with a detailed explanation what exactly happened.

There is a catch!

In my case the first team doesn’t provide any input for a second team. They never collect a data for analysis during incident. I understand it in some stage. Customer calls them and wants to have an issue fixed as soon as possible. But on the other side, they are later obligated to provide an explanation what happened. Due to lack of detailed SQL Server knowledge they need to reach out to the more experienced and specialized team of Database Administrators. But even the most experienced Database Administrator is not able to provide issue root cause without analyzing data captured during this incident. Right? You’re probably wondering how such communication between teams may look like. Here you go:

“Dear DBA Team,

Today customer reported database slowness in XYZ environment. Issue was solved by first level support by failing over instance to the second cluster node. Please take a look on this and provide explanation what caused this issue.”

“Did you collect any data during incident?”

“Because of very limited time no data was collected. Please check server and provide explanation for customer. It’s very urgent.”

Oh come on, I already saw that too many times. It’s very frustrating when you have to explain again and again that you’re not able to provide any explanation because the first team doesn’t collect any valuable data. Unfortunately in this case you’re always the bad guy and they are good guys. They solved issue! Even if they had to restart SQL Server to solve long running query issue. You’re the database specialist which is not able to explain what happened.

What can be done to fix this situation?

Well… You can put a monitoring tool in place which will trace and capture everything what happens on SQL Servers you’re responsible on. Or… you can try to improve work culture and teach other teams they just need to collect data. Due to the environment limitations I had no choice and my team works on this second option. It’s up to you what will work better for you.

-Marek

Share it:
Facebooktwittergoogle_plusredditpinterestlinkedintumblrmailFacebooktwittergoogle_plusredditpinterestlinkedintumblrmail