cover.eps

Oracle 12c For Dummies®

Visit www.dummies.com/cheatsheet/oracle12 to view this book's cheat sheet.

Table of Contents

Introduction

About This Book

Who Are You?

Icons in This Book

Beyond the Book

Where to Go from Here

Part I: Getting Started with Oracle 12c

Chapter 1: Discovering Databases and Oracle 12c

Discovering Databases

Defining a database

Examining how databases work

Finding the right database for the job

Choosing Oracle

Oracle as a database

What is the “c” in Oracle 12c?

Keeping a Database Safe and Sound

DBA responsibilities

Common tasks

Chapter 2: Understanding Oracle Database Architecture

Defining Databases and Instances

Deconstructing the Oracle Architecture

Walking Down Oracle Memory Structures

Trotting around the System Global Area

Shared pool

Database buffer cache

Redo log buffer

Large pool

Java pool

Streams pool

Program Global Area

Managing Memory

Managing memory automatically

Following the Oracle Processes

Background processes

User and server processes

Getting Physical with Files

Data files: Where the data meets the disk

Control files

Redo log files

Moving to the archives

Server and initialization parameter files

Applying Some Logical Structures

Tablespaces

Segments

Extents

Oracle blocks

Pluggable Databases

Chapter 3: Preparing to Implement Oracle

Understanding How an Oracle Database Fits into a System’s Architecture

Client-server applications

Multi-tier applications

Component configurations

Verifying System Requirements

User and directory requirements

Hardware requirements

Software requirements

Storage requirements

Other requirements

Part II: Implementing an Oracle Database

Chapter 4: Creating Your Database

Feeling at Home in Your Environment

Finding the Oracle software owner

Oracle versions

Getting to home base

ORACLE_BASE

ORACLE_HOME

ORACLE_SID

PATH

Setting your environment with oraenv

Configuring an Instance

Using PFILE and SPFILES

Setting parameters in the pfile and spfile

Creating Your Oracle Database

Using the Database Configuration Assistant (DBCA) to Create Databases

Taking database control

Taking the DBCA steps

Sharing (a) memory

Doing a Post-Creation Check-Up

Chapter 5: Connecting to the Database

Starting and Stopping the Database

Environmental requirements

Starting the database

Stopping the database

Connecting to the Database Instance

Local versus remote connections

Communication flow

Setting up tnsnames.ora

Configuring the database listener with listener.ora

Starting and stopping the database listener

Testing the connection

Oracle Net Configuration Assistant

Sidestepping Connection Gotchas

Chapter 6: Understanding the Language of Databases: SQL

Learning the Basics of SQL

SQL calling environments

SQL statement clauses

Case sensitivity in the database

Viewing your objects and data with the DESCRIBE and SELECT statements

Add to your data with the INSERT statement

Changing data with the UPDATE statement

Removing data with the DELETE statement

Using the Data Dictionary

Programming with PL/SQL

Types of PL/SQL programs

PL/SQL block structure

Calling PL/SQL programs

Chapter 7: Loading Data into Your Database

Making Tablespaces

Understanding Users and Schemas

Creating Database Objects

Object types

Object creation methods

Part III: Caring for and Feeding an Oracle Database

Chapter 8: Keeping the Database Running

Doing Your Database Chores

Making way, checking space

Monitoring space in your segments

Checking users

Checking backups

Checking batch jobs

Reviewing audit logs

Maintaining logs

Automating Chores with the Oracle Scheduler

Scheduler objects

Creating your first Scheduler job

Using Oracle Data Pump

Data Pump Export

Data Pump Import

Creating Oracle Directories

Using Data Pump with a Parameter File

Chapter 9: Tuning an Oracle Database for Performance

Tuning Costs

Tuning Basics

Asking questions

Pinpointing the problem

Tuning Tools

Oracle documentation

Oracle Support

Oracle user groups

Training classes

Licensed tools

Tuning the Database before Something Goes Wrong

Pre-installation planning and preparation

Selecting software

The hard part

Tuning after a Problem Arises

Tell me, what is your problem?

Tuning SQL

