Db2 recovery IDUG EMEA 2013

2,922 views
2,746 views

Published on

DB2 Recovery presentation from IDUG EMEA 2013

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,922
On SlideShare
0
From Embeds
0
Number of Embeds
13
Actions
Shares
0
Downloads
151
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Db2 recovery IDUG EMEA 2013

  1. 1. Click to edit Master title style DB2 Recovery - what is inside this magic box. Dale McInnis IBM Canada Ltd. Session Code: D11 Wednesday October 16, 11:00 – 12:00| Platform: DB2 on Linux, UNIX, and Windows 0
  2. 2. Click to edit Master title style Agenda • • • • • What recovery options are available Walk through examples How to decide which option to use What other options are available Overflow Bucket  1
  3. 3. Click to edit Master title style What recovery options are available • Backup and Restore • Process Model • Important files • Misc items • Advanced Copy Services • Transportable Schemas 2
  4. 4. Click to edit Master title style Backup Process Model Tablespace A db2bm db2agent db2med Tablespace B db2bm db2med Backup Buffers Tablespace C db2med db2bm parallelism sessions 3
  5. 5. Click to edit Master title style Restore Process Model TablespaceA db2bm db2med TablespaceB parallelism TablespaceC db2agent db2med db2med db2bm 4
  6. 6. Click to edit Master title style DB2 recovery-related system files • Recovery History File - db2rhist.asc / db2rhist.bak: • Created during Create Database command • Updated by DB2 Utility execution: • Back up database or table space • Restore database or table space • Roll forward database or table space • Load table • Reorg table • DB2 Log file archival • Create/Alter/Rename table space • Quiesce table spaces for table • Drop Table (optional) • Included on each DB2 backup file • db2 LIST HISTORY command • Log Control File – SQLOGCTL.(G)LFH.1: • • • • Database Directory Instance NODE0000 SQL0000n db2rhist.asc db2rhist.bak SQLOGCTL.(G)LFH.1 SQLOGCTL.(G)LFH.2 Used during crash recovery Disk updated at end of each Log File Use softmax value < 100 (% of logfilsiz) to refresh pointers more often Included at end of each DB2 backup 5
  7. 7. Click to edit Master title style How can I make backup run faster? • Let the DB tune the backup parameters automonically • Can compute everything except the # of sessions / target list • Ensure you heap size is large enough (util_heap_sz 50000) • If backing up to a file system create multiple objects • If the target device is a raid 5 file system creating multiple backup objects will speed up the process • Backup db sample to /mydb/backup, /mydb/backup, /mydb/backup, … • For TSM – open multiple sessions 6
  8. 8. Click to edit Master title style What about backup compression? • Compression can be used in 4 different areas 1. Table compression • • Row level compression in the database 10.1 introduced adaptive compression 2. DB2 Backup compression • • • compressed while backing up Requires additional CPU resources Avoid is backup target is a data deduplication device 3. TSM Software compression (if you have TSM) 4. Storage (ie. hardware) level compression • • Recommendation: • Start with the following: • • • Depends on your storage devices If you have table compression, you may not see a huge benefit with using db2 backup compression as well. If you have storage level compression, then you do may not need to enable to TSM software compression. Test the combinations of compression types, to see what is the best fit, it will depend on the resource usage in your environment. 7
  9. 9. Click to edit Master title style Backup and Recovery are DPF enabled • Single System View(SSV) in DPF • Configuration • Hierarchical in nature, can be overridden on a partition level • Backup • Single command resulting in a single point of consistency across all partitions (DPF Aware Backup) • db2 backup db foo on all dbpartitionnums • db2 backup db foo on dbpartitionnums (0, 30) • db2 backup db foo on all dbpartitionnums except dbpartitionnums (10, 20) • Logs in Backup is supported in DPF • Rollforward to end of backup simplified: • db2 rollforward db foo to end of backup and stop 8
  10. 10. Click to edit Master title style The RECOVER Command  RECOVER command Combines RESTORE and ROLLFORWARD into a single step Automatically determines which backup image(s) and log files to use • Using information in Recovery History file • Even when multiple logs chains exists due to past recoveries to a point in time •Recovery history file now keeps detailed information about log chains Can recover a multi-partition database in a single command  Examples (each applies to single- and multi-partitioned databases) Recover a database to the end of logs from best available backup RECOVER DB <dbname> Recover a database to a particular point in time • Note that default time specification is in local time (not GMT) RECOVER DB <dbname> TO 2003-12-31-04.00.00 Recover a point in time not represented in current history file RECOVER DB <dbname> TO 1998-12-31-04.00.00 USING HISTORY FILE (/home/user/fromimage/db2rhist.asc 9
  11. 11. Click to edit Master title style What recovery options are available • Backup and Restore • Process Model • Important files • Misc items • Advanced Copy Services • Transportable Schemas 10
  12. 12. Click to edit Master title style Review : Manual Flash Copy Backup • Flashcopy backup and restore a largely manual process: • Backup 1. 2. 3. 4. 5. 6. • Identify LUN(s) associated with the database Identify free target LUN(s) for the copy Establish the flashcopy pair(s) Issue DB2 SUSPEND I/O command to tell DB2 to suspend write I/Os Issue storage commands necessary to do the actual flash copy Issue DB2 RESUME I/O command to return DB2 to normal Restore 1. 2. 3. Restore/copy target LUN(s) containing backup of interest Issue DB2INIDB command to initialize the database for rollforward recovery Issue DB2 ROLL FORWARD command  No history file entry  Error prone DB2 Database Flash Copy Source LUNs Target LUNs 11
  13. 13. Click to edit Master title style Review : Integrated ACS Copy Backup • Flashcopy backup/restore just like any other DB2 backup • Backup 1. 2. 3. 4. 5. 6. Identify LUN(s) associated with the database DB2 BACKUP DB sample Identify free target LUN(s) for the copy USE SNAPSHOT Establish the flashcopy pair(s) Issue DB2 SUSPEND I/O command to tell DB2 to suspend write I/Os Issue storage commands necessary to do the actual flash copy Issue DB2 RESUME I/O command to return DB2 to normal DB2 RESTORE DB sample USE SNAPSHOT • Restore 1. Restore/copy target LUN(s) containing backup of interest DB2 ROLLFORWARD … 2. 3. Issue DB2INIDB command to initialize the database for rollforward recovery Issue DB2 ROLL FORWARD command DB2 Database Flash Copy Source LUNs Target LUNs  History file record  Simple !  Wide (but not exhaustive) storage support 12
  14. 14. 10.5 Click to edit Master title style Scripted Interface for ACS Copy Backup • Flashcopy backup/restore just like any other DB2 backup • Backup 1. 2. 3. 4. 5. 6. • Identify LUN(s) associatedDB sample USE SNAPSHOT SCRIPT DB2 BACKUP with the database Identify free target LUN(s) for the copy ‘/myscript.sh’ Establish the flashcopy pair(s) Issue DB2 SUSPEND I/O command to tell DB2 to suspend write I/Os Issue storage commands necessary to do the actual flash copy Issue DB2 RESUME I/O command to return DB2 to normal DB2 RESTORE DB sample USE SNAPSHOT SCRIPT Restore ‘/myscript.sh’ TAKEN AT <timestamp> 1. 2. 3. Restore/copy target LUN(s) containing backup of interest Issue DB2INIDB command to initialize the database for rollforward recovery DB2 ROLLFORWARD … Issue DB2 ROLL FORWARD command DB2 Database Flash Copy Source LUNs Target LUNs  History file record  Simple to use !  Wider storage support enabled 13
  15. 15. Click to edit Master title style Scripted Interface for Flash Copy Backup 14
  16. 16. Click to edit Master title style Scripted interface for flash copy backup • Available in DB2 10.5, DB2 9.7 FP 9 and DB2 10.1 FP3 • White Papers published or soon to be published • Introduction to the Scripted Interface • Implementation of the Scripted Interface for DB2 ACS Using Linux LVM • Implementation of the Scripted Interface for DB2 ACS Using IBM GPFS • Implementation of the Scripted Interface for DB2 ACS using IBM DS4000 midrange storage system 15
  17. 17. Click to edit Master title style ACS Differences between V 9.7 and V 10.1+ Feature V 9.7 V 10.1+ AIX Y(5.3 & 6.1) Y (6.1 & 7.1) Linux Y RHEL 5 & SLES 10 (nSeries/NetApp only) Y RHEL 5&6 SLES 10&11 (all storage devices) HPUX IA64 N Y Solaris SPARC N Y DS8K Y Y XIV Y (Gen 2) Y (Gen 2 & 3) SVC Y (2.1 – 4.3.1) Y (4.3.0 – 6.2) ESS800 (shark) Y N DS6K Y N Storwize 7000 N Y IBM N-Series Y Y (V 10.5) NetApp Y Y (V 10.5) 16
  18. 18. Click to edit Master title style What recovery options are available • Backup and Restore • Process Model • Important files • Misc items • Advanced Copy Services • Transportable Schemas 17
  19. 19. Click to edit Master title style Transportable Schema Provide the illusion that we can restore any table space(s) into any database and the recreate all of the logical objects based off of the physical objects in the table space(s). Essentially Oracle’s Transportable Tablespaces feature on steroids (they only transport tables, indexes, views, RI constraints and triggers) Interface will require the user to specify both the list of schemas to be transported as well as the list of table spaces (for now). Restore will now do multiple operations • Restore the syscatspace and specified table spaces from the backup image • Roll them forward to a consistency point • Validate the schemas specified • Transfer ownership of the specified table spaces to the target DB • Recreate the schema in the targetDB 18
  20. 20. Click to edit Master title style Transportable Schema con’t Restore command changes • Add “TRANSPORT INTO” option to identify this is a transport option • Add “Stage into” option to identify which staging DB to use and to not delete it once the transport complete • Reuse the “TABLESPACE” option to identify which table spaces to transport • Add Schema list option to identify which schemas will be transported • With this release ALL schemas in the supplied table space list must be specified • This is added for future extensibility, we do require the call to specify the set of table spaces to transport. In the future we could drop the table space list parameter and determine it ourselves. 19
  21. 21. Click to edit Master title style Transport Sets doesn’t work tablespace1 tablespace2 schema1 schema3 tablespace3 tablespace4 tablespace6 schema4 schema2 works tablespace5 schema5 works works 20
  22. 22. Click to edit Master title style Example Transport Schema 1 and Schema 2 to the target DB successfully • Restore the mydata1 and myindex1 table spaces into TARGETDB db2 restore db originaldb tablespace (“mydata1”,”myindex1”) schema(“schema1”,”schema2”) transport into targetdb redirect db2 set tablespace containers for 2 using (path '/targetdb/mydata1') db2 set tablespace containers for 3 using (path '/targetdb/myindex1’) db2 restore db originaldb continue 21
  23. 23. Click to edit Master title style What will be transported • • Tables / CGTTs / MQTs / ‘normal + stats’ Views Generated columns • • • • • • UDFs / UDTs + generated functions Constraints • • • • • • • • • • • Expression Identity Row change timestamp Row change token Check Foreign key Unique / primary Functional dependency Indexes Triggers Sequences Procedure – not external routine executable Object authorizations / privileges / Security / Access control / Audit Table Statistics + profiles / hints (plan lockdown) Packages 22
  24. 24. Click to edit Master title style What will NOT be transported • • • • • • • • • • • • • • Created Global variables Aliases Jobs Index extensions Hierarchical tables, typed tables, typed views Nicknames Structured types methods Servers Wrappers Functional mappings & templates OLE DB External functions sourced Procedures XML - sysxmlstrings and sysxmlpaths collisions an issue DPF and pureScale environments will not be supported 23
  25. 25. Click to edit Master title style Agenda • • • • • What recovery options are available Walk through examples How to decide which option to use What other options are available What is missing 24
  26. 26. Click to edit Master title style ESE / PureScale Recovery • Only a single copy of the database • Can exploit full, incremental or delta backups taken at the DB or Table space level • Can use REBUILD option to restore to a new database without recovering all of the data • Can restore only a subset of the data in the backup image 25
  27. 27. Click to edit Master title style Rebuild Partial Database Scenarios • • • • • Eliminate the need for FULL db backup Ability to rebuild entire DB, including DPF, from set of table space backup images Ability to bring only a portion of the DB online Scans the history file to build the list of images to restore Design for recovery speed NOT backup performance Sun Mon Tue Wed Thu Fri Sat Full TSP Weekly Incr DB Set1 Incr DB Set2 Incr DB Set3 Incr DB Set4 Incr DB Set5 Incr DB Set6 Sun Full DB Monthly 26 26
  28. 28. Click to edit Master title style Database Recovery using Rebuild • Necessary Table spaces will be restored automatically based on Recovery History data Recovery History File SalesDB SYSCATSPACE 2 SMS01 DMS01 3 Backup Database SALESDB SUN Backup TS DMS01 MON TUE Backup TS DMS02 WED THU DMS02 1 Backup TS DMS01 FRI Database Fails ! SAT 1. RESTORE DB SALESDB REBUILD WITH ALL TABLESPACES IN DATABASE TAKEN AT Friday (DB2 Restores Friday, Sunday and Thursday) 2. ROLLFORWARD DB SALESDB TO END OF LOGS AND STOP 27 27
  29. 29. Click to edit Master title style Database Recovery - Rebuild from TS Backups • Database Recovery using multiple Table space backups Recovery History File SalesDB SYSCATSPACE 2 Backup TS DMS02 DMS01 SUN 3 TUE DMS01 DMS02 1 Backup TS SMS01 SYSCATSPACE MON SMS01 Backup TS DMS02 DMS01 WED THU Backup TS DMS01 FRI Database Fails ! SAT 1. RESTORE DB SALESDB REBUILD WITH ALL TABLESPACES IN DATABASE TAKEN AT Friday (DB2 Restores Friday, Tuesday and Thursday) 2. ROLLFORWARD DB SALESDB TO END OF LOGS AND STOP 28 28
  30. 30. Click to edit Master title style Database Partial Copy using REBUILD • Can Create a Database copy with a subset of table spaces SalesDB SalesDB SYSCATSPACE 2 DMS01 1. OR DMS01 DMS02 1 Backup Database SALESDB SUN SYSCATSPACE SMS01 Backup TS DMS01 MON TUE Backup TS DMS02 WED THU Backup TS DMS01 FRI Copy for testing SAT RESTORE DB SALESDB REBUILD WITH TABLESPACE(SYSCATSPACE,DMS01) TAKEN AT Friday (DB2 Restores Friday, and Sunday (just SYSCATSPACE TS) RESTORE DB SALESDB REBUILD WITH ALL TABLESPACES IN DATABASE EXCEPT TABLESPACE(SMS01,DMS02) TAKEN AT Friday 2. ROLLFORWARD DB SALESDB TO END OF LOGS AND STOP 29 29
  31. 31. Click to edit Master title style Database Rebuild using one TS Backup image • Can Create a partial Database copy from one Table space Backup SalesDB SalesDB SYSCATSPACE DMS01 Backup Database SALESDB SUN SYSCATSPACE SMS01 DMS02 DMS01 1 Backup Backup TS DMS01 MON TUE TS DMS01 SYSCATSPACE Backup TS DMS02 WED THU FRI Copy for testing SAT 1. RESTORE DB SALESDB REBUILD WITH ALL TABLESPACES IN IMAGE TAKEN AT Friday 2. ROLLFORWARD DB SALESDB TO END OF LOGS AND STOP 30 30
  32. 32. Click to edit Master title style Table space point in time recovery using REBUILD • Can Restore Catalogs and Selected Table space to PIT SalesDB SalesDB SYSCATSPACE 2 SMS01 DMS01 1. Tuesday DMS01 DMS02 1 Backup Database SALESDB SUN SYSCATSPACE Backup TS DMS01 MON TUE Backup TS DMS02 WED THU Backup TS DMS01 FRI SAT RESTORE DB SALESDB REBUILD WITH TABLESPACE(SYSCATSPACE,DMS01) TAKEN AT Tuesday (DB2 Restores Tuesday, and Sunday (just SYSCATSPACE TS) 2. ROLLFORWARD DB SALESDB TO Tuesday AND STOP 31 31
  33. 33. Click to edit Master title style DPF Recovery • Each partition contains • 1/nth of the data • Independent log stream • Can be recovered independently • Minimal Recovery Time (MRT) is more complex to determine • When the "LIST TABLESPACES SHOW DETAIL" command or "GET SNAPSHOT FOR TABLESPACES" command is executed, one of the attributes that may be displayed is the "Minimum recovery time". • Only need to recover on the partitions that have been affected by the problem, which may be a subset of the partitions 32
  34. 34. Click to edit Master title style Scenario for Backup: • Log archiving enabled, to TSM: db2 update db cfg for salesdb using LOGARCHMETH1 TSM • Incremental backup db2 db2 update dbm cfg using TRACKMOD YES • Online daily backup of the catalog partition: db2 -v "backup db salesdb on dbpartitionnums (0) online use tsm open 2 sessions util_impact_priority 33 include logs” • Online partitioned tablespace backup – 2x per week db2 "backup db salesdb on dbpartitionnums (1,9) tablespace(pdts_in, pdts_ini) online use tsm open 2 sessions util_impact_priority 33 include logs“ note: Rolling schedule – start with partitions (1,9), then (2,10), (3,11), (4,12)…(8,16) 33
  35. 35. Click to edit Master title style Recovery Scenario 1: Catastrophic Failure – you lost your IO Subsystem – the entire database is lost! • • Yes, you can rebuild your entire database from all the tablespace backups! Necessary Table spaces will be restored automatically based on Recovery History data Recovery History File SalesDB SYSCATSPACE DMS01 Backup Database SALESDB 3 Backup TS DMS01 2 SUN SMS01 MON TUE Backup TS DMS02 WED THU DMS02 1 Backup TS DMS01 FRI Database Fails ! SAT 34
  36. 36. Click to edit Master title style Recovery Scenario 1: Database recovery to end of logs • Use restore with the rebuild option: db2_all "db2 "restore db salesdb rebuild with all tablespaces use tsm replace existing” • Reads backup history file, and figures out which table space backup images are needed and the corresponding logs • Issue rollforward: db2 "rollforward db salesdb to end of logs and stop” 35
  37. 37. Click to edit Master title style Recovery Scenario 2: Logical Corruption – something happened on Wednesday, you need to go back to Tuesday night. • Database point in time recovery, using REBUILD • You can restore the database to a point in time, using your tablespace images Tuesday SalesDB SalesDB SYSCATSPACE 2 DMS01 SYSCATSPACE SMS01 DMS01 DMS02 DMS02 1 Backup Database SALESDB SUN SMS01 Backup TS DMS01 MON TUE Backup TS DMS02 WED THU Backup TS DMS01 FRI SAT 36
  38. 38. Click to edit Master title style Recovery Scenario 2: Logical Corruption - Database Recovery to Point in Time • Use restore with the rebuild option: db2_all "db2 "restore db salesdb rebuild with all tablespaces use tsm replace existing” • Reads backup history file, and figures out which tablespace backup images are needed and the corresponding logs • Issue rollforward: db2 "rollforward db salesdb to <timestamp>” • Must recover all database partitions to the same point in time 37
  39. 39. Click to edit Master title style Recovery Scenario #3: Logical Corruption: User Error on Wednesday, only affects a single table space. • Table space point in time recovery using REBUILD • Can Restore Catalogs and Selected Table space to point in time. • Need to understand MRT – Minimum Recovery Time Tuesday SalesDB SalesDB SYSCATSPACE 2 DMS01 SYSCATSPACE SMS01 DMS01 DMS02 DMS02 1 Backup Database SALESDB SUN SMS01 Backup TS DMS01 MON TUE Backup TS DMS02 WED THU Backup TS DMS01 FRI SAT DMSO1 is logically corrupt 38
  40. 40. Click to edit Master title style Recovery Scenario #3: Logical Corruption: User Error on Wednesday, only affects a single table space. • • A single tablespace needs to restored From the catalog node: • Start restore: db2_all “db2 "restore db salesdb into tempDB rebuild with tablespace (syscatspace, dms01) use tsm taken at <tuesday date> replace existing • Rollforward: db2 "rollforward db tempdb to <point in time> and stop tablespace (syscatspace, dms01)“ • Export the data and reload it into SALESDB 39
  41. 41. Click to edit Master title style Recovery Scenario 4: A single disk fails, so data is corrupted only on a single logical partition. • • Partition Level Recovery To End of Logs Necessary table partition will be restored automatically based on Recovery History data Recovery History File SalesDB SYSCATSPACE 2 DMS01 3 Backup Database SALESDB SUN SMS01 Backup TS DMS01 MON TUE Backup TS DMS02 WED THU DMS02 1 Backup TS DMS01 FRI Database Fails ! SAT 40
  42. 42. Click to edit Master title style Recovery Scenario 4: A single disk fails, so data is corrupted only on a single logical partition. • A single logical partition is corrupted (disk failure!) • The example, db partition 3 is corrupted • From the catalog node: • Start restore: db2_all "<<+3<db2 "restore db salesdb tablespace (dms01, dms02) online use tsm taken at 20100401143616 replace existing • Check status: db2 rollforward db salesdb query status Result: 3 TBS pending S0000000.LOG-S0000003.LOG 2010-03-2907.42.44.000000 Local note: only partition 3 was restored, so only partition 3 needs to be rolled forward • Rollforward: db2 "rollforward db salesdb to end of logs on dbpartitionnum (3) tablespace (dms01, dms02) online" 41
  43. 43. Click to edit Master title style Agenda • • • • • What recovery options are available Walk through examples How to decide which option to use What other options are available Overflow Bucket  42
  44. 44. Click to edit Master title style Setting your goals • RPO – recovery point objective • RTO – recovery time objective • Two goals: • Ensure you can recover the data you need • Minimal impact to running queries - balance your backup process across partitions 43
  45. 45. Click to edit Master title style Typical Low End Recovery Strategy • Typically have a maintenance windows nightly • Perform full offline DB backups every other nightly • May or may not have a recoverable database • Typically archive logs to a disk • Purge log files automatically after 1 week • Keep 3 generation of backups 44
  46. 46. Click to edit Master title style Sample Low End Backup Schedule Sun Mon Full DB Tue Full DB • • Wed Thu Fri Full DB Sat Sun Full DB Full DB backup 3-4 times a week Retain 3 – 5 copies of the entire database 4545
  47. 47. Click to edit Master title style Typical Mid Range Configuration DB2 Server Environment Disk Storage CPU • • • • • • IBM Small number of SMPs 4-16 CPUs Fibre attached storage Backup to tape drives over the LAN Storage Manager (TSM) to manager tape devices Small tape library Mid size database, tens or hundreds of gigabytes in size TSM Server and Tape Library IBM CPU Tape 46
  48. 48. Click to edit Master title style Typical Mid Range Recovery Strategy • Typically have a maintenance windows weekly • Perform full offline DB backups on week-end • May perform table space level backups nightly • Typically have a recoverable database • Either archive logs to disk or directly to storage manager • If archiving to disk, must purge log files after set period of time • Keep 3-5 generation of backups with associated log files 47
  49. 49. Click to edit Master title style Sample Mid Range Backup Schedule Sun Full DB • • Mon Incr DB Set1 Tue Wed Thu Incr DB Set2 Fri Incr DB Set3 Sat Sun Full DB Full DB backup monthly – for long term retension Full Tablespace images on the week-end • Rotating through the entire set over the period of a month • Nightly table space incremental backups • Rotating through the entire set of table spaces in a week 4848
  50. 50. Click to edit Master title style Typical High End Configuration DB2 Server Environment IBM • Multiple SMP servers • SAN attached storage on intelligent drives • Exploit Storage “flash copy” capabilities • Lan-Free backup from Flash Copy • Tape library manager • Large database, terabytes in size CPU Disk Storage TSM Server Environment Tape Library CPU IB M 49
  51. 51. Click to edit Master title style Typical High End Recovery Strategy • Typically have no maintenance windows • Perform full offline DB backups monthly if possible • Will perform table space level backups nightly • May use incremental backup nightly and full table space on week-ends • Typically have a recoverable database • Archive logs directly to storage manage • Keep 3-5 generation of backups with associated log files 50
  52. 52. Click to edit Master title style Sample High End Backup Schedule Sun Mon Tue Wed Thu Fri Sat Full TSP Weekly Incr DB Set1 Incr DB Set2 Incr DB Set3 Incr DB Set4 Incr DB Set5 Incr DB Set6 • • Sun Full DB Monthly Full DB backup monthly – for long term retension Full Tablespace images on the week-end • Rotating through the entire set over the period of a month • Nightly table space incremental backups • Rotating through the entire set of table spaces in a week 5151
  53. 53. Click to edit Master title style Protecting yourself from logical corruption • • • • Application erroneous updates, inserts, deletions Dropped table(s) Deleted row(s) Dropped table space(s) 52
  54. 54. Click to edit Master title style Methods to recover from logical corruption Utilize DB2 Backup images • Recovery affected table space(s) and roll forward to a point in time (PIT) • Must rollforward past last DDL statement or must also recovery the system catalog table space • Pros • Utilizes existing backups, can also use snapshot backups • Cons • • • • Level of granularity is DB Slow recovery if using traditional DB2 backup image Complete DB outage while recovery is in progress All transactions after the PIT must be manually reapplied 53
  55. 55. Click to edit Master title style Methods to recover from logical corruption Object level recovery via Staging DB • Create a staging DB utilizing the “rebuild” option to restore all affected table spaces into a new DB OR use transportable tablespace into a staging DB • Rollforward to a PIT before the erroneous operation • Can use load from cursor between source and staging DB to recovery the affected objects • Pros • Does not affect availability of source DB • Cons • Requires space for the staging DB 54
  56. 56. Click to edit Master title style Methods to recover from logical corruption - Object level recovery via High Performance Unload • Pros • Utilizes existing DB2 backups to extract objects • Only targeted objects are affected • Cons • Unable to reapply log files generated after the backup • Must reapply transactions manually 55
  57. 57. Click to edit Master title style Agenda • • • • • What recovery options are available Walk through examples How to decide which option to use What other options are available Overflow Bucket  56
  58. 58. Click to edit Master title style What other options are available • Storage based replication • Logical Replication • HADR 57
  59. 59. Click to edit Master title style Local Cluster With Disk Mirroring to remote DR site Primary Connection HA Cluster Integration with HACMP, TSA, MSCS, Sun, Veritas, Heartbeat, etc DR Site Primary Database Remote Disk Mirror Technology DB1 DB1’ Pros: • Very fast local failover with DR ability as well • Protection from software, server, storage or site failure • Failover time in the range of 30 sec or less local Cons: • Failover time to DR site can be in the order of tens of minutes • Must ensure all file systems required are replication 58
  60. 60. Click to edit Master title style IBM InfoSphere Data Replication (IIDR) • Used for any change data capture need • • • • • High Availability and Disaster Recovery Offload query and reporting workloads Warehousing Master data systems (MDM, etc) Information Server (for DataStage, etc) • Three technologies available • Q Replication • SQL Replication • CDC Replication • Q Replication • High performance • High availability DB2 Cognos Information Server IDRR MDM Warehouse 59
  61. 61. Click to edit Master title style Logical Replication Multiple alternate standby servers Primary Connection Site A … Site C Site B Read and / or write on standby Primary Database Remote Standby DB 3 Q based SQL replication to logical standby’s DB1 DB 2 Pros: • Protection from software, server, storage or site failure • Failover time is “instant” • Standby can be full or subset and is full accessible (read and/or write) • Multiple standby servers Cons: • More complex to setup and monitor (more flexibility) compared to HADR • Async 60
  62. 62. Click to edit Master title style HADR Architecture DB2 Engine PRIMARY SERVER STANDBY SERVER TCPIP HADR DB2 Engine Log Pages Log Records HADR Shredder Log Pages Log Pages Log Writer Tables Indexes 61 Logs Log Reader Log Records Log Pages Log Writer Old Logs Replay Master Logs Log Reader Redo Slaves Redo Slaves Redo Slaves Replay Slaves Old Tables Logs Indexes 61 61
  63. 63. Click to edit Master title style Agenda • • • • • What recovery options are available Walk through examples How to decide which option to use What other options are available Overflow bucket  62
  64. 64. Click to edit Master title style Integrated backup support for data deduplication • Native support for all deduplication devices • Both IBM and non-IBM devices • Alters the format the backup image to be dedup friendly • Starting with V 9.7 FP3 63
  65. 65. Click to edit Master title style Data Deduplication Concept A J B G H D C E L F H G E D Unique blocks C H B C A L K B I K E J C F K E Duplicate blocks Data Data Source Source 1 2 I B J Target data store Data Source 3 64
  66. 66. Click to edit Master title style Default backup physical format Tablespace 1 Tablespace 2 Tablespace 3 DB2 backup db mydb use TSM open 3 sessions Backup image output stream 1 Backup image output stream 2 Backup image output stream 3 65
  67. 67. Click to edit Master title style Dedup backup physical format Tablespace 1 Tablespace 2 Tablespace 3 DB2 backup db mydb use TSM open 3 sessions dedup_device Backup image output stream 1 Backup image output stream 2 Backup image output stream 3 66
  68. 68. Click to edit Master title style TSM Client Deduplication Results Command: DB2 backup db PERF use TSM open 8 sessions dedup_device Settings: Util_heap_sz =50000 Autonomic performance settings: Backup Buffer Size = 2465 Backup # of buffers = 18 Backup Parallelism = 8 Start End Elapsed Time 12:22:57 AM 2:32:54 AM 2:09 Actual DB Size Dedup Size % Savings in sent to server bandwidth in bytes in bytes 1.35891E+11 1.3574E+11 0.11% 2:33:02 AM 3:04:13 AM 0:31 1.35891E+11 3501526595 97.42% 3:04:19 AM 3:34:07 AM 0:29 1.35891E+11 1439490051 98.94% 3:34:13 AM 4:03:14 AM 0:29 1.35891E+11 875452538 99.36% 4:03:20 AM 4:32:45 AM 0:29 1.35891E+11 1015678830 99.25% 67
  69. 69. Click to edit Master title style TSM Client Deduplication Results Command: DB2 backup db PERF use TSM open 8 sessions dedup_device Settings: Util_heap_sz = 300000 Autonomic performance settings: Backup Buffer Size = 16384 Backup # of buffers = 18 Backup Parallelism = 8 Start End Elapsed Time Actual DB Size Dedup Size sent to in bytes server in bytes % Savings in bandwidth 10:22:00 PM 1:53:55 AM 2:22:26 AM 2:49:44 AM 3:17:18 AM 1:53:47 AM 2:22:30 AM 2:49:39 AM 3:17:12 AM 3:45:32 AM 3:31 0:28 0:27 0:27 0:28 0.56% 99.09% 99.74% 99.87% 99.91% 1.36499E+11 1.36499E+11 1.36499E+11 1.36499E+11 1.36499E+11 1.35729E+11 1248387123 352043759 175945343 129529760 68
  70. 70. Click to edit Master title style AUTO_DEL_REC_OBJ : Automatic Life Cycle Mgmt • A new database configuration parameter that controls whether the underlying logs, backups and other associated objects are deleted when the history file is pruned • AUTO_DEL_REC_OBJ • OFF (default, existing behavior) • ON • When does this automatic deletion occur ? • After a successful backup • On an explicit PRUNE HISTORY AND DELETE command • What is deleted ? • Any full database backup images which exceed both NUM_DB_BACKUPS and REC_HIS_RETENTN db cfg parameters will be deleted • Any associated incremental backup images, load copy images, table space backup images or log files will be deleted 69
  71. 71. Click to edit Master title style Best Practices – Your database design • Leverage intelligent database design practices! • All referential tables are in the same table space, or set of table spaces. • All staging tables (for load) are in a separate table space • Active vs. In-active data – separated by table space • Range partitioning – further identify active vs. inactive by designing ranges • Local vs. Global Indexes – if you have global indexes (ie. Prior to v9.7), then keep those in a table space that you back up with it’s matching data table space. Rebuilding your indexes can be time consuming! • Goal: you want to be set up to restore only what you need. 70
  72. 72. Click to edit Master title style Best Practices: Backup recommendations • Backup Images: • Online database backups • Online table space backups • Incremental backups • Compression is good * • Use the Single System View option (v9.5 +). Let DB2 manage the backups and timestamps for you. • Always use lan-free option to write to tape drives directly via SAN • DO NOT archive directly to tape! • configure FAILARCHPATH in case primary-log-destination becomes unavailable • Include the log records in each backup image – it’s easier that way! • Operating System files backed up twice per week 71
  73. 73. Click to edit Master title style Best Practices: Backup recommendations cont’d • Example: • Full online table space backup of hot* and warm table spaces twice a week, include logs • Full online database backup of catalog partition daily, logs included • Full online database backup of database partitions on quarterly or monthly basis • Full table space backup after adding a new table space 72
  74. 74. Click to edit Master title style Best Practices - Logging • Use archive logging – not circular logs for your production environment • Goal: ease of maintenance • Include logs in your backup image • Use TSM to handle your archiving for you • Small transaction logs: • Reduce risk since logs contain fewer transactions • Increases the number of logs required, since large transactions may span multiple log files, plus more overhead in system resources. • Large transaction logs: • Increase risk since logs contain more transactions • Benefit: reduces the amount of system resources used, as less log switching takes place • Recommendation: Start with 50 primary logs, of about 50MB each. 73
  75. 75. Click to edit Master title style Best Practices - Recovery recommendations • For table space recovery, use the restore command with the REBUILD option • Use the REBUILD option (v9.5) to get the subset of the system you need up and running immediately • Use the log manager, not user exits • Use db2adutl to retrieve log files from tape to disk – keep ahead of the log files you need . 74
  76. 76. Click to edit Master title style Backup and Recovery • If a DB2 online backup is not feasible due to conflicts with other utilities then consider SNAPSHOTS in DB2 9.5 OR • IBM Tivoli Storage Manager for Advanced Copy Services For DB2 • http://www.ibm.com/developerworks/tivoli/library/tacsdb2_1/index.html • When using TSM always use Lan-Free option • Review SAP 20 TB BI Benchmark Results • Full backup in < 7 hours • http://www.ibm.com/support/techdocs/atsmastr.nsf/WebIndex/W P101012 • Best Practices for backup and recovery in ISAS • http://www.ibm.com/developerworks/data/bestpractices/isasrecov ery/index.html 75
  77. 77. Click to edit Master title style More Information • DB2 LUW Best Practices: https://www.ibm.com/developerworks/data/bestpractices • Best Practices: Building a Recovery Strategy for an IBM Smart Analytics System Database http://www.ibm.com/developerworks/data/bestpractices/isasrecovery/ index.html • Best Practices: Multi-Temperature Data Management http://www.ibm.com/developerworks/data/bestpractices/multitemper ature/index.html • Article: DB2 instance recovery for IBM Smart Analytics System http://www.ibm.com/developerworks/data/library/techarticle/dm1010db2instancerecovery/index.html?ca=drs76
  78. 78. Click to edit Master title style Thai Hindi Traditional Chinese Gracias Spanish Russian Thank You Obrigado Brazilian Portuguese Arabic Grazie Danke German Italian Merci French Tamil Simplified Chinese Korean Japanese 77
  79. 79. Click to edit Master title style Dale McInnis IBM Canada Ltd. dmcinnis@ca.ibm.com Session: D11 DB2 Recovery - what is inside this magic box. 78

×