How To Become A DBA
How To Become A DBA
HOW TO
BECOME A
SQL SERVER
DATABASE
ADMINISTRATOR
By Andy Warren, Updated by Vicky Harp
INTRODUCTION
You’re reading this because you think becoming a database
administrator (DBA) may be the right career path for you. Our goal here
is to give you some insight into what the job looks like when using SQL
Server, show you at a high level the skills you need to get that first job
in the field, and give you suggestions for how to acquire those skills
and find your first DBA job working with SQL Server.
Three other products ship ‘in the box’ with SQL Server and are very commonly used by database
administrators. SQL Server Reporting Services (SSRS) is used to create, store, and execute
reports against a variety of data sources, including SQL Server. SQL Server Integration Services
(SSIS) is used for loading and transforming data. SQL Server Analysis Services (SSAS) is used to
create “cubes” typically used in data warehouse scenarios.
SQL Database is a Windows Azure hosted service that provides almost all of the features of SQL
Server. It is also possible to run SQL Server in a virtual machine hosted on Windows Azure (or
other cloud hosting service).
THE ROLE OF THE DBA
Database Administrators are tasked with all facets of managing SQL Server ranging from installation and patching to creating
databases to managing permissions that allow users to actually use the databases. But more than anything, they are responsible for
protecting the data and insuring that performance levels are maintained. They often act as internal advisors on how to use SQL
Server effectively. It is a critical role because if a database is offline or data is lost, the business and its customers immediately feel
the impact.
A typical week for a Production DBA might include these types of tasks:
Applying changes to database objects that have been previously tested and approved. This usually happens during a
designated ‘change window’ that is after normal business hours.
Refreshing a database in development using a copy of production data and obfuscating any sensitive or confidential data
(backup/restore)
Reviewing any failed jobs and either fixing or referring to the appropriate developer for research
Troubleshooting a sudden performance slowdown with a key application
Granting a new developer access to read/write data in a database
Deploying SSIS packages and creating a job to run them
Reviewing proposed database changes to make sure they meet company standards, have no security issues, and will
use an appropriate amount of server resources
BECOMING A DBA
The hard part about becoming a DBA is getting the first job. No hiring
manager wants to give a user with no track record the keys to the most
valuable thing the company owns – the data. A single mistake by a DBA
can cause an outage or loss of data that can result in loss of revenue or
in the worst case the failure of the company. Of course any DBA may
(and probably will) make mistakes; but the challenge for the hiring
manager is that the first time DBA often makes mistakes because
they didn’t understand the full impact of their actions. Many companies
only have a single DBA and can’t take the risk of hiring a ‘Junior DBA’
because there is no one on staff with the time or skills to coach them.
Very few DBAs start out as DBAs. Many start out as developers and as
they work with the database (almost all applications need at least one
database) they find that they are drawn to the management side of things.
Many start out as network/systems administrators who start working with
the database by doing installs and patches, learning the basics and then
gradually adding skills. Others start as report writers or doing ETL work
(extract, transform, and load). Regardless of their starting point, they show
an affinity for data and databases – it comes naturally to them.
Most first time DBAs are hired from existing staff. They have learned how the business works, have demonstrated their work ethic,
earned trust, and shown that affinity for data we mentioned earlier. The combination of those is often enough to convince a manager
to take a chance on moving an internal candidate into the DBA role if they know the candidate is interested and the candidate has
done something to be prepared for the opportunity. If you want to become a DBA you have to be ready for that opportunity by
building skills above and beyond those you use at work – you need to learn the basic skills of a DBA.
Note: Another option is to use virtual machines hosted in Azure. You can accomplish the same learning, but Azure isn’t free.
Remember that you have to “turn off” machines when done, just doing a shutdown doesn’t stop the billing. If your employer has
MSDN subscriptions you may be able to get some Azure hours that way.
Install multiple instances of SQL Server and apply the latest service pack, set up jobs and email notifications
Create and manage logins, users, database level roles, and be able to explain and fix an ‘orphaned’ user
Fully understand how to use GRANT, REVOKE, and DENY
Create and modify tables, views, stored procedures, and functions (SSMS & TSQL)
Write queries using INNER, LEFT, FULL, and CROSS JOINS plus the use of CROSS/OUTER APPLY
Use GROUP BY, COUNT, WHERE, HAVING, UNION, and UNION ALL in TSQL queries
Understand recovery models and how to change them
Know how to do ad hoc and scheduled FULL, DIFFERENTIAL, and LOG backups
Know how to restore a backup, including how to restore the database with a different name and/or to a different location
Understand how indexes and statistics work, how to create them, and how to maintain them
That’s not everything you need to know, but if you can do all of these, then you should able to credibly interview for a
junior/intermediate level DBA position.
HOW DO YOU LEARN BEST?
As you set out to acquire the skills above you have to figure out
what works for you. Some people learn effectively from books,
others do not. Some like video where they can see the task
being done, others prefer a written step by step article that they
can follow at their own pace. Some prefer to go to a class where
they can get immediate feedback, others prefer to puzzle out the
answers on their own. Most people will end up using a hybrid of
books, articles, videos, classes, and forum discussions to learn,
but use what works for you. To be successful you’re going to have
to be able to learn things on your own. It’s just not practical to pay
for all the classes you would need to take to learn all the things you
will need to know.
There are many successful DBAs who are entirely self-taught. They
buy books, read articles, and watch presentations, then go back and
try out the techniques until they understand them and can do them.
This is the most cost effective method, with a cost approaching zero
if you don’t count the time investment, if it works for you.
CLASSES
The fastest way to get started is to take a 5 day class that focuses on SQL Server administration. You can expect to pay anywhere
from about $2,000 USD to $4,000 USD for the class, plus any travel needed. Oftentimes, employers will consider paying for or
subsidizing this type of educational opportunity. While you can’t learn all you need to know in 5 days, a course of this nature will
get you started and over the initial steep learning curve. Start with local training providers and expand your search from there.
This is a way to jumpstart your learning – it will not make you immediately employable as a DBA.
You may find online versions of classes. They tend to be more cost effective because no travel is involved, but it depends on
whether it works for you whether the savings is worthwhile. Online learning is different than being in a classroom no matter how hard
they work to create that environment online. When you evaluate these options keep in mind that there are many sources for
recorded training available for free or minimal cost. It makes sense to spend the additional money on a true online class if you really
need the guidance of an instructor.
What if you don’t have a DBA? This is very common with smaller companies. Typically someone on the team will have DBA level
access but not really be a DBA which can lead to a lot of administrative work not being done or less than optimal solutions being
created. As you see pain points you may be able to work on the problem and come up with a recommended solution. Go slow, ask
questions, and pay attention to how the other people involve react when you offer up suggestions. Getting the chance to learn and
experiment is far more important than ‘winning’ every discussion.
Keep an eye out for chance to volunteer for any project that might drive learning. It might be an official work project or a volunteer
opportunity for a local non-profit or a small consulting engagement after hours. If you can work with SQL Server and gain experience,
that’s a big win for you even if you’re working for free.
User groups and former employers are great places to look for someone to fill this role. Start slow, let them get to know you and
see if the chemistry builds. Try to build the relationship to the point where you can meet or talk for an hour every week or every
other week. Ask them to tell you about their week. What did they work on? What problem did they solve? Why do they do things a
certain way? You can also use that time to ask their opinion on various parts of technology as you learn, but don’t look at them as
a tutor. They expect you to figure out most of it and they’ll help you stay focused and moving on the path you’ve selected.
THE SQL COMMUNITY
Once you get started with SQL Server you’ll start to hear about the SQL Community: a catch-all name for the many people and web
sites that collectively engage on SQL Server topics. It’s a group of people that are smart, engaging, and approachable. All you have
to do is participate: ask questions, answer questions, attend events - participate on whatever level suits you and you’ll soon start to
feel like you’ve truly joined a community as well as a craft.
To stretch the analogy, there are a lot of neighborhoods within the community. You may like the forums on SQLServerCentral or
https:/ twit er.com/sqlpass is a better fit (start by following the #sqlserver, #sqlpass, and #sqlhelp hashtags). Make it a habit to
MSDN, or you may find Twitter
connect with people you meet on LinkedIn ( join the PASS https:/ www.linkedingroup
.com/groups/61756 as a minimum).
htPASS
tps:/ www.linkediSummit.
n.com/groups/61756 The premier event to attend if you’re a SQL Server professional, it’s a three day mega conference with the
option to add one or two full day seminars to the schedule. Price varies based on when you register – register in
December for the following year event to get the lowest price.
http://www.
24 pass.org/AttendanEvent/Onl
Hours of PASS ineEvents/24Hoursof
(24HOP). PASS.aspx Held twice a year in English (occasionally in other languages) - it’s a 24 hour live stream of
technical presentations for free.
http: //sqlsaturday.com/ A one day free training event about SQL Server. You can think of it as a mini-conference or a place to learn
SQLSaturday.
and meet people. Attendance is free, but there is typically a fee for lunch (or you can bring your own).
http:/ www.pas .org/Community/Groups.aspx (user groups) around the world; do a search to see if there is one near you. Chapters usually
PASS also has more than 200 Chapters
meet once a month for a technical presentation and some networking. Food is usually provided free or low cost – check the chapter
http:/ www.pass.org/Communi
site for details. There are also Virtual ty/Groups/VirtualGroups.aspx that meet online and focus on specific technologies and topics.
Chapters
Be sure to sign up for the bi-weekly PASS Connector email to get PASS news.
Spend the first 30 minutes of every day reviewing your servers – the daily health check.
Go slow and be methodical.
The date by which you’ll have completed your first 200 hours of study. You shouldbe thinking about interviewing to get
feedback on where yo u are at this point.
The date by which you’ll take and pass your first certification exam
The date by which you want to be a real, official SQL Server DBA. Yes, it’s a guess, but how fast do you want to drive
forward? Setting this date makes you think about that.
RESOURCES
SOFTWARE
SQL Server
https:/ www.microsoft.com/Evaluation.
1. 2014 en-us/evalcenter/evaluate-sql-server-2014-sp2/ Time limited, but perfect for practice. Free.
2. 2014 Developer
https://www.microsoftstore.com/store/msusa/en_US/cat/cat Edition.
egoryID.69418300 About $59.95 USD. Buy if you need to keep it running longer than the evaluation version
allows.
https:/ www.virtualbox.orgBox.
Virtual /wiki/Downloads Free virtualization software from Oracle that runs Windows and SQL Server just fine. If you prefer you can use
Hyper-V, VMware, or another virtualization solution.
https:
Windows//azure.microsoft.com/en-us/?b=17.
Azure.05 Requires you to create an account and provide a credit card. Charges for various uses are per minute
and vary based on the service and how you provision. In general, use the smallest/cheapest solution that will work and
shut it down via the Azure portal when done to stop the meter.
https: //msftdbprodsamples.codeplex.com/releases/view/125550 This is the standard, free demo database provided by Microsoft for SQL 2016 and up. If you are
WorldWidImporters:
working with an earlier version of SQL Server, you will need to search for the previous demo database, named Adventure
Works. Every DBA should have installed this once.
WEB SITES
http://www.sqlservercentral.com/
SQLServerCentral.com. The biggest and best SQL Server site. New technical content each day and vibrant forums, plus
quite a few syndicated blogs. If you have a question about SQL this is a great place to ask. The daily newsletter is packed
full of information – a must read. Free.
https://www.mssqltips.com/ Lots and lots of SQL Server content, all in the form of “tips.” They frequently host free webinars on SQL
MSSQLTips.com.
Server topics as well. Free.
https:/ msdn.microsoft.com The Microsoft Developer Network isn’t just for developers. This is where you’ll find SQL Server downloads,
MSDN.
patches, and the entire “Books Online” for every version of SQL Server. Much of it is free, but the subscriber downloads
require paid (and expensive) membership.
https://www.pass.org/
Sqlpass.org. You’ll want to sign up as a PASS member (it’s free) to hear about their free and paid events all over the world.
Be sure to watch the “Top 10 Presentations” from the most recent PASS Summit.
http://www.sqlmag.com/
http://sqlmag.com/
SQL Server Pro. Lots of SQL Server content.
http:/ serverfault.com/questions/tagged/sql-server ServerFault and StackExchange are sites that focus on answering questions. Frame your question well and
ServerFault.
you’ll typically get a very useful answer. Users are awarded points for answers that are up-voted.
https://mva.microsoft.com/
Microsoft Virtual Academy. Free online classes about a variety of topics. They have a system where earn points for
completing courses. Useful if you find keeping score keeps you motivated.
http://sqlblog.com/ This is a web site that hosts a number of influential SQL bloggers. It’s a good place to read about advanced
SQLBlog.com.
techniques and ideas and to get to know the leading voices in the industry.
https: //www.microsoft.com/en-us/l
Microsoft earning/default.aspx This is the place to learn about learning opportunities from Microsoft, including but not limited to
Learning.
Microsoft IT Certifications.
https: //www.pluralsight.com/ For about $30 USD per month you get access to a large catalog of online presentations. There is enough
PluralSight.
SQL Server content to keep you busy for quite a while.
http://sqlserverbuilds.blogspot.in/
Microsoft SQL Server Version List (Build List). This is the list of every build of SQL Server, stuff only a DBA could love – a
very useful resource to have bookmarked.
https://connect.microsoft.com/
Microsoft Connect. This is where you can file bugs on SQL Server and read about bugs already submitted. Not your first
stop when you’re learning, but something a DBA should know about.
https://github.com/Microsoft This is the Microsoft site for open source projects. There are a number of SQL Server related projects hosted
Codeplex.
here worth exploring.
CERTIFICATIONS
https://mcp.microsoft.com
Microsoft MCP. This is where you start when you plan to take an exam and is also where you can obtain transcripts
https://home.pearsonvue.com/Home.
Pearson VUE. aspx Find locations for taking an exam.
https://www.transcender.com/ Online practice tests for Microsoft exams.
Transcender.
http://www.measureup.com/ Online practice tests for Microsoft exams.
MeasureUp.
FREE TOOLS/STUFF
The following is a sampling of the free tools and solutions available for SQL Server. Typically each vendor in the SQL Server market
has one or more free tools as well (usually registration is required, but no fee) and they are often very useful.
http://whoisactive.com/ A very powerful tool for diagnosing problems and one commonly used by DBAs.
Sp_whoisactive.
https://ola.hallengren.com/downloads.html
Maintenance Scripts. There are many ways to do maintenance in SQL Server. This is one set of scripts you’re bound to
run into and you can learn a lot from studying the code.
https://sqlpowerdoc.codeplex.com/ Extensive Powershell script to document servers and instances.
SQLPowerDoc.
https://bidshelper.codeplex.com/ This is a Visual Studio add-in for working with SSIS and BI projects.
BIDSHelper.
VENDOR LIST
All of these vendors sell a variety of tools that are useful to the DBA and almost every company will have tools from at least one
company on this list. In general they fall into two categories, monitoring and productivity. It’s worthwhile trying out products in both
categories from multiple vendors because it’s almost certain you’ll work with companies that already rely on them.
IDERA understands that IT doesn’t run on the network – it runs on the data and databases that
power your business. That’s why we design our products with the database as the nucleus of your
IT universe.
Our database lifecycle management solutions allow database and IT professionals to design,
monitor and manage data systems with complete confidence, whether in the cloud or on-premises.
We offer a diverse portfolio of free tools and educational resources to help you do more with less
while giving you the knowledge to deliver even more than you did yesterday.