Generating an Explain Plan

Displaying and reading the SQL statement output

Tuning the Database

Installing STATSPACK

Taking snapshots with STATSPACK

Interpreting STATSPACK output

Scheduling snapshots

Chapter 10: Securing and Auditing Your Database

Staying Authentic with Authentication

User authentication

Password authentication

Operating system authentication

Granting Privileges

Granting and revoking system privileges

Object privileges

Creating Roles

Oracle-supplied roles

The SYSDBA role

Auditing: Oracle’s Big Brother

Getting ready to audit

Enabling and disabling audits with unified audit policies

Auditing system privileges

Auditing objects

Verifying an audit

Viewing audit information

Turning off audits

Chapter 11: Facilitating Backup and Recovery

Understanding Threats to Your Database

Instance failure

Losing files

Dropped objects

Media failure

Corruption

User error

Finding Files with Recovery Manager

Starting RMAN

Configuring RMAN

RMAN catalog

Backup File Types with RMAN

Backing up with backup sets

Making copies

Viewing Backup Information

Putting It in the Archives

Turning archiving on and off

Archive logs

Enabling archiving

Enabling the Fast Recovery Area

Maintaining the Archives

Recovering Your Oracle Database

Verifying the problem

Complete recovery

Incomplete recovery

Recovering your database with copies

Chapter 12: Troubleshooting an Oracle Database

Troubleshooting with System Methodology

Identifying the real problem

Performing basic system checks

Performing basic database checks

Analyzing error messages

Developing and applying a solution

Troubleshooting Using Oracle Database Logs

Database log infrastructure

Database alert log

Trace and dump files

Listener log

Benefiting from Other Diagnostic Utilities

Oracle Enterprise Manager and Database Express 12c

Remote Diagnostic Agent

Database diagnostic scripts

Chapter 13: Managing Your Database with Enterprise Manager

Getting to Know the Enterprise Manager Family

EM Database Express

EM Cloud Control

Configuring EM Database Express with the DBCA

Navigating EM Database Express

Dashboard

Configuration page

Storage page

Security page

Performance page

Creating and Managing EM Database Express Users

Part IV: Advanced Oracle Technologies

Chapter 14: Advanced Features

Flashing Back

Flashing your query back

Flashing your table back

Flashing your database back

Compressing Data for Purging, Retention, and Archiving

Basic compression

Advanced compression

Flashback Data Archive

Oracle Database Replay

Using Database Replay

Replaying the workload

Multitenant Architecture and Pluggable Databases

Creating a multitenant database environment

Navigating a multitenant architecture

Starting and stopping pluggable databases

Creating new PDBs

Unplugging and plugging in your PDBs

Chapter 15: Using High-Availability Options

Gathering Real Application Clusters

Exploring RAC Architecture

Hardware considerations for RAC

Software considerations for RAC

Preparing for a RAC Install

Tools for managing a RAC installation

Oracle RAC application for high availability

Understanding Oracle Data Guard

Data Guard architecture

Physical standby database

Logical standby database

Performing switchover and failover operations

Part V: The Part of Tens

Chapter 16: Ten Oracle Installation Do’s

Know the Documentation

Observe the Optimal Flexible Architecture

Configure Your Profile

Write Your Own Documentation

Set umask

Become Oracle

Stage It

Patch It

Mind the User and Group IDs

Back It Up

Chapter 17: Ten Database Design Do’s

Constrain Your Data

Spread Out Your IO

Know Basic Data Modeling Skills

Use Naming Conventions

Watch Your Roles and Privileges

Axe Ad Hoc Queries

Enforce Password Security

Avoid Having Too Many Cooks in the Kitchen

Package Code

Test Recovery Strategies

Appendix A: Installing Oracle 12c on Linux

Checking your operating system version

Checking your kernel version

Checking your OS packages

Creating Linux OS groups and users

Creating the ORACLE_BASE directory

Configuring the Oracle user environment

Installing the Oracle 12c database software

About the Authors

Cheat Sheet

Connect with Dummies

Introduction

