Profile cover photo
Profile photo
Darin Strait
Engineer by training, nerd by inclination. Principal at Ashdar Partners.
Engineer by training, nerd by inclination. Principal at Ashdar Partners.


This week, I took and passed 70-461, "Querying Microsoft SQL Server 2012/2014".

The last "Microsoft test" I took was "Windows 98", or something along those lines. That was over 17 years ago, before I started Ashdar Partners and even before I started specializing in SQL Server. (Going back even farther, I can't remember if I ever got certified in Novell Netware or just took the classes. That would have been 1990.)

I have always preferred experience over exams and curiosity over classes, but it seems that potential clients are becoming pickier and I need to get with the times.

Starting in mid-May, I spent several hours a week studying for 70-461. Much of the exam's content involves features that were introduced by (or after) SQL Server 2012. This is a problem for me, as nearly all of the work I've done is for clients who have not deployed recent versions of SQL Server. I've seen SQL Server 2000 servers as recently as the spring of 2015 (when they were retired). A current client still has a pair of old SQL Server 2005 servers running Windows 2003.

While it's true that my keyboard is too old to have a "Windows key" on it, I am not entirely antiquated. My homelab is VMWare 6.0, Windows 10 and Windows Server 2012 R2, with one remaining Windows 7 VM that I use for Quicken. I have some SQL Server 2008 and SQL Server 2008 R2 Developer installations because I still spend so much time in them.

It turns out that this old dog can still learn a few new tricks. I'll be moving on to 70-462, "Administering Microsoft SQL Server 2012/2014", next. I've already planned my studies, which will be more in-depth than what I did for the first exam.
Add a comment...

Post has attachment
The forthcoming/promised/ballyhooed SQL Server on linux looks good. So far.

(At least nothing looks horrifically wrong. So far.)

We probably won't see anything released this year, but it looks like SQL Server on linux will be based on SQL Server 2016.

Microsoft is supporting apt, which I am familar with from my debian days. It slots in well with Microsoft's efforts for real package management on Windows. (If you are a Windows-only person, apt is awesome. It's what NuGet, PowerShell Get, chocolatey and the package tools in Windows 10 should aspire to.) Microsoft have a command line interface running in a shell, and that's about it. You should be able to connect from Windows using the existing tools.

According to this video, you should be able to copy BAK files and MDF and LDF files back and forth between Windows and linux systems. They are compatible at a binary level. (I assume that the usual rules about moving BAKs and MDFs between versions apply. Generally speaking, you can only go forward in (major) version, not backwards..)

I've got a lot of questions.
How fast is SQL Server on linux going to be? I expect that SQL Server might not perform as well on Linux as it does on Windows. The Windows & SQL Server combination has been tweaked and tuned for 20 years. As long as performance is OK, smaller workloads could run perfectly OK.

How are they going to handle Active Directory integration?

What about SQL Agent? Reporting Services (which was just rewritten, seemingly from the ground up)? Integration Services (even if there isn't any tooling on linux, can I run a package on my linux server)? Will the SQL engine manage memory in the same way? Which DVMs will (or won't) apply on linux? Are they really going to fix the service "trace flag" nonsense? Can I do HA to a linux server? FCI? AG? Database mirroring? I presume that log shipping would work...

