Category Archives: MidnightDBA News

DBAs@Midnight X-mas present for you.

With the popularity of the cloud, we’ve decided to give you a present in the cloud this year.  If you don’t like it you can thank Microsoft for trying to get everything in the cloud.

Go to http://webshow.midnightdba.com/ to see the live feed of your gift this year.  It’ll be up 24/7 until xmas morning.  And it really is a live feed, not a recorded loop.

You’ll just have to give you name for the chat console, but you’re not obligated to say anything.  Also, if the page doesn’t look right, then you need to add the URL to your compatibility settings in IE.  Anyway, enjoy, and Merry X-mas from the MidnightDBAs.

Presenting at PASS Today

I was tagged at the last minute to do my Backup Tuning class at 4:15pm rm 4C1-2 today. Heres the abstract…

 

The Backup Tune-up

Have you ever gotten tired of your 1TB database taking 4+ hrs to backup? Are you sick of having your users breathe down your neck for 2hrs because it’s taking too long to restore a DB? Well now you don’t have to worry about that anymore. I’m going to show you some little known tricks, methods, and trace flags you can use to tune your backups just like you would a query. Backups actually have kind of an execution plan that you can access if you know how, and knowing how to get the individual portions of your backup process down will allow you to knock 80% and even more off of your backup and restore time. I’m not holding anything back in this session. This is a method I’ve used for 15yrs to tune my backups and I’ve had great success with it.

Why GoDaddy Sucks

Well, the site if finally back online.  I’m still moving a lot of the content over, but most of the vids are online again.

This whole debacle was caused by GoDaddy.  MidnightDBA.com has been up and running for 2yrs and for no reason whatsoever, it just stopped working last week.  None of my .net controls would work, so the menu and datagrids were all returning errors.  I tried to see if something went wrong on my end, and even pulled in the best .net guy I know from work, and nothing fixed it.  My work guy said that it seemed like GoDaddy was blocking .axd files and that’s why the content wasn’t working.  I finally got on with GoDaddy support, something I always dread because every time I’ve ever called them they’ve been absolutely useless.  Oh they’re polite, but every tech I’ve talked to with GoDaddy has been completely worthless and they do nothing but try to find ways to boot the call the second they start talking to you.

So anyway, I called support and no matter what I did I heard the same song again and again… “We don’t support custom coding.”

I tried and tried explaining to them that it’s not custom coding and that the site had been working for 2yrs.  And they insisted that nothing was wrong with the server and that my code had to be bad.  And to prove it they pushed a stupid little text file up and since they could read it, they used that as justification to try to close the case.  So I had the ticket escalated and talked to a couple managers.  The problem is with me at this point… for some reason I actually expected a different result.  I didn’t get one though.  The advanced escalation team fed me the same line of BS.  I even went around and around with them showing them a simple test page, and how the site worked on 3 other web servers, but they refused to listen to the simplest logic.  None of their support people know even the most basic principles of .net so they only gave me assinine ideas.  And that’s if the idea were even an idea at all.  The first guy I talked to went to his 2nd-level support guy and came back and said, “He said you have to push a ticket to your web.config file and do something I didn’t understand.”  Now, I have no idea what ‘push a ticket to your web.config’ means, but even if it meant something just the fact that he couldn’t finish the sentence means something doesn’t it?  He should have at least gone back to the guy to ask for more details, but he wouldn’t.  He was more concerned with booting the call because he doesn’t support custom coding.  And of course, I’m not allowed to talk to the 2nd level techs because I’m on a shared host and we’re not important enough to talk to the higher level morons.  So I was refused and was only allowed to talk to 1st-level guys.  And every time my tech would go away to ask someone something he’d be gone for around 30mins.

I did talk to one manager who actually got what I was saying though and she really went to bat for me.  Unfortunately, she works in a sea of morons and there’s just no way she’ll ever make a difference.  So after a week of being down, I signed up with another host, and amazingly the site came online right away.  I guess my code just decided to work again and it really didn’t have anything to do with GoDaddy’s servers, huh?  I mean, it must have been my mistake for thinking that code would run on their servers through whatever they do to the box.  It certainly wasn’t because they were blocking .axd files all of a sudden.  Because if they had for some reason decided to start blocking those file types, I know they would be responsible enough to tell their customers they were making a major change like that.  So I know now that it HAD to be me.  I didn’t do something right in my code.  So the code that I thought was solid and had been working for 2yrs just stopped on its own.  How could I have been so stupid? 

This is a warning to anyone who’s considering putting their site on GoDaddy.  If you do you’ll be sorry because they make changes on their servers without telling you about it and then blame you when something goes wrong.  If I hadn’t gone to another host, my site would have to be completely re-coded to use nothing but static HTML or classic ASP.  It’s ridiculous, unprofessional, and shows a real apathy for their customers.  GoDaddy has proven to me again and again that they don’t give a crap about their customers.  We’re just a paycheck to them.  But you know what?  If they keep this up we won’t be a paycheck much longer.  CIHost pulled a bunch of the same crap and look what happened to them.

SO DON’T GO TO GODADDY FOR ANYTHING!!!