Welcome to the exciting world of Oracle 12c database administration! Few things are as exciting as starting a new journey, and you certainly have a thrilling ride ahead of you. Luckily, the authors of this book, your guides in this adventure, can help smooth out any bumps in the road and point out the things you want to see. With decades of combined Oracle experience managing hundreds of databases for many clients, we hope to make understanding the Oracle database a fun, enlightening experience.

Oracle is a large company with a diverse portfolio of software and hardware. It seems like every other week Oracle releases some new product or acquires another company. Don’t let the overwhelming nature of the big picture discourage you. This book imparts the fundamental knowledge of database administration. An Oracle career is a constant learning process. Establishing a solid understanding of the building blocks behind the database engine will vault you into a successful Oracle career.

The foundation of almost all of Oracle’s products is the database, and Oracle databases are the best in the world. Understanding how Oracle databases work and how to manage them successfully is the first step to opening an awful lot of doors. Starting at this level is key. After reading this book, you will be well on your way to an interesting career filled with challenges and plenty of opportunity.

Every year we see companies grow and accumulate data at a staggering rate, and that rate is accelerating. Relational database theory first came out in the early 1970s, and database design and technology continue to evolve and become more powerful every year. Oracle is at the forefront of this evolution, and the knowledge of Oracle 12c that you gain from this book puts you in the driver’s seat for your database career. Hop into your high-performance Oracle ride for an exciting journey!

About This Book

Oracle 12c For Dummies focuses on the tenets of Oracle database administration in the Oracle 12c environment. Not only do we cover many of the features released with the 12c version of the database, but we also explain the fundamental building blocks database administration. Many of these concepts and techniques apply to past versions of Oracle and almost certainly to future releases. Our goal is to make you a smarter and more functional DBA by explaining Oracle technology from the perspective of folks who manage Oracle software for a living.

tip.eps Sometimes we refer to directories and file locations on both Linux/UNIX and Windows. Essentially the two can be interchanged with a couple of things in mind. For example, here is an ORACLE_BASE value that you might come across on Linux/UNIX:

$ORACLE_BASE: /u01/app/oracle

In Windows, /u01 is much like a drive letter. They call it a mount point in Linux/UNIX.

Also, variables in Linux/UNIX are frequently prefixed with a dollar sign. Furthermore, the slashes are in opposite directions for each operating system. On Linux/UNIX, you use a forward slash, /. In Windows, you use a back slash, \. Lastly, Windows encapsulates the variable in percent signs. The same previous setting might look like this in Windows:

%ORACLE_BASE%: C:\app\oracle

We give examples of both environments throughout this book.

Who Are You?

People who find themselves needing or wanting a skill set for Oracle databases come from all backgrounds. You might be an application developer, a system administrator, or even a complete newbie. Many of the folks that we come across in this industry became a database administrator (DBA) by accident. One day, your company finds itself without a DBA, and the next thing you know, that’s you! One trick is to be ready. Above all else, learn on your own and think rather than just react.

Icons in This Book

You see these icons throughout this book. They’re a heads-up for different situations. These are items we wished someone told us when we were learning Oracle.

warning_bomb.eps Warnings, if not heeded, will cause you to lose data or maybe even your job.

remember.eps Remembering these bits of information can help you in the long run. And even the short run. Even on a brief walk.

tip.eps Tips can save you time, energy, resources, or your weekend. We realize all these items are in short supply.

technicalstuff.eps Technical Stuff icons indicate things we think are interesting and want to share with you, but you can skip them if you’d rather get straight to the nitty-gritty.

Beyond the Book

We’ve provided additional information about Oracle online to help you on your way:

check.png Cheat Sheet: Check out www.dummies.com/cheatsheet/oracle12c to grab some handy reminders for syntax and commands you'll use on a regular basis. We also include some tips for items to monitor to ensure you don't get caught by surprise.

check.png Online articles: On several of the pages that open each of this book's parts, you'll find links to what the folks at For Dummies call Web Extras, which expand on some concept we've discussed in that particular section. You'll find them at www.dummies.com/extras/oracle12c. There we've provided information to help you upgrade databases with the Database Upgrade Assistant (DBUA), gather database statistics to improve performance, and use Automatic Storage Management (ASM).

