Archive for the ‘SQLServerPedia Syndication’ Category

I was at SQL Saturday in Phoenix last week and had a number of sidebar discussions with a solider that is transferring out of the Army lifestyle and over to the civilian world. This is a transition that I have done before, and I recall it well. I have not thought about it much over the last 15 years or so, but I do recall the nervousness that I had when I made the jump from the Marine Corps to the workforce as I know it today. When I made the transition I was lucky enough to have the opportunity to take a class my last week in the corps to help me with the many changes I was about to experience. I debated not taking the class because I didn’t think it was going to be that different, but I sure am glad I did. So as I reflect on this experience I thought I would share a few tips that might make it a bit easier. If you have any that you think would fit well send them over to me and I will see what I can do to add them to the list.

  1. Stay away from acronyms on your resume – There is a good chance that when someone is reviewing your resume that they did not serve in the military. With this being a fact, consider how many terms you use on a day to day basis that you consider normal knowledge. If someone is vetting your resume and does not understand all the terms you are using they may disqualify you simply because they don’t understand what you are trying to relay. My tip here is find a friend or a relative who does not know the military life and have them review your resume, if you use terms such as MOS or OD duty chances are they will catch it and help you explain more.
  2. Chain of command – This was a difficult one for me. The chain of command is pretty simple to understand; even people in the civilian world use it. However, in the military I was taught that anything and everything in your life was important to your chain of command. In a time of high stress such as a situation where you are in battle and bullets are being fired at you this is completely understandable. Assume you are in a fighting position, and one of your troops had a pretty serious breakup via a “Dear John” letter. This is something you would want to know, but in the civilian world many supervisors get a little creped out when they know so much about you.
  3. Your opinion – Many think that the military is a group of young people that are trained to not have and opinion. When the commanding officer says take that hill, he does not need to hear a bunch of people arguing about the right way to do it, or if you should even try to do it. Granted, these discussions on the best way may arise. In the civilian world, most employers want to know if you think that something is not being done in the best way. The secret here is understanding the line between open discussions on the best way to do things and just doing them with no opinion at all. With that being said, it is still critical to know that as a solider you don’t always know all the information that is relevant, in the civilian world that is the often the case as well.
  4. Networking – In the military if you wanted to get the best equipment it never hurt to know someone in the supply area, well it’s true in the civilian world as well. Who you know can help you, use your contacts well, and as you make the transition understand you need to make as many contacts as you can.
  5. YES SIR – A few years ago I had interviewed someone who was coming out of the Navy, when I talked with him the answer to everything was “Yes Sir“. When the candidate spoke it was not a yell, nor a bark but very direct. It is not critical to speak in such a formal way, however respect should always be paid.
  6. Volunteer – I have heard the joke more times than I care to count, in the military you become a volunteer when everyone else steps back faster than you. I was told many times before boot camp that you should never volunteer for anything. In the civilian world, I cannot stress enough how important it is. Not only do you have the opportunity to stand out, but you have a chance to learn something new. Be the person your boss knows they can go to when the need to get something done. Be the person they can count on, the type of person you want on your team.

 

 

A recent presentation I gave about Interviewing Tips provided me with a number of great questions that I thought I would expand on. One that I get often looks a lot like this:

I was curious if you had any suggestions or tips on how to get one’s employer to pay for the PASS summit.  I’ve made proposals many times over the years to have my boss pay for professional training. Sometimes they’d pay, other times not. But, it just seems over the last few years’ employers have become less keen on paying for employees to further their tech skills.


Any thoughts you have are most appreciated.

 

