In my current role about a third of the databases I look after are on SQL Server. The University as a whole has more SQL Server than Oracle, but most of the key systems are on Oracle and that is what my department work on.
I’ve been working with SQL Server since version 7.x, but it has never been a primary focus of mine. As a result, I am an “adequate” SQL Server DBA, but if I ever come to you asking for a job as a SQL Server DBA, press that button on your desk that opens the trap-door under my feet. 🙂
A couple of days ago I had a message from a colleague in another team, asking me if I could take a look at a performance problem on a SQL Server database that sits under SCCM. Cue panic, cold sweats, paranoia, fear of being “found out” etc. 🙂 A few seconds later I gathered myself and thought, what would I do if this were an Oracle database? With that safety blanket firmly in hand, I plugged through the process like I would on Oracle (turn it off and on again 🙂 ) and a bit later everything was OK. It was a little bit random, but we got there.
Yesterday I got another call about the same system. A little better prepared this time, we walked through some stuff and I think we have a better understanding of the issues now. It’s not so much a SQL Server problem as a SCCM problem, in my opinion that is. 🙂
Anyway, during the process I was repeatedly asking Uncle-Google about stuff and regularly came across information by Thomas LaRock, either directly or by people quoting or pointing to his material. I was already aware of Thomas after being introduced to him online a long time ago by Jeff Smith, when he pointed out that Thomas became a Microsoft MVP on April 1st, the same day of the year I became an Oracle ACE. 🙂
So this overly long and random post is basically saying, “Thanks Thomas for putting out quality material on the interwebs!”, and if you are a SQL Server DBA, check out his blog! 🙂
The cameo for this video is Garth Harbach, a former colleague of mine. 🙂
I’ve been ill recently and my voice is pretty shot. The last three videos have all be on AWS RDS, which has very similar setup regardless of which database engine you use. This has been really handy, as I could pretty much reuse one vocal track for all three videos. Not sure if anyone would have noticed, but I felt guilty, so I thought I would confess up front. 🙂
I’m hoping I’ll get my voice back in the next few days so I’ll be able to do something different. 🙂
I mentioned in a previous post, the whole look and feel of Microsoft Azure has been rejigged. As a result, I had to do a run through of the SQL Server DBaaS stuff to update the screen shots in and old article on the subject.
I’ve been playing around with running databases in the cloud recently. It’s quite simplistic stuff, just to get a feel for it and investigate the possibilities of using it for some projects at work. Here’s what I’ve got so far.
It’s hard to differentiate between the cloud providers if you are just using them to provide a VM and self managing a system on it. It’s just another box provider.
In contrast the DBaaS offerings are much more interesting. I really like what Amazon are doing with RDS for Oracle/MySQL/SQL Server. I think these would work very well for *our* MySQL and SQL Server installations, which tend to be quite simple. I’m not sure I can live with some of the restrictions for RDS for Oracle, but that’s probably because I’m a snobby DBA type, who thinks he knows best. 🙂 The DBaaS for SQL Server on Azure is also really nice. You get less control than the RDS version, but maybe that’s a good thing.
You might have noticed I’ve not written much about Oracle Cloud yet. I should be getting a trial of the platform this month, so I will be able to fill in those gaps then.
I get a number of questions from developers who are used to working with SQL Server, but have recently moved to Oracle. The top 2 issues are:
Lack of AutoNumber/Identity columns in Oracle (solution).
How to return recordsets from stored procedures (solution).
Recently I had a question about how you return the value assigned by a sequence during a DML statement, either directly or when using a trigger to populate the sequence value. The one option is the RETURNING INTO clause, but I checked my site and couldn’t find an example of it to direct them too, so I wrote one (here). 🙂