Backing up and restoring data on AS/400 (IBM i) is essential for system recovery, disaster preparedness, and maintaining business continuity. Below are the key methods, commands, and best practices for backup and restore operations.
IBM i provides various SAV*
commands to back up different objects:
Command | Purpose |
---|---|
SAVLIB |
Saves a library (including objects and data) |
SAVOBJ |
Saves a specific object (e.g., files, programs) |
SAVDLO |
Saves documents and folders |
SAVCFG |
Saves system configuration |
SAVSYS |
Saves entire system (Licensed Internal Code, QSYS library, OS, and user profiles) |
SAVSECDTA |
Saves security data (user profiles, authorization lists, passwords, etc.) |
SAVCHGOBJ |
Saves only changed objects since last backup |
IBM i provides the GO SAVE menu for automated backup operations.
Command :
GO SAVE
SAVLIB LIB(MYLIB) DEV(TAP01) SAVACT(*YES)
SAVACT(*YES)
allows saving active objects.SAVOBJ OBJ(MYFILE) LIB(MYLIB) DEV(*SAVF) SAVF(MYLIB/MYBACKUP)
SAVSECDTA DEV(TAP01)
SAVCFG DEV(TAP01)
SAVCHGOBJ OBJ(*ALL) LIB(MYLIB) DEV(TAP01) REFERENCE(*LIB)
IBM i provides various RST*
commands for restoring data:
Command | Purpose |
---|---|
RSTLIB |
Restores an entire library |
RSTOBJ |
Restores specific objects |
RSTUSRPRF |
Restores user profiles |
RSTCFG |
Restores system configurations |
RSTSYS |
Restores the entire system (from SAVSYS backup) |
RSTLIB LIB(MYLIB) DEV(TAP01) MBROPT(*ALL) ALWOBJDIF(*ALL)
MBROPT(*ALL)
: Restores all members of files.ALWOBJDIF(*ALL)
: Allows restoring even if object differences exist.RSTOBJ OBJ(MYFILE) LIB(MYLIB) DEV(*SAVF) SAVF(MYLIB/MYBACKUP)
RSTUSRPRF DEV(TAP01) USRPRF(*ALL)
RSTCFG OBJ(*ALL) DEV(TAP01) OBJTYPE(*ALL)
RSTSYS DEV(TAP01)
Instead of using tapes, backups can be stored in a save file (SAVF) on disk.
CRTSAVF FILE(MYLIB/MYBACKUP)
SAVLIB LIB(MYLIB) DEV(*SAVF) SAVF(MYLIB/MYBACKUP)
RSTLIB LIB(MYLIB) DEV(*SAVF) SAVF(MYLIB/MYBACKUP)
IBM i allows scheduling backups using job scheduler (WRKJOBSCDE).
ADDJOBSCDE JOB(BACKUP) CMD(SAVLIB LIB(MYLIB) DEV(TAP01))
FRQ(*DAILY) SCDTIME(230000)
* Perform regular full backups (SAVSYS, SAVLIB, SAVSECDTA, SAVCFG).
* Use Save Files (SAVF) for faster, disk-based backups.
* Schedule incremental backups (SAVCHGOBJ) to save only changed objects.
* Verify backups using DSPTAP (Display Tape Contents).
* Perform test restores to ensure backup integrity.
* Store backups offsite for disaster recovery.
* Monitor backup jobs using WRKACTJOB.
DSPTAP DEV(TAP01) DATA(*SAVRST)
DSPLOG PERIOD((*AVAIL *CURRENT))
Task | Backup Command | Restore Command |
---|---|---|
Entire Library | SAVLIB LIB(MYLIB) DEV(TAP01) |
RSTLIB LIB(MYLIB) DEV(TAP01) |
Specific Object | SAVOBJ OBJ(MYFILE) LIB(MYLIB) DEV(*SAVF) |
RSTOBJ OBJ(MYFILE) LIB(MYLIB) DEV(*SAVF) |
User Profiles | SAVSECDTA DEV(TAP01) |
RSTUSRPRF DEV(TAP01) USRPRF(*ALL) |
System Configuration | SAVCFG DEV(TAP01) |
RSTCFG DEV(TAP01) OBJ(*ALL) |
Entire System | SAVSYS DEV(TAP01) |
RSTSYS DEV(TAP01) |