A few thoughts come to mind quickly…

  • When you are getting ready to ask for a conference such as the PASS Summit. Make a list of some of the challenges you have been facing, or maybe a list of some of the things that you want to make sure you learn about. When you list specific goals you now have a means of measurement to determine success of the event. Sure it is great to just go and sit to absorb as much as you can, but a clear defined goal always helps.
  • If you have been to an event in the past, consider the items that you have learned in the past. If you can show how it has helped you and helped the company I think your chance of success is much better.
  • I am not sure if I am making this point as well as I would like to… In your discussions be sure to stress the things you cannot learn until you know you need to learn them. Let me give you an example. If you were to turn around and try to implement database mirroring and you had never done that before. You will find a number of awesome check lists, some in blogs, with a lot of detail in books on-line. However, if you we sitting down over lunch, I would be sure to bring up things such as making sure you sync jobs and logins. I would mention how you might want to look at a custom index plan if you were on a maintenance plan. Could you find this elsewhere? Maybe, but it takes a bit of research and a lot of time. It is better to know what potential obstacles you may run into well before you find them in your production environment.
  • Inform the company that the event is going to help you build your network. I can’t tell you how many people I know that are strong in areas of technology where I am week. I am not just referring to SQL Server, it is amazing once this network is built on how many people can help you. I am a DBA, I don’t do a lot outside of SQL Server but when I asked my network about RDP Management tools, I found Remote Desktop Manager.
  • If I sat and thought about it I bet there are many more examples I could come up with…

What if the issue is cost? Some companies don’t always have the budget to do these things, I just recently learned of a company whose health costs have gone up each year the last 3 years by 20% a year. Yet the company has not passed this along to the employees. There are ways that you can help lessen the impact and to be honest the time to start is now.

  • Have you considered rooming with someone? This is a big cost, if you can split in half or even thirds would this get your company to send you?
  • Have you considered working with your local users group, or volunteering for PASS? There are many ways to get the basic conference fee covered if you are helping out.
  • Do you have any vendors that are planning on going? Sometimes they are willing to sponsor people to attend the event.
  • Sign up early, the sooner you do the better the price gets. If I remember correctly when you are at a summit, you can sign up for next years at a big discount. The closer you get to the Event, the price normally goes up. As I write this, the cost is $1300 http://www.sqlpass.org/summit/2013/default.aspx. If you were to sign up before Jan 1st time frame I think it was about $1,000.00.
  • Frequent Flyer Miles if you have them.

If all else fails… Remember you are a resource to a company. If they can’t invest in you to make you a better resource for them, should you be investing in you to make you a better resource?

I hope I have passed along a few ideas.

I am looking at the sessions that I want to submit for the PASS Summit this year, and I am debating a new session that I think could be a lot of fun, but I am not sure if I should submit it.  If you could take a few minutes and let me know what you think, it would really be appreciated.

One of the things that people say a lot coming out of my past sessions is they like the relevant experiences that I share. I talk about how companies have done something so very wrong and the downstream effects of those decisions.

I was thinking about a session based on my experiences with the session designed to be funny and fun.  The title would be something along the lines of A SQLShaw case study. It would include mistakes I have made from my first job and solutions for issues companies have faced.

So what do you think?  Would you like to see a session about some of the crazy things I have seen?

Are you testing your backups, If so how? Sure there is a couple options that you can use to help validate backups but does this mean you are 100% sure without a doubt that it can be restored? Have you ever seen a backup file not restore?

Last week I was working on a server that was having a little bit of a storage issue, the vendor was pretty sure after we took a couple steps that the storage would return to normal behavior. Management was not satisfied with the vendors forecast of pretty sure, and as I side note I could not agree more with them. Management knew that a restore process was going to take some time, so rather than wait for the maintenance window when the storage fix was going to be attempted a decision was made to start a restore on a different server. This restore was being done as a just in case… Just in case the fix on the storage side did not work, and they lost a database. So I was off and running with a restore database task.

About two hours into the restore I received an error that stated unexpected end of file. I wasn’t too sure what exactly caused the short file, but I did know it did not sound good, and I could not restore from it. After I did some research it looked like the backup file I was restoring from was much smaller than the backup file SQL Server had created a few days before.

So here is my point…

It does not matter what you do on the backup side of the process, if you do not restore the file, you are at risk of having a bad backup file and then what?