Where to Go from Here

Dive in and get started! Keep an open mind and try not to get overwhelmed. Like any skilled profession, it isn’t always easy, but you can do it. We think you’ll find it rewarding. This book is written so you can avoid the “too-much-information” reaction. Look at each section as a piece of a big puzzle, and you will soon see how everything starts to take shape. And remember to have fun!

Part I

Getting Started with Oracle 12c

9781118745311-pp0101.eps

pt_webextra_bw.TIF For Dummies can help you get started with lots of subjects. Visit www.dummies.com for more great content online.

In this part . . .

check.png New to databases? New to Oracle? Find out how databases and Oracle fit into the modern IT infrastructure in Chapter 1.

check.png A solid foundation is the best way to start any project. Chapter 2 helps you understand the architecture behind the Oracle software, which goes a long way toward helping you be a successful database administrator.

check.png Chapter 3 shows you how an Oracle database fits in a typical IT application environment. You also find out about the requirements you need to meet before installing Oracle database.

Chapter 1

Discovering Databases and Oracle 12c

In This Chapter

arrow Defining databases

arrow Getting to know Oracle databases

arrow Identifying when using Oracle 12c is appropriate

arrow Understanding database administration

Welcome to the exciting world of databases, specifically Oracle 12c. Oracle is a recognized hardware and software giant on par with Microsoft in terms of size and influence. Oracle Corporation made its reputation and initial wealth with database technology and is still a recognized leader in databases. Many information technology (IT) professionals would agree Oracle databases provide the most advanced and capable means of storing, accessing, and managing data in the world today. As you read this book, you find out why many professionals hold that belief.

In this chapter, we explain what databases are, how they work, and why they’re a core component of any computer system. Next, we introduce Oracle databases and guide you on when to use Oracle 12c. Finally, we examine database administration and what a database administrator’s (DBA) role entails.

Discovering Databases

Since the earliest days of information technology (that’s data processing for you old-timers), data has been at the heart of everything computers do. Users input data; and programs process, analyze, and perform calculations on the data. Then data output occurs. Notice a common theme? Everything relates to data! As technology increasingly becomes a part of daily life, you can expect almost every aspect of your life to have a data element associated with it.

Data comes from different sources in various formats. Every year, new types of data are created as technology evolves. Consider this partial list of data sources:

check.png Order information from your favorite online shopping application

check.png Trouble ticket information entered into a computer by a person in a call center

check.png Financial data including calculations for interest, taxes, and investments generated by banks and investment companies

check.png Multidimensional scans captured by complex medical imaging equipment

check.png Inventory data captured by tracking products by their RFID tags and point of sale information

check.png Images, videos, and audio files uploaded to social media and video sharing websites

The amount of data in the world is growing at an explosive rate. Consider the number of online sales transactions every day in addition to the Twitter tweets and Facebook posts from smartphones. Additionally, almost every retail sale is tied to an automated sales tracking and inventory control system. Almost anything you do that involves interaction, communication, or commerce generates data.

The size and number of data elements created are also increasing as technology evolves. Pictures, sound files, and videos take far more space on computer disk storage than simple text data (letters and numbers). Scientific and medical devices, such as satellite images and MRI scans, are common examples of how large data is generated rapidly and are part of peoples’ lives.

Defining a database

All this data needs to reside somewhere; specifically, within a database. Databases are complex software programs that catalog and provide access to data. Although the data is usually stored on a disk storage system, the database software manages how that data is stored and managed.

Businesses use databases to store their data because the size and complexity of their data often exceed what can be stored on a spreadsheet. Most business and scientific activities, and many social activities involving technology will require the creation, access, updating, or deleting of data at some level. It is database software that allows these activities occur in a fast, efficient manner.

Databases provide these primary functions:

check.png Storage: Data must be kept within a computer system, usually disk storage, so that the data is available when needed. Disk storage technologies can vary, but they must be fast and large and are often expensive and complex.

