On parle souvent de Sauvegarde 21 à cause de l’option du menu qui servait à le lancer historiquement
Cette sauvegarde nécessite d’être en mode restreint
Voici comment passer dans ce mode sans vous signer sur la console
On peut passer en mode restreint grâce au paramètre BCHTIMLMT de la commande ENDSBS
Pour passer en mode restreint, vous devez indiquer la durée en minutes avant redémarrage !
ENDSBS SBS(ALL) OPTION(IMMED) BCHTIMLMT(240)
Ici au bout de 3 Heures, le système se relancera de lui même en interrompant votre sauvegarde si besoin.
Par contre si votre sauvegarde se termine votre système redémarrera de suite grâce à la commande STRSBS SBSD(QCTL)
Si votre sous système de contrôle est qctl
Pour estimer votre temps de sauvegarde regarder la sauvegarde précédente.
Si vous n’avez pas de référence mettez 480 soit 8 heures lancer votre sauvegarde un weekend ajustez ensuite le temps avec les chiffres constatés, prenez toujours un peu de marge !
Pour la liste des éléments à sauvegarder voir le schéma ci dessous extrait de la documentation IBM
Quelle est la bonne fréquence pour faire une sav21
Si vous pouvez en faire une tous les soirs faites le !
Sinon un fois par mois semble être le minimum, même si vous avez du backup !
Ci joint un exemple à améliorer en ajoutant des contrôles d’erreur par exemple !
PGM parm(&dev &time)
dcl &dev *char 10
dcl &time *char 3
/**/
dcl &timn *dec 3
ENDHOSTSVR *ALL
ENDTCPSVR *ALL
DLYJOB DLY(300)
ENDTCP
ENDSBS SBS(ALL) OPTION(IMMED) BCHTIMLMT(&timn)
DLYJOB DLY(180)
SAVSYS DEV(&DEV) DTACPR(YES)
MONMSG MSGID(CPF0000) EXEC(DO)
SNDUSRMSG MSG(‘Probléme pendant le SAVSYS’) +
MSGTYPE(INFO)
return
enddo
SAVLIB LIB(NONSYS) DEV(&DEV) ACCPTH(YES) +
SPLFDTA(ALL) QDTA(DTAQ) PVTAUT(YES) +
DTACPR(YES)
MONMSG MSGID(CPF0000) EXEC(DO)
SNDUSRMSG MSG(‘Probléme pendant le SAVLIB’) +
MSGTYPE(INFO)
return
enddo
SAVDLO DLO(ALL) DEV(&DEV) DTACPR(YES)
MONMSG MSGID(CPF0000) EXEC(DO)
SNDUSRMSG MSG(‘Probléme pendant le SAVDLO’) +
MSGTYPE(INFO)
return
enddo
SAV DEV((‘/QSYS.LIB/’ *TCAT &DEV *TCAT ‘.DEVD’)) +
OBJ((‘/*’) (‘/QSYS.LIB’ *OMIT) (‘/QDLS’ +
OMIT)) UPDHST(YES) DTACPR(YES)
MONMSG MSGID(CPF0000) EXEC(DO)
SNDUSRMSG MSG(‘Probléme pendant le SAVIFS’) +
MSGTYPE(INFO)
return
enddo
STRSBS SBSD(QCTL)
ENPPGM
Remarque :
Votre programme devra être placé dans le sous système QCTL
Si vous utilisez BRMS la procédure diffère un peu , surtout pour la restauration