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:
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.
|