check.png Organization: Data must be stored in a logical manner on disk so it can be found quickly and efficiently. Compare an organized desk and file cabinet with a child’s messy bedroom; where would you prefer to work?

check.png Access: Finding the requested data in a fast and efficient manner and returning that data to the requestor is a key function of databases.

check.png Security: A database determines who can access the data and what they can do with that data. Security must be established and enforced.

check.png Adding, updating, and deleting: After data is added to the database, it can be modified and deleted. The database software manages the complex rules for how data is manipulated.

check.png Safekeeping: Databases keep data safe and available when failures occur such as a disk drive crashing. Backup and recovery are the processes used by databases to ensure data is not permanently lost if there is a failure.

Here’s the general process:

1. You open the database and enter your data.

2. The database determines how best to store and catalog that data in a secure manner on the computer system’s disk storage.

3. When you (or a computer application) want to access, update, or delete that data, the database checks your security permissions and then implements your request in the fastest manner based on the rules that have been defined.

technicalstuff.eps Databases can look more like full operating systems (OSs) than simple applications you start and stop. Advanced databases (such as Oracle) have users, detailed security privileges, network configuration settings, performance tuning for memory, CPU, and disk options, and robust backup and disaster recovery (DR) options.

Examining how databases work

Databases have evolved over the years but have stabilized into the relational model. A relational database management system (RDBMS) stores data in logical structures called tables. A table is a logical container of similar data. A table definition is the set of rules or characteristics for each row of data stored in table. When data is loaded into a database, it is loaded as rows within one or more tables based on the characteristics of the data.

Each row of unique data exists only once in a table. For example, there will only be one row of data for each individual customer in a table. Each row is identified by its primary key, which is a unique identifier for that specific row. This uniqueness is a fundamental component of the relational aspect of databases. In Figure 1-1, each customer exists as a single row in the CUSTOMER table as identified by its unique primary key (CUST_ID) and is defined by columns specific to that table.

Tables are joined together by connecting the primary key of one table to a related table where it is defined as a foreign key. You implement relationships between tables by joining a row of one table to one or more rows in another table. (Remember: This is a relational database).

Figure 1-2 shows how a customer stored in a CUSTOMER table is joined to an ORDER table via the foreign key relationship.

9781118745311-fg0101.eps

Figure 1-1: Defining rows in the CUSTOMER table.

9781118745311-fg0102.eps

Figure 1-2: Establishing relationships between CUSTOMER and ORDER tables.

The CUSTOMER table contains a single row for each customer, and each customer has a unique primary key identifier. The ORDER table stores all the orders for the company and each order is identified by its primary key ORDER_ID. A customer may have zero (new customer), one, or many (repeat customer) orders, and each order must have a customer. (You can’t have an order without a customer.) Each row in the ORDER table is tied to the CUSTOMER table by the CUST_ID column which acts as the foreign key joining the ORDER and CUSTOMER table.

Databases have hundreds or even thousands of tables, keys, and relationships, and tables can have millions of rows of data consuming gigabytes or even terabytes of disk storage. To speed access when searching for a specific row of data, an index is created on one or more columns in a table. Indexes work similarly to the indexes in a book. On a daily basis, it is common for thousands of rows of data to be inserted, updated, or deleted within the database. The RDBMS software, managed by the database administrator (DBA), supports the overall management, functioning, and performance of the database. We talk about DBAs in the upcoming “Keeping a Database Safe and Sound” section.

Structured Query Language (SQL) is the language used to query (SELECT), create (INSERT), modify (UPDATE), and remove (DELETE) data in a database. SQL is the core language that DBAs and database application developers work in; you need a working knowledge of SQL to effectively manage a database. SQL is further defined as data manipulation language (DML) for querying, creating, modifying, and removing data and data definition language (DDL) for changing database and table structure. Oracle offers a programming extension of SQL called PL/SQL used to implement application logic within an Oracle database.

technicalstuff.eps Oracle gained a big advantage early in the database market by successfully implementing row locking inside tables. That is, when one or more people update the same row in a database at the same time, the RDBMS software ensures that everyone’s changes are made without conflicts and the data is visible with read consistency throughout the life of the transaction. Not all database vendors handled this issue cleanly.

