DB09 - DB2 Application Data Recovery
Duration2 Days
AvailabilityCheck course price and availability

Target Audience

This course is aimed at Developers and Database Administrators who need to be able to back-up and recover DB2 data and understand Application COMMIT, ROLLBACK and restart design issues.

Pre-requisites

Delegates attending this course must already have a working DB2 knowledge, either in the role of a DBA or as a DB2 Applications Programmer. This experience can be gained by attending courses DB01 or DB05.

Course Objectives

The aim of this course is to provide the programmer, with the necessary skills required to backup and recover DB2 data. The course also covers design issues relating to Application Program restart and recovery. On completion of this course the student will be able to:

  •     describe the DB2 objects that may be copied and recovered
  •     understand and run the COPY Utility
  •     understand and run the RECOVER Utility
  •     understand and run the QUIESCE Utility
  •     understand and run the COPYTOCOPY Utility
  •     understand and run the MERGECOPY Utility
  •     describe the recovery implications where RI is used
  •     understand and run the CHECK DATA Utility
  •     design Application Programs with restart capability
  •     use Utility Lists and Dynamic Allocation

Course Environment

Development will be performed using:

  •     IBM Mainframe

Course Details

DB2 OVERVIEW
The Relational Model
Data Representation
The DB2 Environment
DB2 Architecture
DB2 Datasets
DB2 Catalog
DB2 Directory
Overview of DB2 Locking
DB2 Logging and Recovery Overview
Image Copy/Logging/Recovery Cycle
RECOVERY OBJECTS
Tablespaces
Pages
Tablespace Organisation
Page and Row Organisation
The Simple Tablespace
The Segmented Tablespace
The Partitioned Tablespace
Indexes
Defining an Index
A Partitioning Index
REFERENTIAL INTEGRITY
What Is Referential Integrity?
Parent and Dependent Tables
The Primary Key
The Foreign Key
Referential Constraint Rules
Constraint Names
More Complex Referential Structures
Check Pending Status
Resetting Check Pending Status
Referential Integrity Access
Design Considerations
COMMIT, ROLLBACK AND RESTART
Unit Of Work In TSO
Commit And Rollback
Declaring Cursors With Hold
CICS Issues
IMS Issues
The Need For Application Restart
Recommendations For Application Design
LOCKING
Implications of Concurrent Processing
IMS Resource Lock Manager (IRLM)
DB2 Locking Methods
The Lock Table Statement
Lock Modes
When Locks are Acquired
When Locks are Released
Isolation Levels
Controlling The Isolation Level At SQL Level
Keep Update Locks
Unit of Work in TSO
Commit and Rollback
Declaring Cursors With Hold
CICS Issues
IMS Issues
Savepoints
Savepoint Definition
Savepoints - Considerations and Restrictions
Transaction Deadlocks
Design Considerations
UTILITIES
Introduction
CHECK Utility
CHECK Utility Phases and Datasets
COPY Utility
COPY - The Changelimit Parameter
Changelimit Defaults
Changelimit Examples
The Reportonly Parameter
Using Conditional Copy with GDGs
COPY Utility Phases and Datasets
COPY Utility - Index Copies
COPY Utility - Index Restrictions
COPY Utility - Support for Object Lists
COPY Utility - Parallel Parameter
Copytocopy Utility
Copytocopy Parameters
Copytocopy Examples
Copytocopy Considerations
MERGECOPY Utility
MERGECOPY Utility Phases and Datasets
MODIFY Utility
MODIFY Utility Phases and Datasets
QUIESCE Utility
QUIESCE Utility Phases and Datasets
RECOVER Utility
RECOVER Utility Phases and Datasets
Recovery of a Concurrent Copy
Recovery to a Load / REORG Inline Image Copy
Index Recovery Options
REBUILD Index
REBUILD Index Utility Phases and Datasets
Report Utility
Report Utility Phases and Datasets
UTILITY LISTS & DYNAMIC ALLOCATION
Dynamic Utility Jobs
Using Listdef / List for Dynamic List Processing
Listdef Syntax
Listdef Parameters
Listdef Specification
Listdef Examples
Recovery Related Lists
Listdef Expansion Steps
Listdef Considerations
How Many Times Does The Utility Execute?
Listdef Restartability
Using Template to Allocate Datasets
Template Syntax
Template Parameters
Substitution Variables for Dataset Names
Template Specification
Template Examples
Space Allocation with Templates
Disposition Allocation with Templates
Considerations for Dataset Allocation
Template and Listdef Combined
Storing Listdefs and Templates in Libraries
Additional Options
DB2I Support for Listdef and Template

Course Format

The course contains many practical exercises to ensure familiarity with the product. Delegates run many Utilities against Tablespaces and Indexes in order to backup and recover course data. On completion of this course delegates will be ready to perform backup and recovery tasks and also design Application Programs with restart capability. The comprehensive Student Guide supplied is fully indexed serving as a useful reference tool long after the course has finished. Delegates will also be able to access a free help-line with technical questions relating to topics covered on the course.