It is good practice to restore your backups on a frequent basis, I may even be as bold as to say that you may want to restore each backup just to verify it. Either way, when you restore these backups it may not be good enough to copy the file to another server and then restore that backup. When you do a test restore you should test it from end to end. This means if you store your backups off-site then request a backup from that off site location and restore that file. If you restore your files with that methodology, not only are you testing that SQL Server created a good backup file, but that all the other pieces work as well. I like to back up and keep only one week’s worth of backups on local storage. As soon as the backup is done, it either goes to tape or another data center. So there are a number of pieces in that backup process, those are the same pieces that are part of the restore process.

Do yourself a favor, test your backups. Do this by restoring your databases from end to end.

A couple quick notes…

I found some interesting statistics on data loss and did a short post on why these simple numbers enforce the need to complete regular Security Audits on your databases. Based on the numbers I found, completing a security audit and making appropriate changes a company can limit its risk by nearly 50%, just by following best practices internally to your organization. I hope you find it of interest, you can find the full post here on Xtivia’s blog.

My first presentation at the PASS Summit somewhere around 8 years ago was all about how to hire a DBA and how to be hired as a DBA. It was received really well and I was really amazed by the feedback. This past November in Seattle at the PASS Summit I was presented an opportunity to present on some interviewing tips. I am excited to say that on March 13th, I will be presenting this for the PASS Professional Development Virtual Chapter. The great thing about these chapter meetings is that you don’t have to leave the office or your home to attend the event, because it is all on line and it is free to attend. If you would like more information or would like to attend, you can do that here. I hope to see you there.

I started a series of blog posts a few weeks ago where I wanted to focus on my lifestyle and how it relates back to work and SQL Server. The short of it is that I live and work out of my 40 foot camper, and I wouldn’t have it any other way. In my first post I was really curious on how many people really wanted to hear more about this topic and what sort of information did people want to get from it. I was overwhelmed by the number of people that responded and the questions that came out of it. So for my first follow up post, I want to directly address Brent Ozar’s (T|B) questions. Here is a portion of what Brent had to say:

“How often do you hook up the trailer and move to another site?

Are you able to focus on work when your wife’s in the trailer, too? I have a tough time telecommuting when I can see/hear Erika, so it works really well when she’s at her day job. Once she’s home, I have to quit (or head out to a coffee shop).”

Well the first question is pretty easy to answer, or at least up to this point. How often do we move, well at this point it is only twice a year. We have what I am calling is my home base, that is Mountaindale located just south of Colorado Springs, Co. The campground itself has a really awesome history, and there is so much to just see and do, but that is a post for another time. This winter we choose to go Blythe, Ca. to a place that used to be a KOA and is now called the RivieraRVResort. We came here in the Fall about mid October, and we will head back to our home base in Colorado by April 1st. For the future, well not too sure yet. There have been some challenges with coming to Blythe, the biggest one as it relates to working from home is the internet connection. The service out here is done by accompany called SuddenLink. I have had non-stop issues with them not being able to keep my connection on-line and at the speed I pay for. In the future, I am going to have to do a lot more in depth research on internet connections before we set out on a new destination.

Brent’s second question is the one that I have really be thinking about a lot. And when I say a lot, I mean really thinking about it. One of the reasons that this questions was so hard was I really felt that for me to answer it properly I need to do a very truthful evaluation of myself.

Let me start by saying that the only way that this lifestyle works for me and my professional career, is get as much done here at home or in the camper, as I would sitting in an office. It sounds like a pretty easy thing to do, if you get a certain amount of work done in one location, no matter how you determine to measure it, that same amount if not more needs to be completed when I work remotely. I don’t think I am having too much difficulty doing that, I do think that I get more done when I work remote than when I am in the office. There are a few issues that I am working on solutions for, such as hallway architectures. When you are in an office, often you will get stopped in the hall, or in the break room, and discussions are had. Some of these are really valuable. I am working on this and I think I am making headway, there are a lot of shorter emails, instance messages, and phone calls then I had originally planned for. To directly answer the question that Brent asked, do I get distracted. You bet, there are times when I have to go kill the occasional spider, or help move a lizard out of the way so he doesn’t get hurt. Just a few nights ago, I was working on something and we heard a loud hoot noise, I spent the next hour running around watching a great horned owl. Even with those distractions, I find that I am spending more time in front of a computer than I ever have before. My concentration level has gone up, and I have been able to find the time to get some of those projects done that I have been wanting to do for years.

