Database administrator

A database administrator (DBA) is a person responsible for the design, implementation, maintainance and repair of an organisation’s database. They are also known by the titles Database Co-ordinator or Database Programmer, and is closely related to the Database Analyst, Database Modeller, Programmer Analyst, and Systems Manager. The role includes the development and design of database strategies, monitoring and improving database performance and capacity, and planning for future expansion requirements. They may also plan, co-ordinate and implement security measures to safeguard the database. Employing organisations may require that a database administrator have a certification or degree for database systems (for example, the Microsoft Certified Database Administrator).

Duties
The duties of a database administrator vary depending on job description, corporate and Information Technology (IT) policies and the technical features and capabilities of the DBMS being administered. They include disaster recovery (backups and testing of backups), performance analysis and tuning, data dictionary maintenance, and database design.

Roles of the DBA include:
 * Installation of new software — It is the job of the DBA to install new versions of DBMS software, application software, and other software related to DBMS administration. It is important that the DBA or other IS staff members test new software before it is moved into a production environment.


 * Configuration of hardware and software with the system administrator — In many cases the system software can only be accessed by the system administrator. In this case, the DBA works closely with the system administrator to perform software installations, and to configure hardware and software so that it functions optimally with the DBMS.


 * Security administration — One of the main duties of the DBA is to monitor and administer DBMS security. This involves adding and removing users, administering quotas, auditing, and checking for security problems.


 * Data analysis — The DBA analyzes data stored in the database and makes recommendations relating to performance and efficiency of that data storage. This includes the effective use of indexes, enabling "Parallel Query" execution, or other DBMS specific features.


 * Database design (preliminary) — The DBA can be involved at the preliminary database-design stages, eliminating many problems that might occur. The DBA knows the DBMS and system, can point out potential problems, and can help the development team with special performance considerations.


 * Data modeling and optimization — By modeling the data, it is possible to optimize the system layouts to take the most advantage of the I/O subsystem.


 * Responsible for the administration of existing enterprise databases and the analysis, design, and creation of new databases.
 * Data modeling, database optimization, understanding and implementation of schemas, and the ability to interpret and write complex Structured Query Language (SQL) queries.
 * Proactively monitor systems for optimum performance and capacity constraints.
 * Establish standards and best practices for SQL.
 * Interact with and coach developers in SQL scripting.