Beruflich Dokumente
Kultur Dokumente
Recovery
Best Practices
Retail Pro Backup & Recovery Best Practices
Overview
This document discusses the backup and recovery elements of a disaster recovery (DR) plan as they
relate to the Retail Pro application.
That’s why it is critical for you to have a disaster recovery plan – both to protect the systems and
data your business depends on and to recover from a disaster in a reasonable amount of time.
When crafting a disaster recovery plan, make sure to think about all the locations where critical data
currently resides. For retail organizations, that includes the head office as well as each and every
remote store location. The risks associated with data loss apply as much to individual retail stores as
they do to corporate, maybe even more so.
Again, do note that this document will focus on the backup and recovery components of a disaster
recovery (DR) plan as they relate to Retail Pro.
Store the backup copies on two different storage types – Having all three copies of your
data in the same place (whether it’s the same computer or different disks in the same RAID)
is not a good idea. If that storage device fails, all your data is lost. Instead, copies of your
data should be keep on a different media type altogether. Most likely, the primary data
source is located on an internal hard drive. The two backup copies should be stored on
removable storage media – tapes, external hard drives, USB drives, etc. Bottom line, storing
your data on different devices ensure that there is no single point of failure.
Note: To maximize performance during the backup process, initially save the backup to the
same computer as the primary data source and then copy or move (manually or via batch
job) to removable media.
Keep one backup copy offsite – If all your data is stored in the same physical location, that
data is still vulnerable to catastrophic events (fires, floods, etc.) as well as robberies.
Therefore, we recommend that one backup copy be kept in an offsite location or in the
cloud. The other backup copy can be kept onsite (on removable media) along with the
primary data source, giving you quick and easy access for recovery purposes.
No backup strategy is 100% foolproof, but the 3-2-1 rule ensures that you’ll have a copy of your
data when the unthinkable happens.
Archive logs are vitally important for database recovery. But what exactly are archive logs? To
understand archive logs, you need to first understand redo logs. Redo logs are key database files
that store changes made to the database. Every new sales transaction. Every new or modified
customer record. Every time an item’s description changes. All such database changes are stored in
one of three redo logs, each with a 100MB file size. So what do redo logs have to do with archive
logs? Well, archive logs are basically copies of redo logs.
As changes are made to the database, those changes are first stored in Redo Log 1.
When Redo Log 1 is full, Redo Log 2 is used to store database changes.
When Redo Log 2 is full, Redo Log 3 is used to store database changes.
When Redo Log 3 is full, the system does not create a Redo Log 4.
Rather, it reuses Redo Log 1. But remember, Redo Log 1 is currently full of data. So before
reusing Redo Log 1, the system copies that data to an archive file, which resides outside the
database. Let’s call this Archive File 1. Now Redo Log 1 is free to store database changes
again.
When Redo Log 1 is full, Redo Log 2 has to be reused. As before, the system copies any
data currently in Redo Log 2 to another archive file – Archive File 2 – before reuse.
This process of using and reusing the three redo logs will ultimately result in the creation of
numerous archive logs.
Given their role in database recovery, here are a few best practices relating to archive logs:
Do Not Disable Archiving – You should never disable the archiving function in Retail
Pro, even when applying a software update (maintenance pack). The only acceptable time to
disable archiving is during the initial data migration to Retail Pro 9. Just make sure to enable
archiving after data migration is complete.
Store Archive Logs on External Media – Like the backup, archive logs should be stored
on an external storage device. This will prevent the loss of archive logs that have yet to be
backed up. Using the Technician’s Toolkit, you can easily modify the location (log path)
where archive logs should be stored.
Note: To maximize Retail Pro performance, initially save archive logs to the same computer
as the primary data source and then copy or move (manually or via batch job) to removable
media.
Delete Archive Logs as Needed– Archive logs can easily get out of hand and fill up your
hard drive. For this reason, they should be periodically purged. Ideally, archive logs should
be deleted as part of the Technician’s Toolkit-created backup process. Never delete archive
logs that have not been backed up.
With the Technician’s Toolkit, you can perform two types of backups – Complete or Incremental.
Complete Backup – With a complete backup, you are essentially backing up the entire
Retail Pro database, including Retail Pro data files and other key database files. This requires
that the database be shut down for a complete backup to be created. For this reason,
complete backups are typically performed outside of normal business hours. As part of the
complete backup, we recommend that you include archive logs as well.
Note: When performing a complete backup, make sure no Retail Pro operation is currently
running – polling/communications, delta builds, etc.
Incremental Backup – With an incremental backup, you are not backing up data files.
Instead, you are primarily backing up the archive logs. And because archive logs exist
outside of the database, the database does not need to be shut down for an incremental
backup to be created. This gives you the flexibility to create incremental backups during
business hours if desired. Do keep in mind that incremental backups cannot exist alone; for
recovery purposes, complete backups are still required.
To maximize your recovery options, we recommend that you create both Complete and Incremental
Backups on each Retail Pro system. When and how often to perform these backups will depend on
your business. One common practice is to perform a complete backup one day per week (when the
database can be shut down) with incremental backups created in between the weekly complete
backups. Incremental backups can be performed daily or multiple times throughout the day.
Using the Windows Task Scheduler to Schedule Automatic Weekly Complete Backups:
Command line parameters used to schedule backups using the Technician’s Toolkit:
Programs Location
TechToolkit.exe …\RetailPro9
9. Go to the
“…\RetailPro9\Export\Security” folder
10. Copy the “DBSec.dat” file
A Complete Recovery – also known as a “From a Complete Backup” recovery, will restore
the Retail Pro database to the state it was in, when the specified complete backup was
performed. This recovery option is less desirable than a Full recovery because any data
created after the specified complete backup is not recovered.
A Point in Time Recovery – gives you the flexibility to restore the Retail Pro database back
to specified date and time. Typically, a Point in Time recovery is used when a negative event
occurs and you need to recover the database back to a specific time prior to that event. For
example, you accidentally loaded test data into your production system. With Point in Time
recovery, you can restore the system back to a point before the data import took place.
Another common example involves data corruption that may have been occurring for an
extended period of time before its detection. With Point in Time recovery, you can restore
the system back to a point before the data corruption began.
Ideally, you want to restore the Retail Pro database as close as possible to the point of failure. This
means performing a Full recovery. If a Full recovery is not possible or fails, you may be forced to
recover from a complete backup alone. If you need to restore Retail Pro back to specified date and
time for whatever reason, perform a Point in Time recovery.
Note: Before attempting to recover from backup, make sure to create a cold backup of the Retail
Pro database.
9. If prompted:
Copy all archive files to the
“…\Oracle\oradata\RproODS\archi
ve” folder
Copy the control files (from the cold
backup if available OR from the last
Incremental backup) to the
“…\Oracle\oradata\RproODS”
folder
10. When ready, click the “OK” button
10. If prompted:
Copy all archive files to the
“…\Oracle\oradata\RproODS\archi
ve” folder
11. When ready, click the “Yes” button
12. If prompted:
Copy all archive files to the
“…\Oracle\oradata\RproODS\archi
ve” folder
Copy the control files (from the cold
backup if available OR from the last
Incremental backup) to the
“…\Oracle\oradata\RproODS”
folder
13. When ready, click the “OK” button
Recovery Validation
After recovering from backup, make sure to logon to Retail Pro to perform a high-level systems
check before calling the recovery a success. At minimum, make sure to complete the following
tasks:
General Systems Check – Logon to Retail Pro to click through the different Retail Pro
modules and areas. Additionally, attempt to create new transactions and customer records
(DO NOT save these test records).
Communications Check – Access ECM to manually process out. If you are unable to
perform this task, INDEX files and/or DOC_SYNC tables may have been corrupted. To
resolve this issue, you may need to attempt another recovery using an earlier complete
backup or, if performing a Point in Time recovery, using an earlier restore date/time.
Because archive logs can easily get out of hand and fill up your hard drive, they should be purged
periodically. This can be done manually or automatically.
Automatically Deleting Archive Logs – The most convenient way to handle this task is to
allow the Technician’s Toolkit to delete archive logs automatically as part of the complete or
incremental backup process.
For scheduled backups, make sure to include the “/deletearch:yes” command line parameter.
Parameter Description Allowed Value Example
/deletearch Delete archive logs after backup is yes /deletearch:yes
complete no
When the purging of archive logs is handled automatically by the Technician’s Toolkit, the
database control file updates each individual archive log’s status to “deleted.”
Manually Deleting Archive Logs – If you choose to delete archive logs manually or via a
batch job, keep in mind that the database control file is not updated to reflect those
deletions. This may ultimately lead to non-critical errors appearing (in the progress window)
when performing complete backups, assuming the backup is configured to include archive
logs.
Again, these errors are benign and will not impact the successful creation of a complete
backup. That said, you can prevent these errors from displaying at all by rebuilding the
control file.
Power outages and fluctuations can wreak havoc on computers, potentially resulting in data
corruption or even damage to internal hardware components. In fact, over 60% of "system down"
calls reported to the RPI Technical Support team are due to power-related events. To protect your
computer from damage, connect it to an Uninterrupted Power Supply (UPS) system. During power
outages, a UPS will provide enough emergency power for you to save your work and shut down the
computer properly. Many UPS systems will even shut down an unattended operating system
gracefully in the event of an extended power outage or computer power problem. UPS systems will
also level out voltage fluctuations (power surges and dips) that can overheat your computer and
reduce its performance.
The following best practices will ensure that your system is protected in the event of a power failure
or fluctuation:
One Database, One UPS – Make sure each Retail Pro database is connected to a UPS
system to protect it from power fluctuations and surges.
Maintain and Test UPS Systems – As part of your disaster recovery plan, it’s important to
periodically check UPS equipment as well. Just because a UPS is up-and-running does not
mean it’s fully operational. Newer UPS systems typically come with monitoring software
that will allow you to check current power status as well as past performance during power-
related events. Some units will automatically perform periodic battery self-tests and notify
you if a battery needs to be replaced. Additionally, make sure to visually inspect each UPS as
well. Look for wear and deterioration. Remove trash or unrelated materials around the UPS
unit to create better airflow. Clean and vacuum the enclosure if necessary.
Bottom line, a UPS unit is an inexpensive investment against the cost of repairing or replacing
damaged hardware, the lost in revenue and productivity associated with downtime, not to mention
the time and cost of data recovery.
Likewise, communications-related data is also not included in a Retail Pro backup. All this data
resides outside the Retail Pro database. Specifically, they are stored in two folders, which should be
included in your backup plan.
Retail Pro 9 – Outside of database-related files, this folder stores almost everything else
required by Retail Pro - document designs, layouts, translation files, report files and program
executables. This folder is located here: …\RetailPro9.
ECM – this folder stores all communications-related files, including station settings, profiles,
security permissions and program executables. This folder is located here: …\ECM.
Because these files change little over time, it’s not necessary to back them up daily and weekly like
you would with Retail Pro data. Making a copy and updating it every few months is fine.
In spite of what this document advises, recommends or purports, and all of our mutual best efforts to the contrary, you
may still wind up losing your data or experiencing some form of data corruption. And, while we are available to try to
help you recover your data using our best efforts and possibly at significant cost to you, you may still wind up losing
your data. Please remember that your system is yours to manage and defend/protect, and you are ultimately responsible
for it, your data, and your operations. In any event, RPI is not responsible for any loss or corruption of your data, or for
any damages - incidental, consequential or otherwise - which might result from such loss, including but not limited to
loss of business, sales, profits, customers, good will, or any other damages whatsoever at law or in equity.
Copyright © 2017 All rights reserved. Retail Pro University and Retail Pro International, LLC.