If you’re using AMD Phenom 3-core processors, SQL Server 2005 won’t install without going through some hoops first. Microsoft just published a knowledge base article on SQL 2005 errors on 3 and 6 core servers.
I don’t usually blog about knowledge base articles, but I got such a laugh out of that one that I just had to share it.
Want to know about MS KB articles as soon as they’re published? Subscribe to the Microsoft Knowledge Base RSS feed for SQL Server. You DO use an RSS reader, don’t you? Hint hint….
SQLblogcasts.com has a great tutorial about SQL Server 2008 Transparent Data Encryption. If you want to learn how to encrypt your databases, read that article.
I played around with TDE a couple of weeks ago, and I was surprised by how difficult it is to implement. I’d expected to be able to check a box, put in a password, and click OK, but it’s nowhere near that easy. Restoring encrypted databases from one server to another can also give DBAs a nasty surprise when they least expect it.
I’ve heard several DBAs comment recently about how SQL Server Management Studio is targeted more at developers than it is database administrators, and I think 2008 will reinforce that perception. Implementing TDE is a good example: there’s no wizard, there’s no obvious steps, etc. Right-click on a database and try enabling encryption, and there’s no obvious reason as to why the feature is disabled – the DBA has to dig through documentation to find out that a server certificate is required first. Ugh. TDE is a good first step towards secure data files, but any toddler will tell you that those first steps are always the toughest.
I’m spending a few days in St. Petersburg, Russia to visit Quest’s office. Sure, I have the regular touristy photos, like myself in front of old buildings:
But what I really like about overseas travel is that everything looks and feels different, and it forces me to look at the design and user interface for everything.
Take toilets, for example. American toilets have the button on the side, and Russian toilets have the buttons on the top. That’s right, buttons – more than one:
My first thought when I saw this in my hotel room was, “Ah, that’s interesting. Now what would be the advantages or disadvantages of putting the button on the top?” I guess you can’t leave things on top of the toilet if the button is on the top. With American toilets, you can just pull the lid off, and the button remains on the side, so it’s probably easier to design the lid. This particular toilet lid doesn’t come off at all, which is an advantage in hotels – tourists hide all kinds of stuff in toilets. I know this from my years of working in hotels.
My second thought was, “Two buttons? I’m screwed.” I’ve been in Europe just enough to have seen bidets, and heard about toilets with built-in bidet attachments. I half expected water to come shooting up and hit me in the eye, so I stood to the side when I tested the buttons. Turns out the two buttons have two different amounts of water: regular, and Niagara Falls. I think I could flush a small cat down this toilet. Now that’s cool.
Are American toilets better than Russian toilets? No, they’re just different. The differences continue throughout the bathroom, like the hooks on the wall:
These have a fun, playful design language, very mid-century-modern. These would look awesome in an American 1950′s ranch-style house, but I’ve never seen anything like them before. I certainly wouldn’t expect to see them in a traditional hotel like ours where the paintings on the wall are framed with mock gold leaf. The hotel is very conservative, and then these bathroom hooks say BAM! Bathroom fixtures seem to be more modern-looking in Europe and Russia, and more traditional in America. Dunno why. Not better, just different.
But wait – there’s more. Check out the toiletries in my room, but look closely and see if anything looks odd:
In the white box, there’s a nail file. A nail file! Wow. I’ve never seen that before. I’d be curious to know how often people need a nail file when they travel. Different.
Plus, the labels are all in English. Not Russian, just English. Know why? Because only Americans are dumb enough to travel without all of their stuff. And I should know – last week I went to California without any socks, and this week I came to Russia without my electric razors. Which brings me to this:
It takes a big man to admit he’s scared, and I’m a mighty big man, so I don’t mind telling you: razor blades scare the hell out of me. There must have been some terrifying experience in my childhood involving razor blades, because I never touch them. When I was old enough to shave, I bought an electric razor, and I’ve always used them ever since. Normally, if I forget my razor when I travel, I go buy another one. But here I am in Russia, and if I bought an electric razor, it’d have their electric plugs, and I wouldn’t be able to use it at home without an adapter.
I said to myself, “You’re so interested in things that are different – why not give it a try?” After all, I’ve seen Queer Eye for the Straight Guy. I know how the concept works. So with shaking hands, I lathered up my face and used a sharp piece of metal to scrape hairs off my face. (Can you tell this concept bothers me?)
And you know what? I liked it. It gives a really nice, close shave, and as long as you lather up with warm water and use a sharp razor, it doesn’t cut your face.
That’s why I like travel. Different can be better. I might even stick with razor blades.
In today’s hiring market, DBAs get a lot of emails from recruiters that say things like:
“I am curious to know if you would be interested in (or know someone who is interested in) relocating to Big Falls East for the position discussed below….”
The job description never includes the salary range, and it rarely includes information about the industry – two things that should be important to a job candidate. (If you don’t care about the industry, you should start caring – imagine going to work for Ford Motors, an airline, or a mortgage company in today’s economy.)
To handle these emails fast, go into your email program and create a new signature. The signature should include a default reply text that is really generic, like this:
“Thanks for the email. If you can forward on information about the salary range and the industry, I’ll pass it along to my peers. After being repeatedly burned (hey, buddy, check out this job – oh, sorry, I didn’t know it only paid $X) I have a policy against forwarding jobs without salary & industry information. Thanks, and have a great day.”
Most email programs will let you quickly change your signature for one specific email. That way, when recruiter emails come in, just hit reply, insert your recruiter signature, and hit send.
When the next email comes in (either with the right info, or without it) you can handle it the right way. If it includes good information, then it’s a good recruiter, and you should pass it on to your buddies. If it doesn’t include any more information than the first email, just hit delete, because the recruiting process is off to a bad start.
I know recruiters will disagree, but here’s the deal: if a recruiter is desperate enough to send a blind email to a stranger without a resume, asking that stranger to pack up their house and move to another state, then there’s a reason. They’ve already exhausted the local candidates – either because they’re not paying enough, the company has a bad reputation locally, or they need a hard-to-find skill set. Think about that before replying with your resume, because the first two reasons will come back to haunt you, and the third reason means you’re worth a lot of money.
Sean McCown at Infoworld wrote a blog post today that said some negative things about Quest and LiteSpeed, and I had to respond. He’s switched away from using LiteSpeed, and he had an interesting set of reasons.
“I just don’t need the centralized repository in my lab, and I do enough demos that having native SQL syntax for my backups is worth something to me.”
Everybody has different needs.
Sean and I would totally agree that labs have a different set of needs than a typical enterprise or datacenter.
In fact, if I was just doing a lot of demos like Sean, and if I wanted native SQL syntax for my backups, I wouldn’t even use a third party product at all: I’d use SQL Server 2008′s new backup compression to make my life really easy. That way, you can stay purely native, and that makes for really easy demos.
Quest LiteSpeed, on the other hand, isn’t targeted just at labs and demos. It’s targeted at DBAs who need enterprise-ready backup solutions, complex needs like log shipping, centralized reporting, log reading with undo & redo for transactions, and so on. Not everybody needs the advanced features that LiteSpeed provides, and Sean doesn’t. We would both agree that LiteSpeed is not the right product for his lab.
“Even knowing any of the devs is hard these days, and getting anyone to make any changes is next to impossible.”
At smaller companies, especially startups with a minimum of customers, developers can work directly with end users. For better or worse, Quest has a lot of customers, and I’d like to think that’s because Quest has fantastic products. (It’s a pretty good problem to have.) Our product managers coordinate feature requests across all of our enterprise customers, large and small, which helps our developers focus on what they need to do: develop great software.
Just this week, in fact, Quest Software hosted a SQL Server Customer Advisory Board at the offices in Aliso Viejo. We flew out a dozen customers for two days of meetings about our road maps, upcoming features, and asking for their input on where we go next. I wish we could bring every Quest customer out there for the same input, but on the other hand, Steve Ballmer isn’t flying me up to Seattle anytime soon to ask me what SQL Server needs to do next.
We’re in a feature freeze for our new LiteSpeed v5.0. The management tools have been rewritten from the ground up, and I’m really impressed. But there comes a point where you have to stop adding new features and just focus on testing the code, and that’s where we’re at now. Heck, I have a long list of things I want to add, but even I can’t sneak ‘em in – and I work for Quest! I’m already excited about the features I’m trying to cram into v5.1.
“Now, with the team being more corporate….”
If your main criteria for a backup product is easy access to the guy who wrote it, then Quest LiteSpeed is not the product for you.
Just a couple of months ago when I was a DBA instead of a Quest employee, though, that was not my main criteria for software selection. My main criteria included a global 24×7 support organization with experience across database technologies, a large QA team dedicated to testing mission-critical backup software on every possible platform and a product with an unbelievably strong track record. The fact that Quest was Microsoft’s 2007 Global ISV Partner of the Year again this year is proof that sometimes bigger is better.
I used to live out of planes and hotels (literally, I worked for a hotel company) but I haven’t traveled much for the past five years. This afternoon I had an ugly experience that reminded me of the sad truth of long-distance travel: crappy customer service can wreck your trip, and great customer service is worth extra money.
I tried to check in via the web around 1pm for my 3:45pm US Airways flight back from the Quest offices in Orange County, CA. The web site informed me that something had changed about my flight, and that I needed to call the US Airways customer service number. I called, gave them my confirmation number, and got placed on hold. A few minutes later, the voice returned and informed me that my flight had been cancelled.
I waited to hear the next words out of her mouth, because I’m thinking, this is typical, right? These things happen. It’s a big company. They must have a system for this, a checklist that defines what step happens next. I know things break, and I’m cool with that. When I’m traveling and things break, I’m really cool when it happens on the ground. It’s when things break in the air that I get fidgety.
But she doesn’t keep going. To her, that was it.
I prompted her by asking, “Okay, what next? Is there a later flight, and can you rebook me?” She put me on hold for a few more minutes to go find out.
While I was on hold, I started wondering what she’d done the first time she went on hold. Was it that hard to find out the flight was cancelled? Why make me wait that long and not have an answer ready for what the next question would be? Did she think I was just going to stay in Orange County for the rest of my life? Had any customer in the entire history of US Airways ever been told their flight was cancelled and simply responded with, “Okey dokey, sounds like we’re done here! Thanks!”
She came back and said the next flight would be the next day. I said okay, no problem, go ahead and book me. She asked to put me on hold again, but I asked if she could skip putting me on hold, because my cell phone battery was almost dead. She put me on hold anyway.
When she came back, she said I was all set to fly out the next day. I asked which hotel they were putting me up at, and that’s when things went south pretty fast. To be honest, I didn’t expect them to put me up in a hotel, but I was cheesed off enough that they’d cancelled the flight without calling me, without rebooking me on another flight, and without seeming like they had any semblance of a Plan B when I called.
She started talking to someone else in the same room, escalated it to a supervisor, and didn’t do a particularly good job of holding her finger over the microphone. Actually, to be honest, I think she was passing the microphone around to the different people in the room, because I heard them pretty clearly. One of them said something to the effect of, “He said his battery was almost dead, right? Hang up on him.”
And they did.
Rather than call ‘em back, I called the Quest travel department, who performed like rock stars. Within the first two minutes of the call, she identified that all of the flights out of Orange County, LAX and Long Beach were booked, with the exception of an LAX flight that I couldn’t make in time. She got me booked on a 6:15 AM flight, booked me into an airport hotel, emailed the updated confirmation info to me and asked if there was anything else she could do to make it easier.
All in less time than the US Airways rep had me on hold before she told me the flight was cancelled.
The taxi dropped me off at the Hyatt, and it turned out that the cab went to the wrong Hyatt. Jessica at the Hyatt Regency Irvine front desk said no problem, called the Hyatt Regency Newport Beach, got the reservation moved, kept the same discounted corporate rate that Quest had at the other Hyatt, and kept apologizing the whole time about my cancelled flight.
I got into my room, called down for room service, and the great service kept going. The operator cheerfully greeted me by name, and she told me when the food would be ready – but she did it in a way that I rarely hear. She said, “We’re running about 30 minutes right now, so your food should be there just before 4 PM.” Usually, I hear things like, “It’ll be half an hour to an hour depending on how busy they are.” They – what do you mean they? It’s you. You’re they. At the Hyatt, there was no “they” – it was “we.” I love that. And you know the food showed up in 25 minutes, because that’s the kind of operation they’re running. Wow.
So yeah, I’m stuck in California for another night, and I miss Erika and Ernie, and I wish I was home sleeping in my own bed. But if it wasn’t for the happy folks I dealt with after the wackos at US Airways, things could be a lot worse.
At this week’s Customer Advisory Board at Quest, I’ve had a great time sharing war stories with other database administrators. One theme keeps popping up again and again: developers don’t trust DBAs and seem to refuse to take the DBA’s word for anything. It seems that developers just want to keep learning things the hard way.
Case in point: a developer wants to loop through all string fields in every database in the shop looking for secure information. They’re after things like social security numbers, credit card numbers, bank account numbers and so forth. They want to check the contents of every char/varchar/nchar/nvarchar field in every table, look at the top X records, and check the string contents to see if it matches known text patterns.
In theory, this could be solved by a stored procedure.
In practice, a stored proc would be a bad idea. SQL Server isn’t particularly good at string processing, and a query like this will instantly push the CPU to 100%, thereby severely slowing down other queries on the box. Plus, large databases like SAP can have tens or hundreds of thousands of string fields, and storing the results will take gigs of memory and/or TempDB space on a large BI/BW data warehouse.
The DBA involved has repeatedly recommended against the stored proc approach, but the developer still wants to build one, saying he’s Googled for ways to do it and he’s getting some good leads. At what point the DBA will sit back and say, “You know what, go for it, because when your stored proc takes down a production box, I’ll be all too happy to explain whose code did it.”
Another case involved developers who want to store completely unstructured XML data inside the database as text fields, and want to parse through that XML data when searching millions of records for matching attributes. The XML format will be extremely flexible, but when storing it as text, it’s just not going to perform. The developers see that as a SQL Server performance problem, when in reality it’s a bad design that won’t scale.
We spent some time tonight at the CAB talking about where the DBA draws that line – where he gives up trying to protect the developer and just gives the developer enough rope to hang themselves. It’s an interesting challenge politically, but the moral of the story is this: developers out there, if your DBA keeps recommending that you do something, and all of a sudden one day he caves in and sees things your way, be careful. You might be in for a rocky ride.
I’m staying at an oceanside hotel in Laguna Beach, California for a meeting with some of our customers. When I say oceanside, I mean oceanside: there’s a huge wave break about a hundred feet from my balcony, just two stories down. The waves are deafening.
It’s a really romantic setting, but I was still surprised to find these at my bedside:
“Grande for Increased Protection?” Wow. I mean, it’s one thing to have this kind of gear provided for you by the hotel, but it’s still another when they give you the big ones.
Or maybe they just gave the big ones to me. Maybe the front desk clerk called down to housekeeping and said, “Look, I’ve seen this guy. You gotta give him the big ones. No playing around here.”
If you want to see the full details of the hotel amenities, click on the photo. I wouldn’t want to show the whole thing on my normal public page without clicking on it.
I’m not saying CNN is biased, and I’m not saying they’re out to make the gay & lesbian community look bad, but I think maybe, just maybe their coverage of the same-sex marriage issue might not be portraying it in the best light. I’m not sayin’, I’m just sayin’ – here’s the photo they used for the cover story: