Anwendungs-Snapshots auf einem Computer sichern

In diesem Szenario wird erläutert, wie der Sicherungsprozess des Snapshots, der während der täglichen Servicewartung auf einem lokalen Computer erstellt wird, automatisiert wird.

  • Anwendungs-Snapshot (Artifact Snapshot), der im Wartungsfenster erstellt wurde, herunterladen
  • Heruntergeladenen Snapshot durch Anhängen des Zeitstempels umbenennen
  • Zehn Backups behalten und bei Bedarf das älteste löschen

Note:

  • Dieses Skript kann nicht zum Erstellen eines Backups von Narrative Reporting verwendet werden.
  • Wenn Sie dieses Skript an Ihre Zwecke anpassen möchten, ändern Sie nach Bedarf die Werte für die Laufzeitparameter (url, user, password und NumberOfBackups).

Informationen zum Planen von Skripten mit der Windows-Aufgabenplanung finden Sie unter Skriptausführung automatisieren.

Windows-Beispielskript

Um Snapshot-Downloads zu automatisieren, erstellen Sie eine Batch- (.bat) oder Shell-Datei (.sh) mit einem Skript ähnlich dem folgenden.

@echo off
rem Sample script to download and maintain 10 maintenance backups
rem Update the following  parameters

SET url=https://example.oraclecloud.com
SET user=ServiceAdmin
SET password=Example.epw
SET SnapshotName="Artifact Snapshot"
SET NumberOfBackups=10

rem EPM Automate commands
call epmautomate login %user% %password% %url% 
     IF %ERRORLEVEL% NEQ 0 goto :ERROR
       call epmautomate downloadfile %SnapshotName%
     IF %ERRORLEVEL% NEQ 0 goto :ERROR
       call epmautomate logout
     IF %ERRORLEVEL% NEQ 0 goto :ERROR

rem Rename downloaded Artifact Snapshot, keep the last 10 backups
Set Timestamp=%date:~4,2%_%date:~7,2%_%date:~10,2%%
Set Second=%time:~0,2%%time:~3,2%
ren %SnapshotName%.zip %SnapshotName%_%Timestamp%_%Second%.zip

SET Count=0
FOR %%A IN (%SnapshotName%*.*) DO SET /A Count += 1
IF %Count% gtr %NumberOfBackups% FOR %%A IN (%SnapshotName%*.*) DO del "%%A" && GOTO EOF
:EOF

echo Scheduled Task Completed successfully
exit /b %errorlevel%
:ERROR
echo Failed with error #%errorlevel%.
exit /b %errorlevel%

Linux-/UNIX-Beispielskript

Um Snapshot-Downloads zu automatisieren, erstellen Sie eine Shell-Datei (.sh) mit einem ähnlichen Skript wie das folgende. Wenn Ihr Kennwort Sonderzeichen enthält, finden Sie unter Sonderzeichen verarbeiten weitere Informationen.

#!/bin/sh
# Sample script to download and maintain 10 maintenance backups
# Update the following seven parameters

url=https://example.oraclecloud.com
user=serviceAdmin
password=/home/user1/epmautomate/bin/example.epw
snapshotname="Artifact Snapshot"
numberofbackups=10
epmautomatescript=/home/user1/epmautomate/bin/epmautomate.sh
javahome=/home/user1/jdk1.8.0_191/

export JAVA_HOME=${javahome}

printResult()
    {
    op="$1"
    opoutput="$2"
    returncode="$3"

    if [ "${returncode}" -ne 0 ]
    then
        echo "Command failed. Error code: ${returncode}. ${opoutput}"
    else 
        echo "${opoutput}"
    fi
}

processCommand()
{
    op="$1"
    date=`date`

    echo "Running ${epmautomatescript} ${op}"
    operationoutput=`eval "$epmautomatescript $op"`
    printResult "$op" "$operationoutput" "$?"
}

op="login ${user} ${password} ${url}"
processCommand "${op}"

op="downloadfile \"${snapshotname}\""
processCommand "${op}"

op="logout"
processCommand "${op}"

# Renames the downloaded artifacts, keeps the last 10 backups
timestamp=`date +%m_%d_%Y_%I%M`
mv "${snapshotname}.zip" "${snapshotname}_${timestamp}.zip"

((numberofbackups+=1))
ls -tp ${snapshotname}*.zip | grep -v '/$' | tail -n +${numberofbackups} | xargs -d '\n' -r rm --