Watch the show Tonight

Jen has already blogged about this HERE and she has told me to do the same. 

Our weekly webshow, DBAs@Midnight, or DBAs At Midnight as Jen calls it, but the official name is DBAs@Midnight.  Anyway, tonight’s show is going to be epic.  I’ve got something really big planned so if you don’t ordinarily watch the show live, you should this week. 

Here’s the rundown of the show timeline:

10:30pm CST — preshow.  We talk about whatever we feel like with the audience.  It’s a good time.

11:00pm CST — This is the main show.  This is what you get when you watch the recordings, but it’s much more fun live because you get to see what everyone is talking about in the chatroom.

12:00am CST — postshow.  Here we tell the underbelly side of the stories we told during the taping, and then just talk about stuff with the audience again.  I think mostly it lasts about 30-45mins, but our record is 2.5hrs because we all got on a roll about something.

So anyway, watch the show tonight.  You won’t be disappointed.

Here’s the link:  www.ustream.tv/channel/dbasatmidnight

Un-SQL Friday — Shock-n-Roll

This blog is part of Jen’s Un-SQL Friday collection.  You can read her blog on it here.

Branding is an interesting topic to me because not many people have managed to build a more interesting brand or reputation than I have.  I’ve been called on a couple occasions ‘the Howard Stern of SQL’, and while I’ve never had a naked girl in my studio, I think I have been somewhat of a shock jock.  When I hit the DB world through my very outspoken InfoWorld blog I upset a lot of vendors.  Not many people (and nobody in the SQL Server world) had ever talked to them the way I did, nor did they ever take the candid approach to reviewing their products that I did.  Throughout the years I’ve continued to be really open about my opinions and my feelings towards vendors, products, company policies, industry standards, and the like.  Now I’ve got the MidnightDBA brand and despite it being an excellent moniker, it begs the question whether being so outspoken is the best way to market a brand with such potential.

The argument of course is how much does being that way limit your audience?  And can you really differentiate yourself from others without doing something to be different?  There are two real reasons I’ve constructed my brand the way I have.  The first is that I’ve just really never learned social niceties so I have no self-control.  The second is that I’ve always found the bulk of the industry’s writings to be too vanilla and sanitized, lacking any real interesting perspective.  So what has my reputation gotten me?  Well I really think I’ve done alright for myself.  I’ve continued to climb my professional ladder and I’ve made a really solid brand that people are really starting to like.  Have I been held back at all by my approach though?  Oh, that’s really kinda hard to say.  The only measurable penalty I’ve suffered is that I’m not allowed to speak at PASS.  Other than that though, I’ve ruffled a few feathers with others in the industry but that’s about it.

It was suggested to me a while back that being the way I am makes my audience much smaller.  I’m splitting my potential because there’s a good portion of the audience who won’t follow me because they don’t appreciate my style.  Yeah, I suppose that might be true, but I’ve given this a lot of thought, and I like doing things the way I do them.  I like calling vendors to the mat.  Frankly, I’m sick to death of reading reviews of crappy software where they just talk about how nice the colors are and how well it installs.  Many of these are products I’ve used and they’re complete crap.  I’m the lead DBA in a very large enterprise and I have real enterprise concerns, so when a vendor tells me their product is an enterprise-level tool I expect it to be.  And I don’t care to mince words when reporting on it because I always figured other DBAs want to know what the real scoop is.  Anybody can write about the positive aspects of a product, but nobody has the guts in this industry to tell you what you really need to know.  So yeah, while I may split my audience by being so outspoken, the audience I do have is loyal and full of really cool people that I’m proud to call my friends.  People like Denny Cherry, SQLChicken, Mark Souza, Allen White, Buck Woody, Dan Jones, Paul Randal (and Kim of course), Wendy Pastrick, Steve Jones, Brian Knight (and Devin), Grant Fritchey, Adam Machanic, and the late Ken Henderson are people I’m proud to call my friends.  There are many more and sorry I can’t just sit here and name everyone, but you know who you are.  You’re the friends of not only the MidnightDBA brand, but of me personally.  So while I may have alienated a certain population of the SQL community, it may be best for both of us if we just leave it as it is.  Because compromising myself just to pick up a few extra followers or to be able to speak at a single conference will not only disappoint me, but ultimately it’ll disappoint the fans because not being yourself isn’t sustainable. 

Besides guys, don’t take yourself so seriously.  Let’s lighten up and have some fun with DBs.  It’s a stuffy enough topic as it is without us making it worse.  And I don’t know really what it is about me that gives me such a reputation.  There are speakers out there who say far worse things on stage at conferences than I ever have (or would), and nobody thinks the worse of them.  I’ve heard very prominent speakers make some pretty racy sexual jokes, as well as some really borderline racist jokes.  Yet they keep getting invited back to speak at the same conferences year after year.  Whereas I separate my blogging life from my speaking life and I know there’s a difference between what I can say on my blog and what I can say on a stage.  Just like there’s a difference between what I can say on my personal blog and what I can say on my NetworkWorld blog, or in an official magazine review.  So it’s not like I don’t know the difference between the different outlets, but for some reason people act like I don’t. 

