Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Need commands to backup and save 2 LIB. ADPDATA and AVPZIP

347 views
Skip to first unread message

James Kelly

unread,
Sep 19, 2016, 9:39:49 AM9/19/16
to
I am on an AS400/Power Series7 for those that don't call it AS400 anymore but anyway

I need to back up the Libraries ADPDATA and AVPZIP because the company wants to do an update to those folders by adding files to it but as we all know you should back up

any folders or libraries before changing them so that what i need to do

I need the exact commands and whats is the best place to save these two libraries so that I can put them back if something goes wrong with the update.

Also, does anyone know if these are critical libraries to the mainframe


Buck

unread,
Sep 20, 2016, 11:33:12 AM9/20/16
to
On Monday, September 19, 2016 at 9:39:49 AM UTC-4, James2000k wrote:
> I am on an AS400/Power Series7 for those that don't call it AS400 anymore but anyway

IBM i documentation is found in the IBM i Knowledge Center. http://www.ibm.com/support/knowledgecenter/ssw_ibm_i

> I need to back up the Libraries ADPDATA and AVPZIP because the company wants to do an update to those folders by adding files to it but as we all know you should back up
>
> any folders or libraries before changing them so that what i need to do

Generally speaking, it is best practice to save libraries on a regular basis. Here, we save all user libraries every night.

> I need the exact commands

SAVLIB

> and whats is the best place to save these two libraries so that I can put them back if something goes wrong with the update.

That depends entirely on your system. You can save them to a save file if you have enough disk space, or you can save them onto a tape.

> Also, does anyone know if these are critical libraries to the mainframe

They aren't IBM supplied libraries, so they must be used for some application at your location. Perhaps your system administrator can help.
--buck

jke...@lipipe.com

unread,
Sep 20, 2016, 1:24:31 PM9/20/16
to
On Monday, September 19, 2016 at 9:39:49 AM UTC-4, James2000k wrote:
Hi Buck

Thanks for the breakdown but I need the commands as if you were at the command line

The libraries ADPDATA and AVPZIP are the 2 I want to back up. As for space, I would rather store them on the machine because they don't appear to be large files. I also want to know the steps to restore these files at a later time.

These libraries I found out are used by an outdated application and these folders need to be updated.

CRPence

unread,
Sep 20, 2016, 5:03:15 PM9/20/16
to
On 19-Sep-2016 08:39 -0600, James Kelly wrote:
> <<SNIP>> I need to back up the Libraries ADPDATA and AVPZIP because
> the company wants to do an update to those folders by adding files to
> it but as we all know you should back up any folders or libraries
> before changing them so that [ed: backup is] what I need to do.
>
> I need the exact commands

No casual reader of the topic could offer exactly what is needed in
the described situation; parties of the organization and\or with access
to the system to analyze\review the operations [e.g. B&R], objects, and
data might be able to offer something approaching worthwhile.

However, the following request(s) could be sufficient to get you
started. Notably missing, is the Device (DEV) related specifications,
but presumed as-sufficient specifications are offered in a comment at
the tail of the command string along with a prerequisite command that is
also commented and precedes the backup request:

/* CRTSAVF QGPL/SAV_ADPAVP AUT(*EXCLUDE) */

? SAVLIB LIB(ADPDATA AVPZIP) UPDHST(*NO) SAVACT(*NO)
SAVFDTA(*YES) SPLFDTA(*ALL) QDTA(*DTAQ)
PVTAUT(*YES) ACCPTH(*YES)
STG(*KEEP) DTACPR(*YES)
OMITLIB(*NONE) OMITOBJ((*NONE))
OUTPUT(*PRINT) INFTYPE(*OBJ)
/* DEV(*SAVF) SAVF(QGPL/SAV_ADPAVP) */

> and what is the best place to save these two libraries so that I can
> put them back if something goes wrong with the update. <<SNIP>>
>

The "best place" is of course subjective, but backups should be
stored off-site on external media. Presuming the recovery-point is
prior to this specific save activity and updates [i.e. there exists an
off-site backup available for recovery], then storing the libraries in a
Save File (SAVF) [as would be effected having removed the comments in
the above command requests] should be sufficient.

In the event of some failure for which /recovery/ is required, the
following scripted requests should restore the two libraries [assuming
no cross-library dependencies and pre-ordered access-paths] to a
sufficiently similar state that the applications would continue to
function without error as they had before things went "wrong":

DLTLIB LIB(ADPDATA)

DLTLIB LIB(AVPZIP)

RSTLIB SAVLIB(ADPDATA AVPZIP)
DEV(*SAVF) SAVF(QGPL/SAV_ADPAVP)
OMITLIB(*NONE) OMITOBJ((*NONE))
OPTION(*ALL) MBROPT(*ALL)
SPLFDTA(*NEW) PVTAUT(*YES)
RSTLIB(*SAVLIB) RSTASPDEV(*SAVASPDEV) RSTASP(*SAVASP)
DFRID(*DFT) ALWOBJDIF(*NONE)
OUTPUT(*PRINT) INFTYPE(*OBJ)

