In a very general sense, a database administrator is the individual responsible for maintaining the RDBMS system. In this article we will focus on Microsoft SQL Server; however, the concepts apply to virtually any database.
The DBA has many different responsibilities, but the overall goal of the DBA is to keep the server up at all times and to provide users with access to the required information when they need it. The DBA makes sure that the database is protected and that any chance of data loss is minimized.
Who are the DBAs and how do you become one? A DBA can be someone who, from the start, has concentrated in the area of database design and administration. A DBA can be a programmer who, by default or by volunteering, took over the responsibility of maintaining a SQL Server during project development and enjoyed the job so much that he switched. A DBA can be a system administrator who was given the added responsibility of maintaining a SQL Server. DBAs can even come from unrelated fields, such as accounting or the help desk, and switch to Information Systems to become DBAs. To start your journey to becoming a Microsoft SQL Server DBA, you need the following:
A good understanding of the operating system the database is on, such as Microsoft Windows NT
- Knowledge of Structured Query Language (SQL)
- Sound database design
- General understanding of network architectures (for example, Client/Server, Internet/Intranet, Enterprise)
- Knowledge about the database itself, such as Microsoft SQL Server
|If you are part of a technical team looking for a DBA, do yourself a favor and volunteer. It is a great job and good DBAs are in demand and typically are paid more than developers.|
The following sections examine the responsibilities of the database administrator and how they translate to various Microsoft SQL Server tasks.
Installing and Upgrading an SQL Server
The DBA is responsible for installing SQL Server or upgrading an existing SQL Server. In the case of upgrading SQL Server, the DBA is responsible for ensuring that if the upgrade is not successful, the SQL Server can be rolled back to an earlier release until the upgrade issues can be resolved. The DBA is also responsible for applying SQL Server service packs. A service pack is not a true upgrade, but an installation of the current version of software with various bug fixes and patches that have been resolved since the product's release.
Monitoring the Database Server's Health and Tuning Accordingly
Monitoring the health of the database server means making sure that the following is done:
- The server is running with optimal performance.
- The error log or event log is monitored for database errors.
- Databases have routine maintenance performed on them, and the overall system has periodic maintenance performed by the system administrator.
Using Storage Properly
SQL Server 2000 enables you to automatically grow the size of your databases and transaction logs, or you can choose to select a fixed size for the database and transaction log. Either way, maintaining the proper use of storage means monitoring space requirements and adding new storage space (disk drives) when required.
Performing Backup and Recovery Duties
Backup and recovery are the DBA's most critical tasks; they include the following aspects:
- Establishing standards and schedules for database backups
- Developing recovery procedures for each database
- Making sure that the backup schedules meet the recovery requirements
Managing Database Users and Security
With SQL Server 2000, the DBA works tightly with the Windows NT administrator to add user NT logins to the database. In non-NT domains, the DBA adds user logins. The DBA is also responsible for assigning users to databases and determining the proper security level for each user. Within each database, the DBA is responsible for assigning permissions to the various database objects such as tables, views, and stored procedures.
Working with Developers
It is important for the DBA to work closely with development teams to assist in overall database design, such as creating normalized databases, helping developers tune queries, assigning proper indexes, and aiding developers in the creation of triggers and stored procedures. In the SQL Server 2000 environment, a good DBA will show the developers how to use and take advantage of the SQL Server Index Tuning Wizard and the SQL Server profiler.
|I have too often seen DBAs who were content to sit back and watch developers make bad design and SQL Server decisions. I have also seen situations in which the DBA wanted to be involved in design decisions but management prevented it because it was not the DBA's job. Don't be underutilized. If you are in this situation, show your management this tip! Take an active role in new project development. The entire team will benefit from your insight and knowledge!|
Establishing and Enforcing Standards
The DBA should establish naming conventions and standards for the SQL Server and databases and make sure that everyone sticks to them.
The DBA is responsible for importing and exporting data to and from the SQL Server. In the current trend to downsize and combine client/server systems with mainframe systems and Web technologies to create Enterprise systems, importing data from the mainframe to SQL Server is a common occurrence that is about to become more common with the SQL Server 2000 Data Transformation Services. Good DTS DBAs will be in hot demand as companies struggle to move and translate legacy system to Enterprise systems.
SQL Server version 2000 has many different replication capabilities such as Merge replication (2-way disconnected replication) and queued replication. Managing and setting up replication topologies is a big undertaking for a DBA because of the complexities involved with properly setting up and maintaining replication.
SQL Server 2000 has substantial data warehousing capabilities that require the DBA to learn an additional product (the Microsoft OLAP Server) and architecture. Data warehousing provides new and interesting challenges to the DBA and in some companies a new career as a warehouse specialist.
The database administrator is responsible for setting up and scheduling various events using Windows NT and SQL Server to aid in performing many tasks such as backups and replication.
Providing 24-Hour Access
The database server must stay up, and the databases must always be protected and online. Be prepared to perform some maintenance and upgrades after hours. Also be prepared to carry that dreaded beeper. If the database server should go down, be ready to get the server up and running. After all, that's your job.
To be a good DBA, you must continue to study and practice your mission-critical procedures, such as testing your backups by recovering to a test database. In this business, technology changes very fast, so you must continue learning about SQL Server, available client/servers, and database design tools. It is a never-ending process.
The role of the database administrator is very important in an organization. The job can be challenging and exciting. If you are a DBA or want to be a DBA, remember that it is important to constantly study SQL Server and database tools. Become certified and practice your backup and recovery procedures.
About the Authors
Mark Spenik and Orryn Sledge are authors of Microsoft SQL Server 2000 DBA Survival Guide (Click to buy) a book published by Sams Publishing. This article is based on information from their book.
Mark Spenikis the vice president of Enterprise Technologies at Trilogy Consulting located in Richmond, VA. Mark is an MCSD and is frequently invited to speak at various developer conferences and seminars.
Orryn Sledge is an MCSD as well as the Practice Director with FullTilt in Pittsburgh, PA. He has been actively involved with SQL Server since 1992 and also is a frequent speaker at various Microsoft conferences and presentations.
© Copyright Sams Publishing, All Rights Reserved