Despues de un tiempo sin escribir por aqui, vuelvo a la carga, esta vez con una receta para AS/400 馃檪
Este documento explicar谩 los pasos a realizar para efectuar una copia completa del sistema de forma desatendida, utilizando la opci贸n 21 del mandato SAVE.
QUE ES LA OPCION 21 DEL MANDATO SAVE?
La opci贸n 21 del mandato SAVE, es un backup que se realiza COMPLETO del sistema. Se lleva las bibliotecas, los permisos, objetos, informaci贸n de seguridad, e incluso los datos del Sistema operativo, PTFs aplicadas, etc. Este mandato adem谩s, genera una cinta IPLable (o de arranque), de forma que ante la perdida total de datos del AS/400, el sistema permite arrancar desde la cinta y restaurar toda la informaci贸n del sistema de una vez, hasta dejar la m谩quina exactamente igual que estaba en el momento de hacer dicha copia.
Esta copia conllevaba un problema: Para que la copia fuera v谩lida, todos los subsistemas (excepto el subsistema de control o QCTL) deb铆an cerrarse para asegurar que todos los ficheros de base de datos, Journals, etc, estuvieran cerrados y evitar que gentes desde el exterior pudiera cambiar informaci贸n durante la copia y generar asi inconsistencia de datos. Por tanto, dicho comando solo pod铆a ser llamado desde una emulaci贸n 5250 conectada a la HMC o a la consola de Operaciones, o, en equipos mas antiguos, la consola f铆sica conectada al puerto Twinaxial 0. Y, obviamente, era necesario que alguien estuviera presente en dicha consola para contestar los posibles mensajes que pudieran salir durante la copia.
Como esto es un engorro y la copia puede demorarse en el tiempo, rara vez se hacen copias de seguridad de este tipo por lo que conlleva: Hay que hacerlas a deshoras y el proceso dura varias horas, dependiendo de la cantidad de datos a copiar. Pero desde hace unos a帽os, IBM ha resuelto el problema, y en esta receta voy a explicar como realizar copias de seguridad completas y desatendidas.
Para ello, debemos realizar los siguientes pasos:
CREACI脫N DEL CL QUE REALIZAR脕 LA COPIA
- El Fuente CL de copia de seguridad, podr铆a ser algo como esto:
PGM SNDMSG MSG('Parando Servidores...') TOMSGQ(*SYSOPR) ENDHOSTSVR *ALL SNDMSG MSG('Servidores Parados') TOMSGQ(*SYSOPR) SNDMSG MSG('Parando TCPIP...') TOMSGQ(*SYSOPR) ENDTCPSVR *ALL SNDMSG MSG('TCPIP Parado.') TOMSGQ(*SYSOPR) DLYJOB DLY(180) ENDTCP ENDSBS SBS(*ALL) OPTION(*IMMED) BCHTIMLMT(240) DLYJOB DLY(180) SNDMSG MSG('Inicializando Cinta...') TOMSGQ(*SYSOPR) INZTAP DEV(TAP01) NEWVOL(IBMIRD) CHECK(*NO) MONMSG MSGID(CPF0000 CPC0000 CPD0000) SNDMSG MSG('Salvando Sistema SAVSYS...') + TOMSGQ(*SYSOPR) SAVSYS DEV(TAP01) ENDOPT(*LEAVE) MONMSG MSGID(CPF0000 CPC0000 CPD0000) SNDMSG MSG('SAVSYS realizado.') TOMSGQ(*SYSOPR) SNDMSG MSG('Salvando todas las Bibliotecas...') + TOMSGQ(*SYSOPR) SAVLIB LIB(*NONSYS) DEV(TAP01) ENDOPT(*LEAVE) + ACCPTH(*YES) MONMSG MSGID(CPF0000 CPC0000 CPD0000) SNDMSG MSG('Todas las Bibliotecas salvadas.') + TOMSGQ(*SYSOPR) SNDMSG MSG('Salvando Carpetas...') TOMSGQ(*SYSOPR) SAVDLO DLO(*ALL) DEV(TAP01) ENDOPT(*LEAVE) MONMSG MSGID(CPF0000 CPC0000 CPD0000) SNDMSG MSG('Carpetas salvadas.') TOMSGQ(*SYSOPR) SNDMSG MSG('Salvando Objetos...') TOMSGQ(*SYSOPR) SAV DEV('/QSYS.LIB/TAP01.DEVD') OBJ(('/*') + ('/QSYS.LIB' *OMIT) ('/QDLS' *OMIT)) + ENDOPT(*UNLOAD) UPDHST(*YES) MONMSG MSGID(CPF0000 CPC0000 CPD0000) SNDMSG MSG('Objetos salvados.') TOMSGQ(*SYSOPR) SNDMSG MSG('Reiniciando iSeries...') TOMSGQ(*SYSOPR) PWRDWNSYS OPTION(*CNTRLD) DELAY(300) RESTART(*YES) + CONFIRM(*NO) MONMSG MSGID(CPF0000) ENDPGM
Con ese CL, Inicializar谩 la cinta y luego se mandar谩n a la cola de mensajes los diferentes inicios y finalizaciones de cada mandato para hacerse una idea del tiempo que lleva cada uno de ellos. Especial menci贸n al mandato ENDSBS SBS(*ALL) OPTION(*IMMED) BCHTIMLMT(240), ya que el sistema se pone en modo Restringido para realizar la copia, pero con un tiempo m谩ximo de 240 minutos (4 horas), de forma que si ha habido un cuelgue o un problema, nos aseguremos de que el sistema sale de dicho modo en cuanto se superen las 4 horas y no dejar el sistema indefinidamente en estado restringido.
- Compilaremos el fuente CL desde el PDM con la opci贸n 14, y el fichero objeto lo dejaremos en una biblioteca que forme parte de la lista de bibliotecas, por poner un ejemplo, con el nombre COPIA21 y lo dejaremos dentro de la biblioteca QGPL.
CREACI脫N DE LA PLANIFICACI脫N DE COPIA
Para planificar la ejecuci贸n de este CL, utilizaremos el planificador del AS/400 para tal fin. Para ello, a帽adiremos la entrada con el siguiente mandato, siendo usuario QSECOFR:
ADDJOBSCDE JOB(COPIATOTAL) CMD(CALL PGM(QGPL/COPIA21)) FRQ(*WEEKLY) SCDDATE(*NONE) SCDDAY(*SUN) SCDTIME('01:00:00') JOBQ(QSYS/QCTL)
Este mandato planifica la ejecuci贸n del CL llamado COPIA21 que hemos compilado y dejado en la QGPL, y lo ejecutar谩 los domingos a las 01:00 de la madrugada. Es MUY IMPORTANTE especificar tambi茅n la cola de trabajos donde ser谩 ejecutado, es decir, la QCTL, ya que es el 煤nico subsistema que estar谩 operativo una vez que el AS/400 haya entrado en condici贸n restringida.
Y con esta operativa, se pueden realizar las copias de seguridad completas y de forma desatendida.
NOTA: Huelga decir que la m谩quina en estado restringido no est谩 operativa salvo por un 煤nico subsistema, el QCTL, por lo tanto, no es apta para la producci贸n. Por tanto, es necesaria una ventana de parada para realizar esta operativa. En mi caso, dado que los domingos a la madrugada no se trabaja ni la web que soporta el AS/400 requiere de 24×7, cuento con una ventana de backup suficiente.
HOLA, ES LA PRIMERA VEZ QUE VISUALIZO UN VIDEO DEUSTEDES SOBRE AS/400 (El nuevo IBM Navigator for Ia fondo) ES MUY INTERESANTE Y PRACTICO.
QUIERO HACER ESTA PREGUNTA Y SABER SI TIENEN ALGUN VIDEO O TEXTO SOBRE EL SIGUIENTE TEMA:
IBM COBRA EL NUMERO DE USUARIOS QUE ACCEDEN AL AS/400 DE MANERA CONCURRENTE, MI PREGUNTA ES SI SE CONSIDERAN PARA COMPRAR LICENCIAS SOLAMENTE USUARIOS TIPO 5250 o TAMBIEN USUARIOS QUE USAN ODBC, CLIENT SOLUTIONS u OTRA INTERFASE ?
Saludos y Gracias
En principio, las conexiones ODBC y las Telnet 5250 puras -es decir, las que se accede por Mocha5250 o tn5250- no tienen l铆mite de acceso, solo aquellas conexiones que utilicen Access Client Solutions o iSeries Access son las que se cobran de forma concurrente, ya que adem谩s de esos servicios, tienen muchos otros como el Navigator, comandos remotos, conversiones de tablas a Excel, etc.
Hola…hice la prueba y el proceso me di贸 un error con el mandaro ENDSBS, me dice que el parametro *ALL no est谩 permitido en este entorno…cual ser谩 el problema???