If there are cross-library database file dependencies, then refer to
the messages about what to do to correct the situation per the Defer ID
(DFRID) value that should be included in that messaging.

--
Regards, Chuck

jse...@yahoo.co.nz

unread,
Sep 20, 2016, 5:50:47 PM9/20/16
to
On Wednesday, 21 September 2016 05:24:31 UTC+12, jke...@lipipe.com wrote:
> On Monday, September 19, 2016 at 9:39:49 AM UTC-4, James2000k wrote:
> > I am on an AS400/Power Series7 for those that don't call it AS400 anymore but anyway
> >
> > I need to back up the Libraries ADPDATA and AVPZIP because the company wants to do an update to those folders by adding files to it but as we all know you should back up
> >
> > any folders or libraries before changing them so that what i need to do
> >
> > I need the exact commands and whats is the best place to save these two libraries so that I can put them back if something goes wrong with the update.
> >
> > Also, does anyone know if these are critical libraries to the mainframe
>
> Hi Buck
>
> Thanks for the breakdown but I need the commands as if you were at the command line

An exact command is not something we can really do without a lot more knowledge of your systems. You can prompt the SAVLIB command (by typing it on the command line and pressing F4) which will list the parameters it accepts. You can use the help function (pressing F1) to get further details of the options.

Doesn't your company peform regular backups of your systems? If not, that would be ringing severe alarm bells to me. If so, you may already have a backup you can use for a possible restore.

> The libraries ADPDATA and AVPZIP are the 2 I want to back up. As for space, I would rather store them on the machine because they don't appear to be large files. I also want to know the steps to restore these files at a later time.
>
> These libraries I found out are used by an outdated application and these folders need to be updated.

You seem to be mixing up terms here, making it a little difficult to know what you are referring to. You mention ADPDATA and AVPZIP as being libraries then later you refer to them as files. You then mention "folders". Folders would technically exist in the QDLS file system rather than the library file system and the backup details would be very different. Unless by "folders" you were referring to the unix like /Root filesystem (although directory might be a better term there), in which case the backup details would be different again.

Assuming you do mean libraries (and the other terminology is mixed up) you can back them up to disk. The easiest would probably be to use a save file (abbreviated as SAVF). You can only back up 1 library to a save file, so you would need to create 2 save files - 1 for each library.

e.g.
CRTSAVF FILE(library/savf_name)

Library would be the library you want to SAVF to reside in and savf_name is the name you'd give the SAVF (e.g. SAV_ADPDAT).

To backup the library, you'd enter something like the following (remembering you can press F4 to prompt the command and list the parameters and the library/savf_name is the SAVF you created previously):
SAVLIB LIB(ADPDATA) DEV(*SAVF) SAVF(library/savf_name) UPDHST(*NO) SAVFDTA(*YES) SPLFDTA(*ALL) QDTA(*DTAQ) PVTAUT(*YES) DTACPR(*YES)

You would repeat these steps for the other library.

To restore, you should first clear the library (or delete it). eg:
CLRLIB ADPDATA

To issue the RSTLIB command:
RSTLIB SAVLIB(ADPDATA) DEV(*SAVF) SAVF(library/savf_name) PVTAUT(*YES)

And again, repeat for the other library.

This is assuming there are no dependant files in other libraries (such as logical files), though this is not normal practice and if these are the only libraries for this product, rather unlikely.

jke...@lipipe.com

unread,
Sep 21, 2016, 9:29:25 AM9/21/16
to
Hi Chuck,

I appreciate the response and thoroughness of answer. As for the commands you listed are you typing each line one by one onto a command line or is there a way to type all this commands and then execute?
I am also thinking instead of setting it to backup to an external drive what commands can I use to just save it locally . Then when I update the 2 Libraries I can just run a command to restore the Libraries if the updates do not work.


I agree that a backup should be the external drive but the mainframe is at a remote location.


These do not appear to be System files but I am from the Windows environment

jke...@lipipe.com

unread,
Sep 21, 2016, 9:48:02 AM9/21/16
to
As for more information

It shows that ADPDATA under Library with the attribute PROD

Under Display Library Description

ASP Number 1
ASP Device *SYSBAS
ASP Group *SYSBAS
Create Authority *SYSVAL
Create object auditing *SYSVAL


For AVPZIP

It shows
AVPZIP under Library with Attribute PROD


Under Description
ASP number 1
ASP Device SYSBAS
ASP Group SYSBAS
Create Authority SYSVAL
Create object auditing SYSVAL


James K

