In an era that places increasing importance on data, the role of a database administrator has never been more critical. As businesses continue to rely on data for decision-making, the DBA is an invaluable guardian and facilitator of data assets. But what exactly does a DBA do on a day-to-day basis, and why are they indispensable to businesses today?
The primary responsibility of a DBA is data integrity — ensuring the data an organization relies on for insights and decisions is accurate, consistent and reliable. However, beyond this cardinal role, the database administrator wears many hats, ranging from system installation and backup recovery to performance tuning and security protocols.
Here’s a list of skills a database admin should have and the actual tasks they perform. While some duties are common to all DBAs, others are only required in some database environments.
- What key skills should database administrators have?
- What does a database administrator do?
- What tools do database administrators work with?
- A role in database administration
What key skills should database administrators have?
Database administrators require several different skills to become fully proficient. In a lot of cases, DBAs can start off as developers and train on the job before fully transitioning into the role.
SEE: Explore this database admin hiring kit from TechRepublic Premium.
Serving as the heartbeat of the organization, DBAs will often collaborate with different teams within the organization to design business logic, select appropriate database solutions or provide in-house advice. As such, DBAs require certain technical and soft skills to excel at their role.
SQL and other programming languages
A deep understanding of SQL, the standard language for database management and administration, is a fundamental skill for any database administrator. To really excel, proficiency in programming languages such as Python, R and Java is required, especially to deal with tasks like automation, analysis and integrations with other software systems.
Managing very large databases
Managing very large databases involves expertise in managing operations that are potentially time-consuming, such as table copying. The database admin needs to understand techniques like table partitioning (Oracle), federated databases (SQL Server) or replication (MySQL) to enable a database to scale to large sizes while still being manageable.
Managing database availability
These days, especially for websites, databases often need to be available constantly. Managing a database in this environment requires an understanding of which types of maintenance operations can be done online with the database available to users and which must be scheduled for a maintenance window when the database may be shut down.
It also requires planning for redundant hardware and/or software components so that when one fails, others will keep the total system available to its users. The database admin must, therefore, have a high mastery of techniques such as online backups, clustering, replication and standby databases to ensure higher availability.
Negotiation and stakeholder management
It is common for database administrators to find themselves in corporate situations where they have to negotiate for resources, timelines or access permissions from other departments. Due to the cross-functional nature of their roles, DBAs must also be highly adept at managing relationships with various stakeholders in the organization. The key is to be able to communicate effectively and align database strategies with business goals.
Problem solving and critical thinking
In most companies, the database admin is the go-to expert during critical incidents such as server failures or security breaches. As such, the skill to rapidly diagnose issues and come up with effective solutions is indispensable. For this, DBAs must have a keen sense of critical thinking and a methodical approach to problem-solving.
What does a database administrator do?
Installation, configuration, upgrade and migration
Although system administrators are generally responsible for the hardware and operating system on a given server, installation of the database software is typically up to the database admin. This task requires knowledge of the hardware prerequisites for an efficient database server and communicating those requirements to the system administrator.
The DBA then installs the database software and selects from various options in the product to configure it for the purpose it is being deployed. As new releases and patches are developed, it’s the DBA’s job to decide which are appropriate and to install them. And if the server is a replacement for an existing one, it’s the DBA’s job to migrate the data from the old server to the new one.
Backup and recovery
Database administrators are responsible for developing, implementing and periodically testing a backup and recovery plan for the databases they manage. Even in large shops where a separate system administrator performs server backups, the DBA has final responsibility for making sure the backups are being done as scheduled and that they include all of the files needed to make database recovery possible after a failure.
When failures do occur, the DBA needs to know how to use the backups to return the database to operational status as quickly as possible, without losing any transactions that were committed.
There are several ways the database can fail, and the DBA must have a strategy to recover from each. From a business standpoint, there is a cost to doing backups, and the DBA makes management aware of the cost/risk tradeoffs of various backup methods.
Because databases centralize the storage of data, they are attractive targets for hackers and even curious employees. The database admin must understand the particular security model that the database product uses and how to use it effectively to control access to the data.
The three basic security tasks are:
- Authentication: Setting up user accounts to control logins to the database.
- Authorization: Setting permissions on various parts of the database.
- Auditing: Tracking who did what with the database.
The auditing task is particularly important currently, as regulatory laws like Sarbanes-Oxley and HIPAA have reporting requirements that must be met.
Storage and capacity planning
The primary purpose of a database is to store and retrieve data. As a result, planning how much disk storage will be required and monitoring available disk space are key database admin responsibilities. Watching growth trends is important, so the DBA can advise management on long-term capacity plans.
Performance monitoring and tuning
The database administrator is responsible for monitoring the database server on a regular basis to identify and remedy bottlenecks. Tuning a database server is done on multiple levels:
- The capacity of the server hardware and the way the operating system is configured can become limiting factors, as can the database software configuration.
- The way the database is physically laid out on the disk drives and the types of indexing chosen have an effect.
- The way queries against the database are coded can dramatically change how fast results are returned.
A database admin needs to understand which monitoring tools are available at each of these levels and how to use them to tune the system.
In addition, DBAs must be familiar with proactive tuning, which involves designing performance into an application from the start, rather than waiting for problems to occur and fixing them. It requires working closely with developers of applications that run against the database to make sure best practices are followed.
When things do go wrong with the database server, the database administrator needs to know how to quickly ascertain the problem and correct it without losing data or making the situation worse. The DBA needs to have a deep understanding of database architecture and be able to quickly diagnose issues running the gamut from system bottlenecks to data corruption. This responsibility is crucial because of the cascading impact data issues can have on an organization.
What tools do database administrators work with?
The DBA toolkit is as diverse as the range of responsibilities they shoulder. While the choice of tools varies based on the specific environment, there are six broad categories of tools that database administrators work with:
- Database management systems: Systems such as Oracle, MySQL or SQL Server provide the platform for database creation, manipulation and maintenance.
- Query and scripting tools: Programming languages like Python and query tools like SQL Developer help with tasks such as querying, extraction and automating repetitive tasks.
- Performance monitoring tools: Tools, such as AppDynamics and New Relic, provide the DBA with real-time insights into the health of their database.
- Backup and recovery solutions: Data integrity and high availability require robust backup and recovery solutions, such as Veeam and Acronis, to provide DBAs with backup options ranging from incremental to full disaster recovery.
- Data security tools: Security tools, like Trellix and Varonis, help DBAs prevent unauthorized access and breaches.
- Extract, transform, load tools: ETL tools, like Talend and Microsoft SQL Server Integration Services, are essential in data warehousing environments.
A role in database administration
For IT leaders, understanding the multifaceted role of database administrators is critical for leveraging data as a strategic asset. Hiring the right DBA plays a key part in business intelligence and decision-making.
For those considering becoming a DBA, it is a career with challenges and rewards in equal measure. You will find yourself at the intersection of technology and business.