I also wonder if PowerShell is going to wind up on linux. PowerShell would be much more useful on linux if there is support for .Net. (I'm still waiting for the ssh support in Windows PowerShell that people were talking about a (long) while back.)

How the licensing is going to work. Can I really run SQL Sever without licensing Windows Server? Or will SQL Server on Linux cost more so that Microsoft can make up the lost revenue? I don't expect them to give it away.

There are still more questions than answers, but I'm hopeful that this will provide a good alternative to running on Windows.

Add a comment...

Post has attachment
For the aggressive, SQL Server 2016 is officially released as of June 1st.

An interesting milestone, though maybe only for DBAs who remember struggling to get RAM up into the double-digits on their servers:

"Installation of SQL Server 2016 is supported on x64 processors only. It is no longer supported on x86 processors."

I've been running x64 operating systems on my personal and homelab machines since Vista came out, so it's kind of a non-event for me.

I remember a lack of x64 database drivers which threw a monkey wrench into the SQL Server 2005 migration plans of one of my clients. We solved that with a single x86 installation whose whole job was to provide a connection to legacy database formats (primarily dBase and FoxPro). Now, no more x86.

Add a comment...

Post has attachment
I've started going through the latest bunch of talks from SQL Bits, the big SQL Server symposium held every year in Europe. The full list of talks is here.

For me, the standout talk (so far) is Itzik Ben-Gan's "Boost your T-SQL with the APPLY Operator". I've known about the APPLY operator for a while, but I never really thought much about it or tried to use it. Itzik's talk opened my eyes in terms of what APPLY can do and how it might improve performance over other solutions written with older syntax. I'm going to actively look for opportunities to use APPLY.
Add a comment...

Post has attachment
I've been using PowerShell since 1.0 and I still learn things from Don Jones every time I listen to him.

I've seen Don do a few other presentations, but I like this one particularly because it's very code-heavy and he takes you through the rationale for every little thing that he does, explaining why the "other way" is inferior. (My grandfather worked in a machine shop as a tool and die maker, so it also resonates on a more personal level.)

It's one thing to read someone's code, but it's much better to understand a developer's thought processes. I've often said that comments explaining why a coder didn't make the "obvious choice" are my favorite comments. I can't remember the number of times I've gotten halfway through rewriting something from some long-forgotten developer, only to find that the "obvious way" is wrong and "weird way" is correct. ("Oh, err...right...duh...gotta revert this out...")

Since I'm thinking about reworking quite a lot of code, the strategic thinking about tools versus controllers is very helpful as are his comments on "impedance mismatch" between pipelined input and script (or function) parameters. I'll be watching parts two and three sometime in the next few days.
Add a comment...

Post has attachment
Windows Administration and Trends in (PowerShell) Scripting
Here is a Run As Radio chat with Jeffery
Snover . Jeffery Snover is the
person most responsible for PowerShell, which revolutionized my approach to
database administration. He has a background in scripting going back to VMS
(IIRC), which is how he came to c...
Add a comment...

Post has attachment

Jeffery Snover is the person most responsible for PowerShell, which revolutionized my approach to database administration. He has a background in scripting going back to VMS (IIRC), which is how he came to create PowerShell. Now, probably among other things, he directs strategy for Windows administration. I listen to him because the things he talks about are likely to influence my work life and they give insight into how the PowerShell team expect people to use their product.

The podcast covers a variety of things in a light way. The thing that grabbed my attention the most was that Snover seems to be saying that Windows will be implementing things similar to what linux does with root and sudo. (My linux experience is limited but my two takeaways are: You never log in as root and sudo controls what your 'day to day' login can do.) Imitation is the sincerest form of flattery, as they say.
Add a comment...

Post has attachment
Lately, I've been watching a few of these these old, SQL Server 2008 R2 videos every week. (They are located under "SQL Server 2008 Microsoft Certified Master (MCM) Readiness" and are down towards the bottom of the page.)

These videos were produced for the now-defunct MCM program. They were created by skilled presenters and the price is right. IOW, the price is $nothing.

They are dated in some spots. For example, there is no discussion of Availability Groups or the deprecation of Database Mirroring. Many sites are still using SQL Server 2008 and 2008 R2, so this information is current for them.

I like them because they are a decent mix of overview with technical details, they cover a wide breadth of topics, they provide a quick refresher on things I haven't dealt with in a long time (like replication) and they provide an overview of things that I have never had a reason to use (like FileStream).

Waits and queues still work they same way they did back then, as does database mirroring (though there are some improvements). They cover Extended Events, rather than the older SQL Profiler.

I am unaware of anything quite like this videos that targets SQL Server 2012 and 2014, though I would like to see them.
Add a comment...

Post has attachment
Add a comment...

Post has attachment
Add a comment...
Wait while more posts are being loaded