unread,
Sep 21, 2016, 12:45:24 PM9/21/16
to
I am also able to connect to the Mainframe with iSeries navigator and wanted to know would I be able to access these libraries from that program and could i just copy and paste files back into the Library

CRPence

unread,
Sep 21, 2016, 12:54:52 PM9/21/16
to
On 21-Sep-2016 08:29 -0600, jke...@lipipe.com wrote:
> I appreciate the response and thoroughness of answer.

The reply by jsev99 points out a flaw in the commands I gave in which
I allude to the possible use of a save file. Originally I had composed
the save request for use without save files [for which they should work
as shown, given a proper Device (DEV) specification]. But that backup
request is not as easily converted to use with a save file, as is
implied by my suggestion of just un-commenting; i.e. merely adding the
noted DEV() and SAVF() parameter specifications is not sufficient, due
to the limitation of "back up 1 library to a save file", because the
request would error per the restriction with msg CPF3789 "Only one
library allowed with specified parameters." Thus, I give a revised
version below:

The backup [to local DASD\storage] phase:

CRTSAVF QGPL/SV_ADPDATA AUT(*EXCLUDE)
TEXT('SAVLIB LIB(ADPDATA)')

CRTSAVF QGPL/SV_AVPZIP AUT(*EXCLUDE)
TEXT('SAVLIB LIB(AVPZIP )')

SAVLIB LIB(ADPDATA ) UPDHST(*NO) SAVACT(*NO)
SAVFDTA(*YES) SPLFDTA(*ALL) QDTA(*DTAQ)
PVTAUT(*YES) ACCPTH(*YES)
STG(*KEEP) DTACPR(*YES)
OMITLIB(*NONE) OMITOBJ((*NONE))
OUTPUT(*PRINT) INFTYPE(*OBJ)
DEV(*SAVF) SAVF(QGPL/SV_ADPDATA)

SAVLIB LIB( AVPZIP ) UPDHST(*NO) SAVACT(*NO)
SAVFDTA(*YES) SPLFDTA(*ALL) QDTA(*DTAQ)
PVTAUT(*YES) ACCPTH(*YES)
STG(*KEEP) DTACPR(*YES)
OMITLIB(*NONE) OMITOBJ((*NONE))
OUTPUT(*PRINT) INFTYPE(*OBJ)
DEV(*SAVF) SAVF(QGPL/SV_AVPZIP)

The recovery phase [refer to prior response for additional commentary]:

DLTLIB LIB(ADPDATA)

DLTLIB LIB(AVPZIP )

RSTLIB SAVLIB(ADPDATA )
DEV(*SAVF) SAVF(QGPL/SV_ADPDATA)
OMITLIB(*NONE) OMITOBJ((*NONE))
OPTION(*ALL) MBROPT(*ALL)
SPLFDTA(*NEW) PVTAUT(*YES)
RSTLIB(*SAVLIB) RSTASPDEV(*SAVASPDEV) RSTASP(*SAVASP)
DFRID(*DFT) ALWOBJDIF(*NONE)
OUTPUT(*PRINT) INFTYPE(*OBJ)

RSTLIB SAVLIB( AVPZIP )
DEV(*SAVF) SAVF(QGPL/SV_AVPZIP)
OMITLIB(*NONE) OMITOBJ((*NONE))
OPTION(*ALL) MBROPT(*ALL)
SPLFDTA(*NEW) PVTAUT(*YES)
RSTLIB(*SAVLIB) RSTASPDEV(*SAVASPDEV) RSTASP(*SAVASP)
DFRID(*DFT) ALWOBJDIF(*NONE)
OUTPUT(*PRINT) INFTYPE(*OBJ)

After recovery is verified, consider what to do with the backup made
to disk; e.g. perhaps the following cleanup:

DLTF QGPL/SV_ADPDATA

DLTF QGPL/SV_AVPZIP

>
> As for the commands you listed, are you typing each line one by one
> onto a command line

That is how they are presented; as an interactive script of
successive requests to be issued on\at a command-line.

> or is there a way to type all this commands and then execute?

The requests can be typed\stored elsewhere from which they can later
be executed, but that would likely be a much longer discussion. Also,
for the layperson, there are complications to be overcome [especially
for save\restore] whereby there may be /errors/ for which [re]actions
are not as easily coded as they are handled by actual review of the
issuer of the commands; decisions on whether or how to re-issue the
commands is not something a novice would want to undertake without
direct review of the result from each request.

The requests could be coded in a file [a source member] that either
could be interpreted CL or compiled CL [into a CL Program (CLP) or an
ILE CL Program (CLLE)]. The system offers REXX that enables the
double-quote delimited commands to be interpreted directly, or the CL
stream job [e.g. Submit Database Job (SBMDBJOB)] to process the requests
when coded with appropriate line-continuation and encapsulated in
//BCHJOB and //ENDBCHJOB control specifications [like mainframe job
control statements].

