The postings on this site are my own and do not represent my Employer's positions, advice or strategies.

LifeAsBob - Blog



No Ads ever, except search!
Saturday, July 20, 2024 Login

Blog posts for the month of November,2007.
Bob's Blog up and running !11/12/2007 2:59:03 AM

It has taken me some time to get this done.  As any good tech guy I rolled my own first, but found the functionality I wanted missing.  Though it is a great exercise to create your own.  I evaluated other options, but didn't want to use a commercially hosted solution; because I wanted to integrate the blog into my existing web site.

Some might ask, why not just use one of the commercial sites, etc; I don't like the advertising; I wanted the blog integrated into my non-blog site content.  Also from a technical perspective I find it very important to stay current with technology, and my web site, which isn't the prettiest thing, is my place to work on things; gives one a new perspective on technology.

Enter dasBlog.  Much more complicated than I thought, but I managed to get it up and running in probably 4-6 hours; than I had to get into the source code and see how it works; i'm impressed.


Job Schedule greater than 60 minutes11/12/2007 1:06:28 PM

Recently I ran into an issue using SQL Server management Studio to edit a SQL Agent scheduled job.

Specifically the business requirement was to have a job run every 87 minutes.  When I went to edit the job, it would let me type in 87 minutes but when you tabbed off or saved, it changed to 60 minutes!

Ended up having to edit this using TSQL, disabling the current schedule and adding a new schedule that was set for 87 minutes, runs and works no problem, you just can't edit it through the GUI.

Thankyou SQL Server Management Studio.

Parse File Name from path 11/20/2007 8:06:32 PM

Such a simple task, but one that trips me up each time.  I can do it very easily in TSQL, but sometimes i have to do it in .net scripting, vb or c#.

I tried using Regex below but was just too tired to fight beyound what I had...any help, the old standard function is what i ended up using...

Dim MyRegex as Regex = New Regex( "[^/]+$", RegexOptions.RightToLeft )


    Private Function GetNameNoPathorExt(ByVal FileNameWithPath) As String
        Dim sTemp As String
        Dim iPos As Integer

        iPos = InStr(FileNameWithPath, ".")
        If iPos > 1 Then
            sTemp = Left$(FileNameWithPath, iPos - 1)
            sTemp = FileNameWithPath
        End If

        iPos = InStrRev(sTemp, "\")
        If iPos > 1 Then
            sTemp = Right$(sTemp, Len(sTemp) - iPos)
        End If

        Return sTemp
    End Function

Top 25 skills every DBA Should know11/12/2007 1:48:06 PM

This topic was really my reason for creating the blog site.

I got the idea while reading an issue of Popular Mechanics, October 2007, titled "Top 25 Skills every man should know." 

I found that the same analogy applies to DBA's, "Forgetting the Basics", so we're not talking about describing a primary key, or what a data file is, but the stuff that makes a DBA Professional, "an asset to the Organization".  I consider this the basics, a strong foundation in Computer Science and Relational theory is the "Basics", many of today's DBA's are self-taught DBA's from other disciplines.  Though I will say that I have seen many self-taugh DBA's that are far better experts than anyone else, but overall, I'm seeing a lack of skills when I interview people.  They know how to answer technical questions on indexes, joins, restores etc; but the basic skills...

My list is not really SQL Server specific, as I've worked with DB2 and Oracle DBA's and this list is generic enough to apply to any DBMS.

So here is my own list, in no particular order of importance...

  1. How to Perform a Point in Time Recovery.
  2. How Install multiple instances of SQL Server on Dedicated Ports, and explain how SQL Server communicates on them (can you say firewall ?, Do you know how to test connectivity with no tools ie Telnet / command prompt?).
  3. How to Manually uninstall SQL Server.
  4. How to start SQL Server in different modes, with different switches:
    • Single User Mode; Different location for tempDB, Bypass recover of user DB's
  5. How to use BCP from a command line
  6. Volumetrics and Capacity Planning.
    • Does anyone remember how to calculate, row, index and database size; project it out ?
  7. Security
    • It's a lot more than just data reader, data writer and SQL Injection !
  8. Describe and interpret an Entity Relationship Diagram.
  9. Understand Logging, and not just to text files
    • How many times I see a job, ETL, DTS / SSIS package with no logging to a text file, though I prefer a table for better reporting and forecasting.
  10. How to capture a baseline and use it !
    • Baseline performance metrics
    • Data sizing baselines (kind of covered already)
    • Query baselines
    • Present it to management and budget accordingly
  11. Explain, present, translate ROI of training and utilities to management and get funding for them
  12. Create a SLA (Service Level Agreement) or OLA (Operational Level Agreement), present it and get approval for it
  13. How to prioritize competing requirements and/or present them to management for approval.
  14. How to know what to work on when, document it, present it to management so a common understanding of the environment exists (everyone wants best practices, but you have to know where to put your labor and money to get things delivered).
  15. Be Competent on disk types and the effect of DBMS design (phsyical layout on disk).  I say competent as being an expert on this goes to the height of religous debate, and SAN Technology only confuses things more, but every DBA Should be competent enough in this area to talk to Engineers, interpreting and analyzing the "baseline" data above and how the disk can affect them
  16. Know when to call for support, even with no support contract, there are times it's either cheaper or wiser to ask for help
  17. "Be Like Water", be flexible, walk in the other group's shoes, developers, qa, management and most of all "the business".
  18. Know when to Exceed your Authority, and be prepared to intelligently explain why, don't let a server with a raid controller issue, run to the point it corrupts 100's of gb's of data and claim you didn't have the autority to shut it down !
  19. Documentation, enough said...
  20. Know how to communicate, verbally, written, mentor, teach.
  21. Know how to learn from others.
  22. Change Management Methodologies, Principles and why they exist.
  23. Survive without a GUI interface.
  24. Understand, Locking, Blocking, concurrency and deadlocking...these are the Holy Grail of Scalability.
  25. Keep your resume up to date.

Bonus Skills:

  1. Forecasting growth, but not of the DBMS, of the labor to manage the DBMS
  2. Public Speaking
  3. Privacy Issues



Blog Home