Finding the right database for the job

The traditional saying, “If all you have is a hammer, everything looks like a nail,” is appropriate to the selection of IT toolsets. Whether people are storing the addresses, phone numbers, and e-mails for a family reunion or they’re maintaining an online shopping application, they need a data store. The size, complexity, and scope of that data store determines whether a database is even necessary and, if so, what characteristics (and vendor) of the database are appropriate.

The data requirements for people and businesses vary greatly in size, complexity, and importance. Different technologies exist based on these factors to meet users’ data needs.

check.png Small, individual, or limited-use data stores, such as address information, are best served by a Microsoft Excel spreadsheet or a Microsoft Access database because both are inexpensive and easy to use.

check.png Small or medium size data stores, such as those found at small or medium sized businesses, could make good use of Microsoft SQL Server, Oracle MySQL, or Oracle Enterprise or Standard Edition. These implementations are commonly small, less complex databases where keeping costs low is an important factor.

check.png Medium to large data stores, such as those found at medium and large businesses, are commonly the realm of Microsoft SQL Server, IBM DB2, and Oracle Enterprise Edition. This medium to large database market is what many people think of as a typical database environment.

check.png Large and extremely large data stores, such as those found at large and multinational businesses, are commonly served by Oracle Enterprise Edition and IBM DB2. The large and complex database environments are special creatures and require very specialized software and hardware.

Review your current computer system environment and projected future needs to make the best decision for your mission. Vendors might try to upsell you on their product, so do your homework before making a decision. However, understand that as your data requirements change, your database environment might require change. We often see systems that started as small, departmental desktop applications grow until the old software is no longer functional. The result is an upgrade to a larger-scaled database system, and that system is often Oracle.

Choosing Oracle

Many seasoned IT people agree that Oracle makes the most advanced and reliable databases in the world. Your authors happen to agree with that opinion, too. Oracle offers several databases targeted for different uses and audiences at varying price points, including Oracle Enterprise Edition, Oracle Standard Edition, Oracle Berkley DB, Oracle NoSQL, and MySQL. (This book focuses on Oracle Enterprise Edition, Release 12c, although what you learn will be relevant to previous versions of Oracle.) Additionally, Oracle offers a programming extension of SQL called PL/SQL, which is used to implement application logic within an Oracle database.

Oracle as a database

Oracle databases are extremely advanced and sophisticated software components that are state of the art for RDBMS. Many features and options are available, and we guide you through the features you need for most implementations. The highly advanced features, such as Real Application Clusters (RAC), remote data replication, and engineered solutions such as Exadata, are for customers who require the cutting edge of technology for specialized implementations. Visit www.oracle.com for more details on these advanced technologies.

The sophistication and technological advancement that make Oracle databases so great can also make them very complex. Skilled DBAs devote their entire careers to learning the finer points of Oracle databases — it’s a never-ending (but often rewarding) process.

Fortunately, Oracle understands that not everyone wants to commit themselves to learning the complexities of Oracle databases. Therefore, Oracle provides a robust, web-based administration tool, Enterprise Manager, where you manage and monitor your databases and the environment supporting them. Leveraging Enterprise Manager to make your job easier is a theme you can find throughout this book.

What is the “c” in Oracle 12c?

Following on the success of the previous Oracle database, release 11g (g is for grid), the most recent Oracle database release is 12c; the c stands for cloud computing, but what is that?



Cloud computing is an architecture where services (such as databases, applications, development environments, or even server infrastructure) are available over the network to the consumer (user). The cloud service provider supplies the product and bills the consumer based on usage. For example, say you wanted to use a type of computer server but you didn’t want the overhead of buying and maintaining physical computer hardware and software. A cloud provider could sell you access to that computer server hosted in their cloud. You would pay the cloud service provider a fee based on your usage and the provider would give you access to the servers in their cloud. You get the benefits of having access to the cloud based server without the hassle and costs of buying and maintaining your own servers.