To tell the truth I had really planned to cover the topic of whether you should brand yourself under your name or under some clever moniker like MidnightDBA or SQLChicken, but I got sidetracked and now this is just getting too long.  So maybe someone else will cover it instead. 

And what all this boils down to is you should really just be yourself.  You are what makes your brand, and that’s why it’s *your* brand.  Nobody else can step in and be the MidnightDBA.  So whatever you choose to do, just realize that you’ll never please everyone.  If I were to sanitize my writing, then I would lose the audience I have now because that’s not what they want to see.  My writing wouldn’t be interesting and my webshow would be a flop.  Sure, I would gain the other half of the industry I don’t have now, but at what cost?  At the cost of my self-respect.  And not being myself wouldn’t be fun for me so I wouldn’t write as much.  So be yourself.  People will either follow you or they won’t, but at least you’ll know the ones who do are yours to keep.

Keynote or Breakout Session?

From time to time you run across something that demonstrates perfectly exactly what the industry needs.  As I sit here at the PASS day-3 keynote I’m watching Dr. DeWitt talk about how the query optimizer finds query plans.  This is a very complicated topic under the covers and he’s covering some of the really complicated aspects.  He’s already explained the different types of histograms and how they work (I’m sure only at a high level), and he got into selectivity, etc.  And the thing is, he’s explaining this stuff in such simple terms and making it so easy to understand, it just hit me like a ton of bricks;  why isn’t this material being taught everywhere? 

This is one of the things I’m always talking about when I say there’s no really good training out there.  There are plenty of people out there teaching queries and tuning techniques, but nobody is bothering to break this stuff down so that people actually understand the terms and what they really mean.  Most of the time what they do is just define some terms briefly and then move on and expect everyone to be able to go back home and apply this stuff.  But without this background of how this stuff actually works and how the terms really fit together and how you get bad plans, etc, then people aren’t going to be nearly as successful as they could be.  Dr. DeWitt is clearly concerned with teaching people how to think instead of just what to think.

This is always the type of training I move towards because I find I never commit anything to memory unless I understand how it all works and fits together.  So what I’d like to see happen is for someone to put something like this together in a video series, or in a pre-con… something.  That’s a pre-con I’d actually pay for out of my own pocket.  A whole day of someone dedicated to making sure I understand how this stuff works… Hell Yeah!  But seriously, where does someone go to learn stuff like this?  Because this info isn’t out there in any human readable form.  And it’s apparently not just me either, cause he’s been brought back by overwhelming request, so I’d say the better part of the room is also screaming for this type of info.

New Language Services

The new version of SSMS takes advantage of the new language services that the team has been working on for so long now.  So far it’s actually looking pretty good.  You can finally refactor columns throughout all of your code because the language service comes directly from the engine it knows everything about the code you’re looking at.  It’s more of a dev feature, but plenty of DBAs will find this useful as we all wind up doing dev anyway. 

There’ll be more on that in the future, but I just wanted to write this blurb to let everybody know that the language service is coming along.  This is the first real step in bringing us a much better intellisense.  Does that mean you’ll no longer need Red-Gate’s tool?  No, because SSMS still won’t format your code for you or do some of the other cool things SQLPrompt will do.  Things like * expansion, and uniform table aliases are just 2 of the things Red-Gate brings to the table.  Unfortunately for them though, the new SSMS will start to close the gap so they’ll have to come up with something else if they wanna stay in that game.

FileTable is here

FileTable is another new feature in Denali.  FileTable is the next generation of FileStream.  What this allows you to do is copy files into specified folders on your server, and they automatically get stored in SQL.  So you define a FileTable in SQL and point it at a folder.  Now, anything you put in that folder, shows up in the DB itself.  You can still view the files directly from the file system, only when you do, you’re actually reading them out of the DB.  So we’re really starting to obscure the line between DB and Windows. 

This is one of those features that’s really cool.  To be able to drag a group of files into a folder and have them automatically added to the DB is really cool.  Not only can you add/delete them, but you can also modify them.  You can set file properties using t-sql and it’ll persist that change to the file system.  So now I have to wonder what the future of powershell will be because working with a large amount of files is something we do with powershell the most.  It’s one of the things powershell does really well.  But now that we’ve got this, if we’re able to define a folder as a DB table, then we don’t have to use powershell for these types of file ops anymore… we can just use set-based t-sql. 

The possibilities are churning in my head.

Always On

I’m here at the keynote for day 2 of PASS and we’re watching a demo of their new Always On feature for Denali.  And it all looks well and good, but I can’t help but wonder what’s wrong with it.  Always On gives you the ability to define HA groups and in just a few clicks you can configure automatic failover, and synch to multiple servers.  Again, that all looks fine up on stage, but I, like many others, am witholding any opinion until I get in there myself.  I’m sure we all remember the dacpac fiasco.  It looked wonderful on stage and even I was very excited about it.  But when we all went to play with it we found out very quickly that it had more problems than solutions.

Trust me, I’ll be writing plenty on this in the future.