With that being said… I find there is a big swing in the other direction of this discussion. Because we are so limited on space, the kitchen table is my office, I have my laptop there and my wife has her laptop there. When it is 8:00 PM and dinner is done, the dishes have been cleaned and some mind numbing TV show is sucking my brain cells dry, I can see my laptop not 20 feet from me. If you are at all like I am, when you have a problem or challenge that you are working on, it is always there on your mind. It sits there when you are eating, going to sleep and even when I should be relaxing. These are the moments that distract me the most. I can see the laptop, the ideas are flowing, and it is just so easy to walk by the computer, sit down and start working on something. Next think I know, I have been sitting in front of my computer for 3 hours, the wife has gone to bed, the dog wants to go for a walk and the precious me time is gone. I think my outside of work life is impacted more than my work like.

There is a balance for sure, I have to make sure that I take time to go out to dinner, or go to the local race track for some entertainment. I have started taking a lot of pictures, and I want to really grow in the hobby, but this means that I need to set specific time for work and then for me and for my wife. The nature of what I do for a living will always have me working around the clock at time, this is something we know and expect, it happens sometimes I have to really focus to make sure that I know it is ok that if I got a good days’ worth of work in that I need to stop working, and start doing other things. When you are in an office, and you leave for the day, sure you may go home and fire up the laptop, but that specific action of leaving the office is a great mental separator between work and home. So far I think I am going well with managing this balance. Could I be better, sure. These distractions, go both ways for me. I am sure they do for Brent as well.

I was poking around today on a new tool that I have been using, Remote Desktop Manager by Devolutions. (I posted a blog about it a few months back if you are interested in seeing it.)

My Issue

I have this one server that process information and it has a critical role in the success of the company. If the database is not performing well and data is not processing as fast as it should be, there are some SLA’s with customers that might not be achieved. In normal day to day business I rely on a stored procedure that I execute in my dbutilities database, the procedure gets the status, records it and then evaluates if I need to be notified. There are times however, I am notified that something may not be moving as fast as it could and I should check on it. My reaction is to connect to the server, and run my procedure that checks on the status. With time being a critical component of this, I have found that if I was not already connected that my response is delayed due to creating a connection.

My Solution

There are a number of things that I could do to make this a quick and easy check on my server. SQL Server wise all I am doing is calling a procedure. So I could use many tools to complete the task at hand. However, I spend more of my day going from server to server and I am already working in the Remote Desktop Manager. So I thought it would be really cool if I had a link there that would give me the shortcut to the information I was looking for. I was surprised at how much of a shortcut this turned out to be.

First I created a new session. Under the “Other” section I found a Data Report link. I figured I would give it a shot.

In this screen shot case, you will notice a couple things. In the query section for security reasons I have created a very generic stored procedure in my test database that looks like this:

USE
MSDB

GO

 

Create
Procedure
EnabledJobs

AS

    Select
Name
from
sysjobs_view

    Where
enabled
= 1

 

I will call that stored procedure as an example.

Once I had selected the Data Report a new box appeared with all the info I needed to make my connection. I named the session, created a new group for it to reside and even changed the default image so I could tell that this was a report that I used on-demand not for my day to day checks. The server connection dialog box is the standard connection sting information that you may have seen many times before, In the Query section I added the execution of the stored procedure, in the case of the example it is called EnabledJobs.

The finished output?

 

I now have a new session in my tree, in a folder that I created. Each time I start the session, the window displays the results of the query. In this case it took me less than a second to connect to the server, run the stored procedure and get the results I needed. Meaning that in the original case that I started with, I either know I have an issue I need to work on, or I know my servers are fine, and I can continue on with my day.

Like I mentioned before in the last post on this tool, there is a lot more that I am not using, if you spend your day going from one server to the next, you might want to give it a try. I have been surprised so far on how I have been able to use it to make my life all that much easier.