Dba Do
Dba Do
Dba Do
Steve Lemme
PLATINUM technology, inc.
steve.lemme@platinum.com
OVERVIEW
The exact job definition of an Oracle Database Administrator's (DBA's) responsibilities are hard to find in print.
It would great if those responsibilities could be easily bundled into a nice package say like the role of an
accountant. However, uniqueness within companies and the distributed enterprise has made that seemingly
impossible. As one career description defines it: DBA - Administers and controls an organizations data
resources. Use Data Dictionary software packages to ensure data integrity and security, recover corrupted data
and eliminate data redundancy, and uses tuning tools to improve database performance. Can it be this easy to
define the role of a DBA?
additional complications when no one remaining on the team understands the code left behind by previous
employees.
System Administrator
The System Administrator is responsible for server maintenance and configuration. They install, upgrade and
tune the operating system. Responsibility for implementing the backup/recovery plan falls into Systems
Administration as does the development and implementation of a Disaster Recovery plan. The System
Administrator works closely with the DBA and the Network Administrator.
Network Administrator
The Network Administrator is responsible for the network architecture, maintenance, performance and
monitoring of the network. The Network Administrator works with WANS, routers, subnets, etc. The Network
Administrator works closely with the DBA, System Administrator and Desktop Administrator.
Desktop Administrator
The Desktop Administrator is responsible for the PC network at the workgroup level, setting standards for LAN
software and hardware, and testing and configuring the network software on the client and file servers. The
Desktop Administrator maintains file servers, terminal servers, and troubleshoots PC and LAN issues. The
Desktop Administrator works closely with the Systems Administrator, DBA and the Network Administrators.
Developer
The development staff is responsible for the design, and creation of the various programs making up the
business application. Developers should be familiar with forms, PL/SQL, 3GL languages, and Client/Server
development skills. Developers work closely with the Business Analysts, the Application Administrators, and
the Application DBA.
Paper #811 Page 2
Application Administrator
The Application Administrator is an individual with an in-depth knowledge of the use of the applications. The
Application Administrator is responsible for the configuration of the application from the users viewpoint,
enrolling end-users, and trouble shooting problems for the help desk. The Application Administrator role works
closely with the Business Analysts, Developers, DBA'S, and Desktop Administrators.
Business Analysts
The business analyst is responsible for implementing the applications and facilitating any transition required
from legacy systems. The Business Analyst has in-depth knowledge in the business functions of the corporation
and other areas of the system. The Business Analyst works with the project managers, Developers, end users and
the Application Administrators.
Database Operator
The database operator provides manual monitoring of the database console, tape mounting, and critical jobs. The
database operator verifies backup or archives ran correctly, restarts the backup or archives if necessary, and
monitors the available freespace in the backup and archive directories. The Database Operator can be supported
by existing staff or filled utilizing a third party tool.
System DBA
The System DBA's role is critical for the initial database architecture, for new projects or application upgrade
analysis, and capacity planning. A System DBA not only has experience with Oracle and advanced features such
as replication, parallel server, and partitioning, but also a background in system and network architecture.
Without a System DBA, many organizations later find themselves against a wall with I/O, performance, storage
management, backup, and capacity problems.
Application DBA
The Application DBA provides database modeling support and development of the logical database. The
Application DBA develops applications architecture, performs SQL tuning and supports the applications. The
Application DBA works closely with Developers, the System DBA and Business Analysts.
DEMANDS OF A DBA
Over half of the surveyed IT workers said they "occasionally" miss getting home for dinner; with
28% saying "frequently."
Almost half, work an average of six hours on Saturdays and Sundays and said they work while on
vacation. 61 % of IT professionals interrupt their vacations to call and check on things at work with
25% of them bringing along a laptop computer, pager or cellular phone to stay in touch with the
Paper #811 Page 3
office.
Identify the root cause of the problem, resolve database problems, and develop methods for
preventing the problems
Review databases with developers, users, and management monthly to detect system or operational
problems
Coordinate on a timely basis to resolve problems discovered or brought to the attention of the DBA
Implement and maintain methods and procedures for monitoring and maintaining database systems
Identify training available in areas of needed improvement and attend training as directed
Four hours monthly in reviewing available World Wide Web sources or trade publications
Review existing applications by study of documentation and discussions with application
developers
Develop a knowledgebase of the database, environment and associated software
Assist with support for all application development
Review reports/logs/dumps and other data to recommend corrective actions to maintain database
performance and efficiency
Coordinate performance and tuning actions with database developers
Review and evaluate status of assigned projects and their impact upon the database systems
Monitor project progress, discusses major problems with other analysts and management
When discovered, resolve delays affecting project completion
Provide weekly status reports to Management
Conduct database walkthroughs with programmers, analysts, and users prior to finalization of major
recommendations
Paper #811 Page 4
Review database recommendations thoroughly with users and management, resolve problems or
differences before final recommendations are made
Study new database design principles, and developing knowledge of database principles by applying
them in projects
Gather information from users and staff when required by project tasks, to be evaluated by
supervisor through review of work, discussion with users, and review with other analysts
Prepare requested material on time. Prepare requested material for fiscal year by stated deadlines
Participates in logical model design or walkthroughs of the logical model design to gain an
understanding of the logical model design. Present physical implementation concerns to the design
teams and management
Create physical databases using sound design principles including documentation of the creation
and access procedures
Create, tests, and monitors backup procedures for the physical or logical databases
Maintain the physical database by monitoring and recommending changes as needed to
management. Create quarterly reports on physical storage needs, memory requirements, and
database upgrades projected for a two year time span
Communication skills
Confidence
Curiosity
Detail oriented
Determination
Base Responsibilities
Architecture
The DBA needs be familiar with sizing, file placement and specification of storage media. Expertise
in RAID, failover, networking, disk shadowing, solid state disks, and their application to the Oracle
database environment are important. The DBA needs to be familiar with installation and updates for
the database server platform. For the UNIX operating system, DBAs should be familiar with the
drawbacks and benefits associated with use of raw devices.
One of the jobs of a DBA is monitoring and tuning of the database. Monitoring and tuning requires
a detailed understanding of the Oracle data dictionary, TKprof, Explain Plan, cost based, rule based
optimizers indexes, use of hints, and SQL statement tuning.
A DBA must understand all of the backup and recovery options. Use of the import and export
utilities, cold and hot backups. Recovery scenarios are subject matter that a DBA must understand.
A DBA should possess a sound understanding of the business requirements and how they map to
database methods and systems
Security
An understanding of Oracle security is critical to the DBA role. Knowledge of roles, profiles,
system, and object level privileges is essential for a DBA. In addition, understanding how the
operating system security interacts with Oracle is equally important.
Determine and implement the backup/recovery plan for each database while in development and as the
application moves through test and onto production
Establish and maintain sound backup and recovery policies and procedures
Knowledge and practice of Oracle backup and recovery scenarios
Perform Oracle cold backups when the database is completely shutdown to ensure consistency of the
data
Perform Oracle hot backups while the database is up and operational
Perform Oracle import/exports as a method of recovering data or individual objects
Provide retention of data to satisfy ethical and legal responsibilities of the company
Restoration of database services for disaster recovery
Recovery of database in the event of a hardware or software failure
Utilize partitioning and transportable tablespaces to reduce downtime
Create a process to determine if a new release is "stable" enough for consideration to be placed on the
development system
Develop data conversion processes for customization, testing and production
Develop database test plans
Develop database administration procedures and responsibilities for production systems
Develop production migration procedures
Establish and provide schema definitions, and tablespace, table, constraint, trigger, package, procedure,
and index naming conventions
Facilitate design sessions for requirements gathering and defining system requirements
Provide database problem reporting, management, and resolution
Provide final approval for all technical architecture components that manage and exchange data
including database management software, server hardware, data distribution management software,
transaction processing monitors, and connecting client applications software
Provide process for setup of new database environments.
Provide risk and impact analysis of maintenance or new releases of code
Provide standards and methods for database software purchasing
Provide standards and naming conventions
Handle multiple projects and deadlines
Provide configuration management of INIT.ORA parameters
Attend training classes and user group conferences to stay on top of latest information and latest Oracle
product offers
Evaluate Oracle features and Oracle related products
The DBA should have a good understanding of the Oracle database, related utilities and tools
The DBA should have a good understanding of the underlying operating system
The DBA should have a good understanding of physical database design
The DBA should have a good understanding of Oracle data integrity
The DBA should have a sound knowledge of the organizations applications and how they map to the
business
The DBA should have a good knowledge of how Oracle acquires and manages resources
The DBA should know enough about the Oracle tools' normal functional behavior to be able to
determine if a problem is the tool or the database
Possess sound knowledge in database and system performance tuning
Provide in-house technical consulting and training
Stay abreast of the most current releases of Oracle software and compatibility issues
Subscribe to database trade journals and WWW sources
Communication
Documentation
Creation and maintain a Database Operations handbook for frequently performed tasks
Define standards for database documentation
Manage center staff and other appropriate personnel
Create documentation of database environment
CONCLUSION
It is so easy for a DBA to become overwhelmed with tasks in which they were unprepared. The DBA must
always be prepared to promptly address issues and requests. With the rate of technology changing every six
months, DBAs need to have clearly defined training. Oracle training is not effective if attended all at once. A
DBA's training needs to occur prior to installation of the hardware, database or applications. T6 stay proficient,
the DBA needs to practice and refine those skills learned in training,
The initial design, planning and layout of the physical architecture of a database are the first and most important
tasks. If an experienced database system architect were unavailable, it would be best to consult with an
experienced technical architect prior to implementation of a production system. When designing a database
server, issues such as: transaction rate, amount of expected data, number of users, characteristics of use, backup
and recovery requirements, disaster recovery requirements, service level agreements and future use and growth
all contribute to the database design. An architect will utilize this information to determine the number and size
of disks, the number and capacity of processors, the required backup technology, which network medium, and
the amount and allocation of memory.
This paper has presented a comprehensive set of tasks that a DBA may perform within a company. Tasks may be
unique to a company's environment that may not be listed in this paper. In addition, there are other tasks listed in
this paper that maybe assigned to another job role. In either case, it is important that the tasks are performed.
When examining a DBA's tasks, there are normally two different perspectives that can be used: from an
"applications" or "systems" perspective. An Application DBA works close with the developers, users of the
application, and places emphasis on application optimization. A Systems DBA is more involved at the hardware
level, looking at 1/0, system, and network database performance issues, backups and recovery, in addition to
technologies such as parallel server and replication.
Bibliography:
Cary V. Milisap, The OFA Standard * Oracle7 for Open Systems, Oracle Corporation, Part Number Al 9308- 1, September
24,1995
Ed Whalen, Teach Yourself Oracle 8 in 21 Days, Sams Publishing, ISBN 0-672-31159-3
Eric Slockburger, How Many DBAs Does it take to Screw in a Lightbulb, Carolina Medicorp, Inc., IOUW/OOW 1996
Frank Naude, DBA Tasks, Responsibilities and Skills Required, Oracle FAQ 1.1 3/3/98
Marlene Theriault, Database Administrator - The Definitive Job Description, Paper #20 IOUW/OOW 1996, The Johns
Hopkins University Applied Physics Laboratory
Michael R. Ault, How to Hire (Or be Hired as) an Oracle DBA, DMR-TreCom / RevealNet, Inc.
Steven Bobrowski and others, ORACLE7 Server Administrator's Guide, Oracle Corporation, Part Number 6694*70*1292,
December, 1992
Steven J, Recsky, The Life and Times of a DBA in an Oracle7 Client/Server Environment, Alberta Energy Company Ltd.,
Paper #20 IOUG-A 1995