SQL-BackTrack for Sybase 高正宗 System Consultant Manager 黃仁政 System Consultant Agenda 資料庫的可用性 系統架構 產品功能說明 實機展示 產品比較 資料可用性的策略 Unplanned Planned No Downtime Severity of Database Downtime Catastrophic Disaster Recovery High Availability Offline Maintenance High Availability Clusters Switching and Warm Standby Replication Online Maintenance Latency of Database Recovery Cold Standby Continuous Availability 復原作業的問題 80% of all unplanned downtime is caused by software or human error* 70% of recovery is "think time"! Investigate 20% Analyze 30% Diagnose 20% Recover 30% *Source: Gartner, “Aftermath: Disaster Recovery”, Vic Wheatman, September 21, 2001 確保復原作業 SQL-BackTrack automates the entire process! Analysis Investigate data loss/ corruption and discover what information must be replaced Source Identify location of and retrieve backup data Preparation Issues the appropriate commands needed to prepare the database for the recovery process Restore Copies backup data to the correct destination Recover Issues the appropriate command in the correct sequence Post-op Perform appropriate postrecovery clean-up processes Why SQL-BackTrack? An example of a recovery of a Sybase database using the native utility 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Determine which database to recover Determine where backups are located If the backups are striped locate all the stripes Order the backups in the required sequence to be applied. Determine the recovery type: physical, transaction log , is there a specific point in time for the recovery If it is a point in time recovery determine the transaction log backups to be applied. Start an isql session Issue load database Issue load transaction for all the transaction log backups If the recovery is PIT issue load transaction with until_time Issue online database or online for standby access Determine if the database and application are ready for production use. Why SQL-BackTrack? An example of a recovery of a Sybase database using the native utility 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Determine which database to recover Determine where backups are located If the backups are striped locate all the stripes Order the backups in the required sequence to be applied. Determine the recovery type: physical, transaction log , is there a specific point in time for the recovery If it is a point in time recovery determine the transaction log backups to be applied. Start an isql session Issue load database Issue load transaction for all the transaction log backups If the recovery is PIT issue load transaction with until_time Issue online database or online for standby access Determine if the database and application are ready for production use. Agenda 資料庫的可用性 系統架構 產品功能說明 實機展示 產品比較 備份作業 d ts ba ck up control directory control channel dt sd um p queries & commands IPC channel dump database bcp out SYBASE dataserver OBSI SYBASE backupserver Backup Destination 復原作業 control channel dt sl oa d dt sr ec ov er control directory queries & commands IPC channel load database bcp in SYBASE dataserver OBSI SYBASE backupserver Backup Destination OBSI模組整合 ASE SQL-BackTrack Tape Devices Server Program BT Module Media/ Client Program IBM Juke Boxes Tivoli Storage Manager VERITAS Legato NetBackup DataCenter NetWorker OBSI模組整合 Agenda 資料庫的可用性 系統架構 產品功能說明 實機展示 產品比較 Common SQL-BackTrack Features Dry run backup and recovery Table recovery from physical backup Unattended on-line and off-line backup Incremental backups Compression and encryption Storage management integration Guided recovery Unique SQL-BackTrack Features for Sybase Master database recovery Needs to be rebuilt, if lost or damaged Generates Master Database Recovery template script to recover Remote administration Warm stand-by server support Table level recovery includes recovery of dependent objects (triggers, etc.) Unique SQL-BackTrack Features over Sybase Native Utilities Logical Object extraction features: DDL Only DDL + Data Specific objects or object types like: stored procedures only or tables only … Will add objects to database in dependency order. For instance, will compile stored procedures into database in dependency order. Can exclude specific objects like: exclude sysusers, sysalternates tables when copying database to another server. Or you can exclude a type of object like exclude all triggers. Extract/restore database object and all of it’s dependent objects Default is fast bcp in, unless told to do otherwise. Automatically takes care of rebuilding indexes. Unique SQL-BackTrack Features over Sybase Native Utilities Logical restore options make shrinking your database much easier. 1 step - do a logical restore to a smaller database. Warm Stand-by Server Support Master database info, writes a text file of useful information about the master database such as device, configuration, database, sysusages, and syslogin information taken from a physical backup. Very useful in recovering the master database. Unique SQL-BackTrack Features over Sybase Native Utilities Can restore data to a database using full sql insert statements -- useful if “select into/bulk copy” option is turned off Can restore data to a different segment. Useful if you want to eliminate segments or move data from one segment to another Prints database allocation info. (sysusages) from a physical backup. Useful if you have to manually recreate the database. Supports calling SQL-BackTrack log dump commands from a stored procedure. Useful for thresholds. Agenda 資料庫的可用性 系統架構 產品功能說明 實機展示 產品比較 SQL-BackTrack Components SQL-BackTrack Control Directory (with Control Files) SQL Server SQL Server SQL Server .dtoptions file OBSI Software Backup device .dtoptions file OBSI Software Backup device .dtoptions file OBSI Software Backup device sbacktrack Executables (main BT program) SQL-BackTrack Executables sbacktrack (main BT program) dtsbackup dtsrecover dtsdump dtsload dtscreate dtscheck (lower-level SQL-BackTrack programs) SQL-BackTrack Control Directory /usr/sbt/ sbackups.physical Server1 Server 2 .dtoptions sbackups.logical Server 1 DB1 Server 2 DB2 Special Recovery Situations Copying a database to a different machine / Migrating a database Object extraction from physical backups Resizing a database Generating recovery templates(Master) Agenda 資料庫的可用性 系統架構 產品功能說明 實機展示 產品比較 SQL-BackTrack for Sybase vs Competition Function SBT ASE 12.0/ 12.5 Physical database backup (full) YES YES YES Physical database backup (Incremental) YES NO NO Transaction Log Backup Automation YES Limited Limited Logical database backup YES NO NO Logical object backup YES Limited Limited ASE and extensions will only migrate data. SBT backups up table schema, dependencies, and data. (SBT unique) Logical object recovery from a physical backup YES NO NO SBT’s Logical Extraction feature can recover tables, stored procedures, triggers, etc. directly from a physical backup Unique/noteworthy feature Extensions (VERITAS & Legato) Comments SBT’s intelligent incremental backup feature writes only physical data blocks that have changed since last backup ASE and extension are limited to scripts. SBT obtains relevant logs at backup time automatically. SQL-BackTrack for Sybase vs Competition Function SBT ASE 12.0/ 12.5 Extensions (VERITAS & Legato) Recover to alternate host, database YES NO NO Dry Run Recovery YES NO NO Automation YES Limited Limited Migration YES Limited Unique/noteworthy feature Limited Comments SBT allows users to recover information to alternate locations (Powerful DR support tool) ASE automation limited to commands included in scripts created by DBA. Extensions allow ASE scripts to be scheduled for execution. SBT provides guided recovery to automate backup & recovery as well as generate scripts automatically for use in scheduler. ASE (BCP utility) and extensions will logically backup data but not schema and is limited to environments with same OS and ASE levels. SBT will migrate data between differing ASE and OS versions as well as between varying database page sizes. SQL-BackTrack for Sybase vs Competition Function SBT ASE 12.0/ 12.5 Extensions (VERITAS & Legato) Comments Master Database Recovery Template YES Limited Limited Master Database recovery is a tedious, manual process. SBT greatly simplifies process by generating template with relevant information in support of recovery. Encryption YES NO NO SBT can recover tables, stored procedures, triggers, etc. directly from a physical backup Storage Manager Integration YES NO Limited Extensions provide vendor specific support. SBT Modules provide seamless integration with IBM Tivoli Storage Manager (TSM), VERITAS NetBackup DataCenter, and Legato NetWorker Unique/noteworthy feature Questions and Discussion