>
> I am also thinking instead of setting it to backup to an external
> drive what commands can I use to just save it locally.

Without any punctuation within, and ending with a period vs a
question mark [per "can I" vs /I can/], I am unsure how to interpret
what is stated [¿or inquired?] above; also unsure, if "external drive"
implies /remote media/ or external media [by which I mean physical
storage other than internal DASD]. Nonetheless:

Saving to external media [vs save file] would allow specifying both
libraries on just the one Save Library (SAVLIB) command.

>
> Then when I update the 2 Libraries I can just run a command to
> restore the Libraries if the updates do not work.

And having saved to external media would allow specifying both
libraries on just the one Restore Library (RSTLIB) command.

>
> I agree that a backup should be the external drive but the mainframe
> is at a remote location.

FWiW: The AS/400 was often called a mini-computer in its earliest
incarnation, though long [since] categorized as a /midrange/ system,
situated somewhere between the mini and the mainframe; the IBM Power
Systems are not the same as the IBM Mainframe was, and I presume the
mainframes are still not [solely] Power architecture, even if they might
have integrated some Power chips.

I infer the IBM i is being referred to, above, as the "mainframe"?
And if so, after a backup is made, the [binary\image] of the data can be
copied elsewhere [e.g. off-site to other media, including DASD on
another system including a PC]; i.e. the system being in a /remote/
location is limited only by the bandwidth for copying the data to any
other location(s).

--
Regards, Chuck

CRPence

unread,
Sep 21, 2016, 1:06:18 PM9/21/16
to
On 21-Sep-2016 11:45 -0600, James K wrote:
> I am also able to connect to the Mainframe with iSeries navigator and
> wanted to know would I be able to access these libraries from that
> program and could i just copy and paste files back into the Library

That comment clarifies the reference to the IBM i as /the Mainframe/
[and for which I suggested the IBM i is not a mainframe; the system is
either an IBM Power System or some prior iteration, so reference to the
system by the OS name is often the cleanest\clearest, just as with PCs
there is generally little value in knowing what hardware is behind
the\which OS being used].

The IBM i is object-based such that unlike many other OS, *not*
/everything is a file/; the *data* can be copied betwixt heterogeneous
systems, but not the *objects*. The objects [and\with data] are best
/saved/ from which they can be restored, unless all that is required is
a backup of the data -- noting that /data/ may or may not imply physical
order and relative record number (RRN) for which data-only copies are
generally not a viable replacement for object-save.

--
Regards, Chuck

James K

unread,
Sep 21, 2016, 1:08:29 PM9/21/16
to
The software is called IBM System i Navigator version 7 rel 1

James K

unread,
Sep 21, 2016, 1:29:52 PM9/21/16
to
It is a iSeries Power 7

James K

unread,
Sep 21, 2016, 3:26:21 PM9/21/16
to
Is it possible to do any updates of these two libraries using this software?

I can access the Libraries from the i Navigator program and I also have installed IBM i access for Windows with the Data transfer to IBM

I know we are working with the commands for the black and green screens but maybe this is an option as well.

Buck

unread,
Sep 22, 2016, 7:17:55 AM9/22/16
to
On Monday, September 19, 2016 at 9:39:49 AM UTC-4, James2000k wrote:
> Thanks for the breakdown but I need the commands as if you were at the command line

Despite the first line of the original post, it doesn't seem as though you are at all familiar with the operating system. That's no criticism: we all were there at some point!

Chuck gave you a very good starting place for a script to save those libraries. You will need to customise it for your system. In addition, you will need to have the proper authority to save and restore these libraries. Also, you'll need to have exclusive access to the libraries, meaning the users will need to be out of the application. When Chuck speaks of cross-library dependencies, he means that some programmer has created a view in BUCKLIB that refers to a table in ADPDATA. Or that a view in ADPDATA points to a table in AVPZIP, so that restoring ADPDATA will fail if it is done before AVPZIP. The point being that you can be saving ADPDATA but there are still other objects on the system which should be saved at the same time, in order to 'synch up' all of the objects which make up the entire application.

> The libraries ADPDATA and AVPZIP are the 2 I want to back up. As for space, I would rather store them on the machine because they don't appear to be large files.

This doesn't pass the sniff test. How did you determine the sizes of these libraries? Of course I can't tell what those libraries are for, but it is my experience that most 'data' libraries contain lots of... well, data.

> I also want to know the steps to restore these files at a later time.

Chuck described RSTLIB that will be a good basis for your script. Again, you will need authority to delete and restore those libraries -- this might be different to the authority needed to save them! Test your ability to restore by restoring to a new library... RSTLIB(JAMESADP) or something like that. Again, you will need exclusive access to the libraries.

> These libraries I found out are used by an outdated application and these folders need to be updated.