Cloud architecture allows consumers to choose only the services they need and pay for only what they use. Benefits to the consumer include lower cost, not having to provide their own IT service, and generally faster delivery of services than if they built the computing environment themselves.

Oracle 12c is engineered to run on the cloud and be accessible as a service. Through virtualization and multi-tenant architecture, each database application can appear to have its own private database but, in reality, the system is a shared database environment. The use of shared resources and virtualization is a method used by companies and database providers to reduce costs. However, there is no requirement that Oracle 12c must run in the cloud; you may run Oracle 12c just like you run other versions of Oracle without the cloud.

Keeping a Database Safe and Sound

The person who installs and configures a database, manages user access and accounts, ensures space for database objects, and (we hope) makes backups, among many other responsibilities, is the database administrator, or DBA.

Medium to large IT shops have one or more DBAs, sometimes even a large team of DBAs. Smaller IT shops may have a person working as a DBA part-time but doing system administration or application development as well. Regardless of whether you’re a full-time or part-time DBA, you need to understand the responsibilities and common tasks involved with the care and feeding of a database.

tip.eps Try not to confuse the DBA with the application developer. The process of defining tables, columns, relationships, and rules is application design, data modeling, and ultimately application development. The DBA is peripherally involved with these tasks, but they’re typically the application developers’ responsibilities.

DBA responsibilities

A DBA has multiple responsibilities around which individual tasks are created to support. Work comes in the form of technical, non-technical, database-centric, and business-centric tasks, but they generally relate to a set of core areas. As a DBA, you have to

check.png Protect the data. You are the gatekeeper and protector of the data you are entrusted to defend. Data must be protected from theft, damage, and destruction. Protecting the data encompasses both security and backup and recovery. This responsibility commonly comes in the form of establishing, testing, and monitoring backups and implementing security policies and technologies.

check.png Provide access to the data. You must ensure that the data is available to those users and programs which are authorized to access it. Speedy, quick access is necessary because if a query takes too long to execute and the user gives up, it might as well never finish. Data must be accessible as well; if the database is shutdown or otherwise unavailable, it does the users no good. Providing access to the data involves performance tuning and High Availability (HA).

check.png Maintain the software. You are responsible for ensuring the general maintenance and housekeeping of the database is kept up to date. Databases must be monitored for errors, ensuring there is enough space to grow as new data is loaded, and monitor processing jobs for success. Furthermore, there is always a new version of software to upgrade to or apply a patch (often after hours). These are generally mundane items and much of it can be automated via scripts or Enterprise Manager, but they still are your responsibility.

check.png Support the business. Databases do not exist in isolation. They are part of an overall business objective, and that business objective is usually evolving. New application code is being generated requiring developer assistance, audits of your processes are being conducted, and users always have miscellaneous issues. The most common example is applying a new application release to the database or implementing new technology to enable a new business capability. These efforts periodically correspond to database maintenance, but they are in support of moving the business objectives forward, and the wise DBA supports these efforts.

Common tasks

Life as a DBA varies based on the nature of the business and the IT environment. Here’s how the core responsibilities can manifest themselves within a common task:

check.png Protect the data by

• Reviewing output logs and messages to ensure the previous night’s backups ran successfully.

• Responding to questions about user access and database auditing procedures. (This task also falls under support the business.)

• Researching and applying Critical Patch Update (CPU) patches to ensure security and vulnerability fixes are made. (This task also falls under maintain the software.)

check.png Provide access to the data by checking Enterprise Manager and your cell phone texts for alerts showing down databases or listeners, which would impact user access to the databases.

check.png Maintain the software by using Enterprise Manager and log files to search for database alerts, errors, and space usage threshold concerns.

check.png Support the business by

• Reviewing output logs and messages to ensure the previous night’s application batch jobs and processes completed.

• Checking e-mail and responding to any application or user issues.

• Applying application updates to development, test, and production databases to provide additional functionality and bug fixes for users.

Database administration is a respected profession in the IT field. Many people make a comfortable living as an Oracle DBA. Some would say Oracle wouldn’t be where it is today if not for the legions of dedicated Oracle professionals worldwide.