Update: You may find a more current version of this article in the PS Corner Wiki.
One of the most common tasks of a PeopleSoft administrator or DBA is to clone a development or test database from a production database. I just wanted to take a minute to lay out the steps you'll want to consider when refreshing PeopleSoft databases that are running PeopleTools 8.4x.
I'm sure this list isn't complete for every installation and it can certainly be improved. Please let me know if you see something that I missed, or if you have a suggestion to improve the process.
For purposes of discussion, the source database will be production, and the target database will be the dev/test database that you're overlaying.
1) Export any security that you need to preserve from the target database to a flat file. Data Mover is a nice tool to use for this since you can qualify each table with a list of operator ID's to export. The tables you should consider exporting for specific users are
2) Stop the target application environment, including application servers and process schedulers. Stopping the web server is optional since it doesn't connect directly to the database. Be sure to clear cache.
3) Overlay the target database with a recent backup of the Production database. The exact process will differ for your database platform, but your DBA should be able to do this with minimal direction.
4) After the database comes back on-line, set DBNAME in PSDBOWNER back to the target database name.
5) Set GUID to ' ' in the PSOPTIONS table. This will cause PeopleSoft to generate a new GUID so that change assistant can track it separately from the source database.
6) Delete the data from the reporting tables, process scheduler tables and application messaging tables since this data isn't relevant in the target database. Run prcsclr.dms, rptclr.dms and appmsgpurgeall.dms. In addition, I also delete from the report manager tables
7) If you have a script to reset everyone's e-mail address to a pre-defined value so that workflow messages from the Test environment don't get sent to real users, run it now. It should update the PSUSEREMAIL and PS_ROLEXLATOPR tables.
8) Log on to the target database with data mover and run the following command to set the SYSADM password and any other back to it's pre-refreshed value:
DBRefresh.DMS is an example data mover script that performs steps 5-8.
9) Import the security that you exported in step 1.
10) While you're in data mover, change the user passwords that are configured in your application server, process scheduler, and integration broker configurations back to the pre-refresh values:
11) Clear application server, web server and process scheduler cache if you haven't already done it. Start the target application environment.
12) Log on through the web front end.
13) Update the Report Node configuration and verify your Process Scheduler Servers are using the correct configuration. Make any Web Profile changes if needed.
14) Navigate to PeopleTools > Utilities > Options and update the database name and description.
15) Change password rules as appropriate for a development environment.
16) Change your default local node if it should be named differently than the default local node from the source database. If it's not named differently, you may be at risk for a single sign-on vulnerability.
17) Reconfigure attachment servers (if used)
18) Reconfigure REN servers and clusters if the application server didn't configure it correctly at startup.
19) Make sure you copy all of the batch objects (SQR's, Crystal Reports, COBOL programs, etc.) from your source to your target environment to keep the environment in synch. Don't forget to do this on both UNIX and Windows servers.
20) Perform some sanity checks to make sure the environment is behaving itself before you let users back into it. At a minimum you should verify you can log on and run a report. Verify the report runs to completion, posts, and allows you to view the report without having to sign in a second time.
One of the most common tasks of a PeopleSoft administrator or DBA is to clone a development or test database from a production database. I just wanted to take a minute to lay out the steps you'll want to consider when refreshing PeopleSoft databases that are running PeopleTools 8.4x.
I'm sure this list isn't complete for every installation and it can certainly be improved. Please let me know if you see something that I missed, or if you have a suggestion to improve the process.
For purposes of discussion, the source database will be production, and the target database will be the dev/test database that you're overlaying.
1) Export any security that you need to preserve from the target database to a flat file. Data Mover is a nice tool to use for this since you can qualify each table with a list of operator ID's to export. The tables you should consider exporting for specific users are
PSOPRDEFN, PSOPRALIAS, PSROLEUSER, PSUSERATTR, PSUSEREMAIL, PSUSERPRSNLOPTN, PS_ROLEXLATOPR and PS_RTE_CNTL_RUSER.2) Stop the target application environment, including application servers and process schedulers. Stopping the web server is optional since it doesn't connect directly to the database. Be sure to clear cache.
3) Overlay the target database with a recent backup of the Production database. The exact process will differ for your database platform, but your DBA should be able to do this with minimal direction.
4) After the database comes back on-line, set DBNAME in PSDBOWNER back to the target database name.
5) Set GUID to ' ' in the PSOPTIONS table. This will cause PeopleSoft to generate a new GUID so that change assistant can track it separately from the source database.
6) Delete the data from the reporting tables, process scheduler tables and application messaging tables since this data isn't relevant in the target database. Run prcsclr.dms, rptclr.dms and appmsgpurgeall.dms. In addition, I also delete from the report manager tables
PSRF_RATTR_TBL; PSRF_RSCRTY_TBL; PSRF_RINFO_TBL; and delete from PSRF_FINFO_TBL where PSRF_PRNT_FLDR_ID <> 0;7) If you have a script to reset everyone's e-mail address to a pre-defined value so that workflow messages from the Test environment don't get sent to real users, run it now. It should update the PSUSEREMAIL and PS_ROLEXLATOPR tables.
8) Log on to the target database with data mover and run the following command to set the SYSADM password and any other back to it's pre-refreshed value:
CHANGE_ACCESS_PASSWORD SYSADM1 MYSECRETPWD;DBRefresh.DMS is an example data mover script that performs steps 5-8.
9) Import the security that you exported in step 1.
10) While you're in data mover, change the user passwords that are configured in your application server, process scheduler, and integration broker configurations back to the pre-refresh values:
update psoprdefn set OPERPSWD = 'devpswd', encrypted = 0 where oprid = ('PSAPPS');
encrypt_password PSAPPS;
update psoprdefn set OPERPSWD = 'devpswd', encrypted = 0 where oprid = ('PTWEBSERVER');
encrypt_password PTWEBSERVER;11) Clear application server, web server and process scheduler cache if you haven't already done it. Start the target application environment.
12) Log on through the web front end.
13) Update the Report Node configuration and verify your Process Scheduler Servers are using the correct configuration. Make any Web Profile changes if needed.
14) Navigate to PeopleTools > Utilities > Options and update the database name and description.
15) Change password rules as appropriate for a development environment.
16) Change your default local node if it should be named differently than the default local node from the source database. If it's not named differently, you may be at risk for a single sign-on vulnerability.
17) Reconfigure attachment servers (if used)
18) Reconfigure REN servers and clusters if the application server didn't configure it correctly at startup.
19) Make sure you copy all of the batch objects (SQR's, Crystal Reports, COBOL programs, etc.) from your source to your target environment to keep the environment in synch. Don't forget to do this on both UNIX and Windows servers.
20) Perform some sanity checks to make sure the environment is behaving itself before you let users back into it. At a minimum you should verify you can log on and run a report. Verify the report runs to completion, posts, and allows you to view the report without having to sign in a second time.
Trackback(0)
Comments (3)