Very generally speaking, when a vendor sends updates, they also send a list of prerequisites. Instructions for things that need to happen before the update is done. If the vendor did not send one, I'd call them and make sure they didn't omit it. At the very least, calling them will get you in touch with their support desk; these are the people who will be able to give you good advice on specifics for their application. Better than a mailing list anyway.

Also, definitely check with your system admin / operations staff to make sure these libraries are part of the backup strategy. There's nothing worse than updating vendor software and not saving the application after it's been updated :-(

Good luck!
--buck

James K

unread,
Sep 22, 2016, 7:43:05 AM9/22/16
to

Thank's Buck, I appreciate you seeing that I am not a pro on this machine and I was sought of thrown into this. However, I will make the best of it. So just recapping what you said and you stated that the vendor has to give a prerequisite list of what needs to be done to the system before the update? If I ask them for this will they know what I am requesting from them and if not how do I reply in detail what I need from them?

As for checking my authority to RSTLIB are you saying create a library then delete it then run this RSTLIB command?


I really need a plan how to tackle this update.

CRPence

unread,
Sep 22, 2016, 11:27:22 AM9/22/16
to
On 22-Sep-2016 06:43 -0600, James K wrote:
> On 22-Sep-2016 06:17 -0600, Buck wrote:
>> On Monday, 19-Sep-2016 at 09:39:49 UTC-4, James2000k wrote:
>>> […] I also want to know the steps to restore these files at a
>>> later time.
>> Chuck described RSTLIB that will be a good basis for your script.
>> Again, you will need authority to delete and restore those
>> libraries -- this might be different to the authority needed to
>> save them! Test your ability to restore by restoring to a new
>> library... RSTLIB(JAMESADP) or something like that. Again, you
>> will need exclusive access to the libraries.
>> […]
>>
> […]
> As for checking my authority to RSTLIB are you saying create a
> library then delete it then run this RSTLIB command?
> […]

Following the same "backup" instructions from
[https://groups.google.com/d/msg/comp.sys.ibm.as400.misc/uXoge9etT1w/HuWSFCJFBAAJ],
the following scripted actions could be performed instead of the
"recovery phase". These actions could serve as an effective
test-script, with regard to the authority to effect the actions, but
would not be a generally-valid test for the other effects of the
restore; potentially, numerous /errors/ may be seen in such restores to
an alternate library name onto the same system\partition into the same
ASP, though most of those errors could be quite innocuous, and other
messages might suggest difficulties the actual restore-for-recovery
might exhibit:

DLTLIB LIB(JAMESADP) /* Destructive! CPF2110 expected */

DLTLIB LIB(JAMESAVP) /* Destructive! CPF2110 expected */

RSTLIB SAVLIB(ADPDATA ) RSTLIB(JAMESADP)
DEV(*SAVF) SAVF(QGPL/SV_ADPDATA)
OMITLIB(*NONE) OMITOBJ((*NONE))
OPTION(*ALL) MBROPT(*ALL)
SPLFDTA(*NEW) PVTAUT(*YES)
RSTLIB(*SAVLIB) RSTASPDEV(*SAVASPDEV) RSTASP(*SAVASP)
DFRID(*DFT) ALWOBJDIF(*NONE)
OUTPUT(*PRINT) INFTYPE(*OBJ)

RSTLIB SAVLIB( AVPZIP ) RSTLIB(JAMESAVP)
DEV(*SAVF) SAVF(QGPL/SV_AVPZIP)
OMITLIB(*NONE) OMITOBJ((*NONE))
OPTION(*ALL) MBROPT(*ALL)
SPLFDTA(*NEW) PVTAUT(*YES)
RSTLIB(*SAVLIB) RSTASPDEV(*SAVASPDEV) RSTASP(*SAVASP)
DFRID(*DFT) ALWOBJDIF(*NONE)
OUTPUT(*PRINT) INFTYPE(*OBJ)

Note: Effectively, the sole change to the above RSTLIB commands was
the addition of the RSTLIB() parameter\specification to cause the
restored library to a new\alternate library name.

The next step, after such a test [and after review of errors in the
test] would be to cleanup the effects from that test-case; best to
review the spooled QPJOBLOG for any "Escape" messages since\after the
first DLTLIB, as there should be none -- for which several additions are
made to what otherwise would be the simplest of scripts with *just* the
two Delete Library (DLTLIB) requests:

CHGJOB LOG(4 0 *SECLVL)

OVRPRTF QPJOBLOG SPOOL(*YES) HOLD(*YES) OVRSCOPE(*JOB)

DLTLIB LIB(JAMESADP) /* Destructive! CPC2194 expected */

DLTLIB LIB(JAMESAVP) /* Destructive! CPC2194 expected */

DSPJOBLOG OUTPUT(*PRINT)

DLTOVR QPJOBLOG LVL(*JOB)

DSPSPLF QPJOBLOG SPLNBR(*LAST)

P.S. The authority to effect the Save Library (SAVLIB) work requires
only that the user profile has the Special Authority (SPCAUT) of
*SAVSYSJ; i.e. the output from the request to "DSPUSRPRF
Your_User_Profile_Name" should show the token "*SAVSYS" as the one, or
one of, the "Special Authority" attribute(s).

P.P.S. The authority to effect the Restore Library (RSTLIB) work may
require additionally, the "*ALLOBJ" special authority; i.e. some errors
logged during restore may indicate that, although the restore was able
to complete, some object-attributes changed during restore might have
rendered the application unusable -- and some system value settings may
have a similar effect, irrespective the [special] authorities of the
user performing the restore.

--
Regards, Chuck

James K

unread,
Sep 22, 2016, 11:56:03 AM9/22/16
to
I am able to log into system as QSECOFR

Buck

unread,
Sep 22, 2016, 12:21:20 PM9/22/16
to
On Thursday, September 22, 2016 at 7:43:05 AM UTC-4, James K wrote:
> Thank's Buck, I appreciate you seeing that I am not a pro on this machine and I was sought of thrown into this. However, I will make the best of it. So just recapping what you said and you stated that the vendor has to give a prerequisite list of what needs to be done to the system before the update? If I ask them for this will they know what I am requesting from them and if not how do I reply in detail what I need from them?

You ought to have a 'to-do' list from the vendor. That list would describe the state the system needs to be in before the update (something like IBM i ver 7.1, cume C5310710, PTF SF58100 applied) as well as a list of steps to perform the update. Most vendors will describe the libraries which will be affected - this list is where your pair of libraries should have come from.

> As for checking my authority to RSTLIB are you saying create a library then delete it then run this RSTLIB command?

Chuck beat me to it, but no, I was suggesting that you could save these libraries and then restore them back to the same system under other names.

> I really need a plan how to tackle this update.

Someone should have already supplied you with that plan. How did you find out what libraries you need to save? Someone must have got this process started...
--buck

James K

unread,
Sep 22, 2016, 2:46:34 PM9/22/16
to
Chuck you are saying save the libraries and then restore them back to the same system under other names? If so how would you go about doing that? because that might come in handy on an option of what can be done.

As for now i basically need to with a game plan. So let's say the vendor is telling you guys for example that they want you to back up those two libraries but it is unclear what impact it will have on your system when they update the libraries. What would you say to the vendor?

James K

unread,
Sep 22, 2016, 2:48:14 PM9/22/16
to
Also, would you request the vendor assist with the backing up and recovery of the libraries they want you to backup?

CRPence

unread,
Sep 22, 2016, 4:14:20 PM9/22/16
to
On 22-Sep-2016 13:46 -0600, James K wrote:
> Chuck you are saying save the libraries and then restore them back
> to the same system under other names? If so how would you go about
> doing that? because that might come in handy on an option of what can
> be done.

Indeed I am suggesting [per Buck's proposal] how the backed-up
libraries can be restored, to effect a limited test. A test that was
noted however, to be mostly about testing the authority to complete the
restore, albeit possibly also able to reveal other issues like
cross-library dependencies with object(s) in the library; that was
offered in the message:
[https://groups.google.com/d/msg/comp.sys.ibm.as400.misc/uXoge9etT1w/dswYzssOAAAJ]

Of course with another followup reply alluding the user QSECOFR would
be used, the value of the test for authority should be invalidated; i.e.
only *other* possible issues with the restore might be discovered using
that script to test the restore. And per restore to another name vs the
original name, such a test is not a valid [though limited effect]
Disaster Recovery (DR) scenario, of which a product-reset to be
performed after a failed upgrade would /need/ to mimic; such reversion
of software [though mostly data] is atypically able to be achieved
without an effect /scratch-restore/ of all of the components [data and
code] of the feature, in a manner that mimics a DR for the objects of
the product.

>
> As for now, I basically need to [ed: come up] with a game plan. So
> let's say the vendor is telling you guys for example that they want
> you to back up those two libraries but it is unclear what impact it
> will have on your system when they update the libraries. What would
> you say to the vendor?
>> Also, would you request the vendor assist with the backing up and
>> recovery of the libraries they want you to backup?

Personally, both as an experienced user and as a service provider, I
would deem such assistance as /usage/ vs /defect/. As the latter, I
would expect to offer such support only with an additional contract or
under an original contract that includes such a level of non-defect
support. As the former, I know that I can make a full system backup and
be prepared for a full system reversion if necessary; not ideal, but I
expect that the sfw vendor has already had successful upgrades with what
they have given me, so I would not be overly concerned that a
scratch-install back to pre-update would be required, as I would expect
more likely I would pursue fixing whatever problem(s) were encountered
to move forward, rather than defaulting to trying to back-out and
further delay the inevitable future attempt to move forward.

But I suppose as a[n inexperienced] user, *if* the docs [esp. the
docs ¿for what is an apparent upgrade?] for the software product had
included insufficient details about what constitutes /the product/, thus
lacking explicit mention of what needs to be backed-up to enable a
recovery of their software outside of normal B&R [e.g. as specifically
might be appropriate action for taking a backup before an upgrade, in
the unfortunate and hopefully unlikely even that the upgrade does not go
smoothly or the updated software is no longer usable\functional], *then*
I might push for support as defect under the auspices of their offered
docs, per my suggesting that their docs were deficient. If their docs
mention only those two libraries, then I might expect that standard
Backup&Recovery processes should be sufficient to prepare for the
upgrade; although possibly still worry that there may be more that must
be saved for backup and restored for a proper reset, just because I
/know/ from experience that docs often overlook\gloss-over much more
than the actual code does.

--
Regards, Chuck

Buck

unread,
Sep 22, 2016, 5:49:40 PM9/22/16
to
On Thursday, September 22, 2016 at 2:46:34 PM UTC-4, James K wrote:

> As for now i basically need to with a game plan.

I have almost 40 years in midrange computing. If all I had to go on is what you've shared, I would be very uncomfortable. I can't imagine how you feel. Seriously, if your boss can't give you clear instructions, call the vendor and see what help (if any) they can offer you regarding the upgrade.

I'd be looking for a 'What's New' document, and a 'How to upgrade' document. These may be on their web site.
--buck

James K

unread,
Sep 23, 2016, 8:11:19 AM9/23/16
to
I agree with both of you although Chucks's explanation may take a little more time to mentally digest. I am asking questions now about the backups at my company and asked if the system is backed up in addition to those libraries I am backing up.

My question to you guys is have you ever heard of this mainframe being backed up to a cloud and if so can a full system recovery be performed from a cloud?

Buck

unread,
Sep 23, 2016, 2:54:13 PM9/23/16
to
On Friday, September 23, 2016 at 8:11:19 AM UTC-4, James K wrote:
> My question to you guys is have you ever heard of this mainframe being backed up to a cloud and if so can a full system recovery be performed from a cloud?

Give Pete Massiello a call http://www.itechsol.com/solutions/
I don't do cloud backup, but I am a happy customer of other services they offer.

There are other vendors who offer cloud backup / restore services as well, but I don't have a list handy. I do have one suggestion though. Don't refer to IBM i as a mainframe with a vendor. If a vendor hears you say 'mainframe', they (reasonably enough) assume that you have a mainframe shop's budget -- a very large budget -- and will, ahem, adjust their pricing according to what they expect you are therefore willing to pay.
--buck

James K

unread,
Sep 26, 2016, 7:22:26 AM9/26/16
to
Ok that's true ..i guess we have to call it midrange

Out of curiosity if you don't do a full system backup and had to select the main libraries to back up than which ones would they be.

Buck

unread,
Sep 27, 2016, 8:41:07 AM9/27/16
to
On Monday, September 26, 2016 at 7:22:26 AM UTC-4, James K wrote:
> Out of curiosity if you don't do a full system backup and had to select the main libraries to back up than which ones would they be.

I had a boss who asked me a similar question years ago. His motivation then was a combination of saving tapes and time; the system needed to have all users kicked off in order to save all the libraries at the same checkpoint. This was before save-while-active was available. My response was to ask him to choose which of his hands and feet he'd like to keep in case of a car accident. Choose them now, because once the accident happens, it's too late to go back and protect the ones you want to keep.

That's overly dramatic perhaps, but it's a good place to start the discussion. The general line of thought goes like this:
If a library has no purpose, why is it on your system?
If a library is archival data, and never changes, then save a copy to tape and you don't need to back that library up daily.
If a library changes daily, it should be saved daily.
Unless.
Unless it's a program library, and a handful of source members and program objects change out of thousands of objects in the library. If that's the case, then you can consider saving only changed objects.
The system libraries should be saved after PTFs are applied.

The more complicated you make your save scenarios, the more complicated you make your restore scenarios. You will need very good documentation - documentation that only you can make, after all it's your system! - documenting what is saved, when, where the tapes are kept, and how to restore the various pieces. Order of operations is crucial.

This monologue is intended to give you a little vocabulary, start a little thought, and most importantly, direct you to the Backup & Recovery manual at the Knowledge Center. Don't cobble together some weird 'save this, save that, whatever' methodology. My predecessor claimed to have perfect backups, so I told him that we'd test it by pulling the disks out of the rack, swapping them all around and reloading the system from bare metal.

It turned out he really wasn't that confident. And rightly so, as there are components of the system and applications which don't reside in a library. Some things live in the IFS, some live deep in system storage, dealt with via PTF.

You'll know your backup strategy is god if you can rent a machine for a day and restore your system to that machine from your backups.

Don't improvise.

Read the book.
--buck

James K

unread,
Sep 27, 2016, 9:20:08 AM9/27/16
to
I agree and didn't really expect you to agree with the ennie meenie miney moe concept and I in the end pushed you to give me the gritty truth of why i shouldnt go that route. So thank you

James K

unread,
Sep 28, 2016, 2:36:00 PM9/28/16
to
---

I do want to know what commands are typed to restore from backup?

Jonathan Bailey

unread,
Sep 29, 2016, 8:03:50 AM9/29/16
to
There is already a reply from the 20th with the RSTLIB command. You will want to experiment with the RSTLIB(xxx) keyword to avoid overwriting the live library with your test restore i.e. add RSTLIB(xxx) to the end of the command provided before pressing F4. Also see the RSTOBJ command, which can pull individual items from the same save data. Again specify RSTLIB(xxx).

Try keying sav* and pressing enter, or rst* & pressing enter.
Then enter 1 against anything which takes your fancy. Once you have the command prompted press F9 to see all the options - you might see why people here cant give definitive answers in less than 100 words.
You don't need to restrict yourself to 3 letters try d* & experience a whole world of delete & display commands along with a few others.

HTH
Jonathan

James K

unread,
Sep 29, 2016, 10:51:18 AM9/29/16
to
Ok thanks Jonathan

Out of curiousity what kind of programmer or what code is used on these midrange devices so you can create these programs and run batches etc

CRPence

unread,
Sep 29, 2016, 2:46:32 PM9/29/16
to
On 29-Sep-2016 09:51 -0500, James K wrote:
> <<SNIP>> what code is used on these midrange devices so you can
> create these programs and run batches etc

With the IBM i OS running on an IBM Power server [the so-called
midrange], there is a Control Language (CL) for which objects of the
type Command (*CMD) serve as the syntax for each CL *statement* within a
CL program. An effective script of such statements [including the
ability to code variables plus logical flow such as loops and error
handling] can be compiled as an executable object; e.g. see the Create
CL Program (CRTCLPGM) command. The CL Program source begins with the
non-executable command PGM, and ends with the non-executable command ENDPGM:

PGM
/* CL statements go here; a line-continuation char is +
required to indicate a flow onto the next line */
ENDPGM

Alternatively a script of commands can be interpreted; e.g. as occurs
when they are typed into the Command Entry or any similar Command-Line
Entry area. Most commonly the scripted CL commands are a CL /stream
job/ activated with the BCHJOB command as a control statement preceded
by two consecutive slash characters and terminated similarly with the
ENDBCHJOB command:

//BCHJOB
/* CL statements go here; a line-continuation char is +
required to indicate a flow onto the next line */
//ENDBCHJOB

--
Regards, Chuck

James K

unread,
Oct 5, 2016, 6:35:32 PM10/5/16
to
Any of you guys on tonight

CRPence

unread,
Oct 5, 2016, 8:53:06 PM10/5/16
to
On 05-Oct-2016 17:35 -0500, James K wrote:
> Any of you guys on tonight

Have been, but just now noticed the post; I do not use a feed. I
just check for messages when I feel like it. Probably better to have
just posted whatever was the question, such that this reply might have
been all that was needed.

--
Regards, Chuck

James K

unread,
Oct 7, 2016, 10:10:23 AM10/7/16
to
Well guys..I performed the update and it went ok

There was a few issues with few files in reference to buffer lengths but the update was successful

Now i need to know what CL to study and how to start to Master this box because
i do not like being in dark with that type of machine

Buck

unread,
Oct 8, 2016, 3:14:15 PM10/8/16
to
On Friday, October 7, 2016 at 10:10:23 AM UTC-4, James K wrote:
> Now i need to know what CL to study and how to start to Master this box because
> i do not like being in dark with that type of machine

You might want to start a new thread so that future searchers will be able to learn how you began your education. They probably won't look in a post about saving libraries :-)

In your new thread, share with us what your role is / will be.
Operator?
System admin?
Programmer?
Part time / full time?

Once again, I would encourage you to use and bookmark the IBM Knowledge Center https://www.ibm.com/support/knowledgecenter/ssw_ibm_i That's where most of the documentation for the system will be founf.
--buck

James K

unread,
Oct 10, 2016, 3:52:28 PM10/10/16
to
Newbie with drive to become the best

James K

unread,
Oct 10, 2016, 3:53:36 PM10/10/16
to
On Saturday, October 8, 2016 at 3:14:15 PM UTC-4, Buck wrote:
but if we must choose i would say Operator/Administrator and i want to get into the basics of CL language

James K

unread,
Oct 11, 2016, 9:10:28 AM10/11/16
to
I ran the command GO LICPGM, select option 10, and press F11 to view release info and it shows V7R1M0 L00
0 new messages