Wanting to learn

  • Hi all

     

    I'm the archetypal "accidental DBA" and it's got me hooked.

    I've been digging around for courses (preferably on-line) to learn more about it and (hopefully) get some certifications.

     

    There seem to be a lot of courses at various price ranges.

     

    Can anyone recommend some good courses (preferably not too expensive as I'm paying for them) which will help me learn more about this particular craft?

    I'm just about to buy a book on Powershell which I think will also help.

     

    Thanks in advance

     

    Richard

  • Probably the stuff produced by the SQLSkills team for Pluralsight would be worth checking out. Not sure of the cost. I just know I trust the source. Otherwise, there are tons and tons of resources here and on Simple-Talk. Check out the Stairways series up above.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • I actually really liked the uCertify course for MTA-Database Fundamentals.  That is the one I took for getting my MTA.  That being said, if you have used SQL Server for a bit and understand normalization up to 3rd normal form, the MTA-Database Fundamentals exam is pretty easy.  I paid for uCertify out of my pocket, so it was not an expensive option.

    If you don't mind learning on your own, signing up for PASS (free) and watching some of the previous year content is helpful.  I know I thought I was a decent DBA and database developer and then learned at PASS Summit about windowing functions and it blew my mind!  I've also found that these forums help been very helpful.

    I would look for free training first (youtube, sql server central, PASS recordings, etc), try to find a local SQL Server User Group, if any exist, and see what you can learn and which SQL path you want to go down.  There are a LOT!

    The above is all just my opinion on what you should do. 
    As with all advice you find on a random internet forum - you shouldn't blindly follow it.  Always test on a test server to see if there is negative side effects before making changes to live!
    I recommend you NEVER run "random code" you found online on any system you care about UNLESS you understand and can verify the code OR you don't care if the code trashes your system.

  • If you have not already read it, you may find the following to be useful:

    https://www.red-gate.com/library/troubleshooting-sql-server-a-guide-for-accidental-dbas

  • Thanks folks.

     

    The course from SQLSkills actually started yesterday so I missed out on that one.

    It does looks like there are various other offerings available, So i'll keep digging (on the web and on here).

     

    Richard

  • The pluralsight stuff is on demand, so you could still pursue it.

    Another plug for the Accidental DBA book. It's a little long in the tooth, but the info in it is still extremely solid.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Thanks Grant.  I'd already grabbed a copy of that (and completely forgotten about it until you kicked a few neurons into life!).

     

    I'm also grabbing some books on Powershell (although it might be a bit too much to take on at once).  I'll see how it goes.

     

    Thanks

    Richard

  • Oh do learn Powershell. Don Jones is who I learned from. I can heartily recommend him. Great person. Great teacher.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Thanks Grant.  I've been looking at various books but there are loads.

    I'll have a look for Don Jones unless there's something you can recommend?

     

    Regards

     

    Richard

  • Get the best SQL administration book for whichever version of SQL you are on.  The "Inside SQL Server"/Internals books with Kalen Delaney are excellent.

    For learning T-SQL, get books by Itzik Ben-Gan.

    For heavy duty internals, including optimizer details (when you're ready for that), look at Paul White's blog / articles.

    SQL DBA,SQL Server MVP(07, 08, 09) A socialist is someone who will give you the shirt off *someone else's* back.

  • Honestly not sure of the titles now. The one I read, about 10 years ago, was PowerShell TFM (and yeah, that means what you think). Not sure if he's maintained that or there's a new one.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Grant and many others will seriously disagree with me but... My recommendation is that you don't spread your learning too thin.  I've found that a whole lot of what people use PowerShell for is frequently more simply done in T-SQL.  A whole lot of supposedly "killer" PowerShell apps actually have some rather simple T-SQL embedded in them.  Some of them are a bit stupid, to boot.  For example, it was all the rage to demonstrate technical prowess by writing some PowerShell that would act as the single source "director/coordinator/controller" to do all of your backups across all of your servers in your entire enterprise but no one that wrote such articles considered what would happen to the databases (especially the transaction log files) even that single source of control failed.  If each server had its own autonomous backup routines, they wouldn't explode when the central single backup coordination system failed.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • I agree.   I'd strongly urge to concentrate on the core aspects of SQL Server first, then learn about PowerShell later if you still want to.  There's enough to learn in SQL Server to keep you busy for years, btw.  It will take at least two years to get a solid understanding of SQL, especially index tuning.

    SQL DBA,SQL Server MVP(07, 08, 09) A socialist is someone who will give you the shirt off *someone else's* back.

  • Quick story.

    When I was first learning Powershell, it happened to coincide with a data center move. We were going to physically move our data center between builds. Loads of planning went into it. When it came time to do the move, it was announced, late, that before the move started, as we did each set of machines, they wanted to add an additional backup (not a bad idea). We had already divided the work into shifts. A team would come in, move a set of machines, ensure it was all good, then hand off to the next team and the next set of machines. I was on the second shift. The first shift person had to run backups of all databases on a set of servers. Now, we had a good t-sql script to backup all the databases on a given server (with include/exclude lists, all the bells & whistles you can think of) and it was installed on every instance by default. All set right? Well, yes & no. Now, we needed a way to manually fire it off on a set list of servers. First person, got the list of servers, opened SSMS, connected to the list of servers in a set of query windows, and walked through the set of 12-15 query windows, running the script, and then scrolled between them, one a time, until they were all done. Then he gathered all the results by copying & pasting, and sent that out. All told, it took him about 4 hours to do everything. When I came on, he explained this to me. After rolling my eyes, I sat down, spent about 45 minutes writing a powershell script. I ran it. It took less than an hour and I had the backups done and the output report. I then handed that script off to the next shifts who all completed their work in less than an hour. When we were done, we never used that script ever again, because it solved a rather unique problem that we never replicated.

    It's not that anything I did was special. In fact, I'm positive the script was crap and could have been written in a much better, more efficient manner. The key difference was, one person chose to do everything manually, another spotted an opportunity to automate stuff. Be the person that automates stuff. I would argue that knowing Powershell AND SQL Server internals, etc., are both needed to be an effective DBA.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • That's a great story, Grant, and I 100% agree that's was an appropriate use of PowerShell.  The question is, would you have been comfortable in letting someone who didn't know how to take a backup in SQL Server write and use that script?

    My point is that if you don't know the "Gazintas", you shouldn't use PowerShell to do it either.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

Viewing 15 posts - 1 through 15 (of 20 total)

You must be logged in to reply to this topic. Login to reply