written by Lee, April 08, 2009
Hello,
I am a newer PS DBA/ADMIN and have been asked to set up a proof of concept for an upgrade.
I have new servers, have installed PT's 8.47.16 / WL 8.1 /Tux 8.1
I have the system up and running but it is configured to run on our production database is
configured differently and I need to modify all the settings to get the Proof of concept up and running...
I am hitting road blocks everywhere I turn and cannot figure out how the entire puzzle fits together completely
VERY frustrating to say the least. I have a reasonable understanding of the general settings but some of the more
technical settings I am getting stuck on...
the REN server is one...and configuring the Report Repository is another
7 I assume these are the only tables in the database that hold the email address?
13 Is it possible you could provide some insight on how this is done? possibly step by step?
16 Please explain this step...if you would be so kind...
18 I am trying very hard at getting REN setup on our servers, but am failing miserably...If you can offer any tips I would greatly appreciate it
20 Do you have any examples of a simple report to test the report repository functionality after a refresh?
If you or anyone could PLEASE lend me your knowledge I would appreciate it...I have been googling for days!
Thanks,
Lee
I am a newer PS DBA/ADMIN and have been asked to set up a proof of concept for an upgrade.
I have new servers, have installed PT's 8.47.16 / WL 8.1 /Tux 8.1
I have the system up and running but it is configured to run on our production database is
configured differently and I need to modify all the settings to get the Proof of concept up and running...
I am hitting road blocks everywhere I turn and cannot figure out how the entire puzzle fits together completely
VERY frustrating to say the least. I have a reasonable understanding of the general settings but some of the more
technical settings I am getting stuck on...
the REN server is one...and configuring the Report Repository is another
7 I assume these are the only tables in the database that hold the email address?
13 Is it possible you could provide some insight on how this is done? possibly step by step?
16 Please explain this step...if you would be so kind...
18 I am trying very hard at getting REN setup on our servers, but am failing miserably...If you can offer any tips I would greatly appreciate it
20 Do you have any examples of a simple report to test the report repository functionality after a refresh?
If you or anyone could PLEASE lend me your knowledge I would appreciate it...I have been googling for days!
Thanks,
Lee
RE: New DBA
written by Brent Martin, April 10, 2009
written by Brent Martin, April 10, 2009
It sounds like if you're down to the REN server and Report Repository you're almost there. Let's walk through your questions:
7) No, there could be other tables that hold e-mail addresses, depending on your application. Run this sql to identify them: select recname from psrecfield where fieldname like 'M;AIL%'. BUT if you hit those two your workflow probably won't send test e-mails to users.
13) Just navigate to PeopleTools > Process Scheduler > Report Nodes, and enter the correct URL that users will use for the report repository. Also configure the appropriate settings so the distribution server can transfer the files to the web server. Ccmpare the settings to a working environment making the changes for the new environment.
16) Don't worry about this until everything else is working. In short, PeopleSoft Single Signon sets up trust relationships so that you can sign on to one environment (say HRMS), click a link from HRMS to Financials and not have to sign in. It's a wonderful thing, but you don't want users to be able to sign in to a Development environment, manipulate the URL, and be signed into Production. The easy fix: Change the default local node's password to be different for your production environments.
1
This probably warrants an entire blog post when I have some time to review the REN server config, but here's the concept you might be missing: The REN server process starts it's own HTTP server, and the user's browser connects to the App Server hostname using the REN server port that you specify. It completely bypasses your web server. Firewall rules, multiple app servers, etc, can cause problems. Don't be afraid to open a case w/ Oracle to get through this, it's not very intuitive.
20) I navigate to PeopleTools > Process Scheduler > System Process Requests and run the XRFWIN SQR. If it runs, and I can get to the Log/Trace from Process Monitor, report repository is good. Otherwise look at the Message Log from Process Monitor and see what the distribution server is complaining about.
I hope this helps!
-Brent
7) No, there could be other tables that hold e-mail addresses, depending on your application. Run this sql to identify them: select recname from psrecfield where fieldname like 'M;AIL%'. BUT if you hit those two your workflow probably won't send test e-mails to users.
13) Just navigate to PeopleTools > Process Scheduler > Report Nodes, and enter the correct URL that users will use for the report repository. Also configure the appropriate settings so the distribution server can transfer the files to the web server. Ccmpare the settings to a working environment making the changes for the new environment.
16) Don't worry about this until everything else is working. In short, PeopleSoft Single Signon sets up trust relationships so that you can sign on to one environment (say HRMS), click a link from HRMS to Financials and not have to sign in. It's a wonderful thing, but you don't want users to be able to sign in to a Development environment, manipulate the URL, and be signed into Production. The easy fix: Change the default local node's password to be different for your production environments.
1
This probably warrants an entire blog post when I have some time to review the REN server config, but here's the concept you might be missing: The REN server process starts it's own HTTP server, and the user's browser connects to the App Server hostname using the REN server port that you specify. It completely bypasses your web server. Firewall rules, multiple app servers, etc, can cause problems. Don't be afraid to open a case w/ Oracle to get through this, it's not very intuitive. 20) I navigate to PeopleTools > Process Scheduler > System Process Requests and run the XRFWIN SQR. If it runs, and I can get to the Log/Trace from Process Monitor, report repository is good. Otherwise look at the Message Log from Process Monitor and see what the distribution server is complaining about.
I hope this helps!
-Brent
Write comment

