Infrastructure at your Service

SQL Server 2016 Archives - Page 3 of 9 - Blog dbi services

David Barbarin

SQL Server 2016 : Basic availability groups may fit to your HA needs

By | Database Administration & Monitoring | No Comments

In this blog let’s talk about SQL Server and availability groups in standard Edition. I had some customer questions about existing limitations and this is a good opportunity to review them on this blog post. First of all, let’s say that Microsoft has already documented the restrictions here and from my side, I already written a blog post on the subject at the time of the CTP version of SQL Server 2016. In the meantime,…

Read More
David Barbarin

SQL Server AlwaysOn: new services packs and new diagnostic capabilities

By | Database Administration & Monitoring | No Comments

As you certainly know, the SQL Server 2014 SP2 has been released by Microsoft with some interesting improvements that concern SQL Server AlwaysOn and availability groups feature. In fact, all of them are also included into SQL Server 2012 SP3 and SQL Server 2016 (update 24.09.2016: not yet released with SQL Server 2016). Among all fixes and improvements that concern AlwaysOn, I would like to focus on those described in the Microsoft KB3173156 and KB3112363. But in this…

Read More
Stéphane Haby

SQL Server 2016: New SQL PowerShell CMDLETs for ErrorLog

By | Database Administration & Monitoring | No Comments

With the latest release of SQL Server Management Studio(SSMS) 2016 (13.0.15500.91), downloadable here, was introduced new CMDLETs for Always Encrypted, SQL Agent and the  ErrorLog. In this article, I will present you the 2 new CMDLETs for the Error Logs: Get-SqlErrorLog: Retrieves the SQL Server Logs. Set-SqlErrorLog: Sets or resets the maximum number of error log files before recycling. My first step is to search all commands with “Sql”: Get-Command | Select Name |Where-Object {$_.Name…

Read More
David Barbarin

SQL Server 2016 AlwaysOn: Direct seeding and backup considerations

By | Database Administration & Monitoring | No Comments

As promised in my prior blog post, we’ll talk now about direct seeding feature and backups. We found an interesting LIMIT_CONCURRENT_BACKUPS value for current state of the hadr_automatic_seeding_state_transition event. As said last time, this value is meaningful by itself. So let’s try to perform a backup while the database is concerned by an active seeding session. In fact, my backup was blocked (as I supposed) and here what I found from the sys.dm_tran_locks and sys.dm_exec_requests…

Read More
David Barbarin

SQL Server 2016 AlwaysOn: Direct seeding and performance considerations

By | Database Administration & Monitoring, Development & Performance | No Comments

This blog post follows the previous one about new direct seeding feature shipped with SQL Server 2016. As a reminder, I had some doubts about using direct seeding with large databases because log stream is not compressed by default but I forgot the performance improvements described into the Microsoft BOL. I also remembered to talk about it a couple of months ago in this blog post. So let’s try to combine all the things with the…

Read More
Stéphane Savorgnano

SQL Server 2016: Always Encrypted – part 2

By | Database Administration & Monitoring, Technology Survey | No Comments

In my last blog post about SQL Server 2016 Always Encrypted, here, I showed how to use this new functionality but also that you have to separate the different execution context with an Application server, a database server and a security server to avoid that certificate will be available for all users and break the segregation. Let’s see how to build those environment. In my security server named SQL2016-2, I first create a Self-signed certificate…

Read More
Stéphane Haby

SQL Server 2016 – Query Store: retrieve query that doesn’t appear!

By | Database Administration & Monitoring, Development & Performance, Technology Survey | No Comments

For our event SQL Server 2016 in September, I am studying the new functionality Query Store. My colleague David Barbarin have written few months ago about Query Store and how it’s working. Simple SELECT Query To begin, I execute a simple SELECT on a table with 3 different methods: SELECT * FROM QS_test; exec sp_executesql N’SELECT * FROM QS_test’ EXEC sp_GetQS_test; The “sp_GetQS_test” is a stored procedure with the select statement. I created a little…

Read More
Stéphane Haby

Trace Flag 4199 or not in SQL Server 2016?

By | Technology Survey | 2 Comments

Some Trace Flag like T1117 and T1118 are no more needed as you can read on David’s blog. But that’s not all, you have also the T4199… What’ does the Trace Flag T4199? This Trace Flag enables all query optimizer fixes. A lot of DBAs have enabled this Trace Flag globally during the build of a new server. If you want to take advantage of an enhancement or a fix, the T4199 becomes a necessity……

Read More
Stéphane Savorgnano

SQL Server 2016: Always Encrypted

By | Database Administration & Monitoring, Technology Survey | One Comment

One of the top new features of SQL Server 2016 is the Always Encrypted functionality. Always Encrypted provides that data, store in a database, remains encrypted the all times there are in the database. There is a complete separation between persons who own the data and person who manage it. Only persons who own the data can see plain text data and person like DBAs, sys admins or privilege logins cannot have access to the…

Read More
David Barbarin

SQL Server 2016 AlwaysOn: distributed availability groups

By | Database Administration & Monitoring | No Comments

This time, I will talk about distributed availability groups. What’s that? In short, a group of availability groups. Sounds good right? But in which cases may we need such architecture? Firstly, let’s say that distributed availability groups will run on the top of two distinct availability groups meaning that they reside on two distinct WSFCs with their own quorum and voting management. Referring to the Microsoft documentation here, we may think that this new feature…

Read More