STEPS TO CLONE THE TEST SYSTEM FROM THE PRODUCTION SYSTEM
▪ Coordinate with the functional staff to make sure they are aware of what is going to happen. The best time to do clones are probably right after we have implemented a new tax update, and during an -off-cyle payroll week. An e-mail to the listserv, similar to this, should be sent a day or two in advance (note the example below refers to “tomorrow”, so it may need to be modified):
ISO Staff would like to clone our TEST system from the PRODUCTION system so that the TEST system will have more current data. To do this, we need to bring down TEST for about half a day. This week appears to be a good week for us to proceed since we have just put in a tax update, and it is an off-cycle week for payroll.
IMPORTANT: This process will erase any and all data you currently have in TEST and you should not access TEST until we have notified you via this listserv that the cloning process has been complete. This process will only affect TEST, not PRODUCTION. Barring any objections from anyone, we will begin the process tomorrow afternoon at around 1pm, and hope to have TEST up and running (with current data!) by the following morning.
▪ Make sure we have a good backup of the Production DB. The daily backup report should identify if our Production Server had a good backup that morning.
▪ Export the TS88 Security information. This is accomplished by running a Data Mover script called securityexport.dms (a copy of which is in the same folder as this document).
▪ Restore the Production backup to TS88. This is accomplished by the DBA.
▪ Change the sysadm password in TS88 back to what it was (before step 4). This is accomplished by the HRIS DBA.
▪ Restore TS88 Security to what it was. This is accomplished by running a Data Mover script called securityimport.dms (a copy of which can probably be found by googling it, or from PS Customer Connection) and must be done with the sysadm login/password because you are "bootstrapping"
▪ Go into the TEST System and cancel some of the processes that do not need to run. FYI: When we clone Test from Production it causes the same processes in both systems to run. It appears the Production process take priority (run first), but then the Test processes run and overwrite what Production had created. Processes are cancelled via PeopleTools > Process Scheduler > Process Monitor. Blank out the User ID field and click the "Refresh" button to show all of the scheduled processes. Click on the "Details" hyperlink to go into the scheduler and select "Cancel Request" in the "Update Process" area. Select Ok and then continue for all of the other processes. Choose "Save" when finished.
▪ Do some preliminary testing (check that we can sign in with App Designer, TOAD, and via the web).
▪ Remigrate TS88 App Designer projects (that were not in Production as of yesterday) from DV88.
▪ Do some preliminary testing (is everything working as expected?).
▪ Notify users the process is complete.
▪ Ask functional staff to test TS88 in more detail and notify us of any anomalies.