Sauvegarde d'un instantané d'application sur un ordinateur

Ce scénario explique comment automatiser le processus de sauvegarde de l'instantané créé lors de la maintenance de service quotidienne sur un ordinateur local.

  • Télécharge l'instantané d'application (Artifact Snapshot) créé lors de la fenêtre de maintenance.
  • Renomme l'instantané téléchargé en ajoutant l'horodatage.
  • Tient à jour 10 sauvegardes en supprimant la sauvegarde la plus ancienne, si nécessaire.

Note:

  • Ce script ne peut pas être utilisé pour sauvegarder Narrative Reporting
  • Si vous réadaptez ce script à votre utilisation personnelle, modifiez les valeurs des paramètres d'exécution (url, user, password et NumberOfBackups) à votre convenance.

Reportez-vous à la section Automatisation de l'exécution de scripts pour plus d'informations sur la planification du script à l'aide du planificateur de tâches Windows.

Exemple de script Windows

Créez un fichier batch (.bat) ou d'interpréteur de commandes (.sh) qui contient un script semblable aux scripts suivants pour automatiser les téléchargements d'instantanés.

@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%

Exemple de script Linux/UNIX

Créez un fichier d'interpréteur de commandes (.sh) contenant un script semblable à ce qui suit pour automatiser les téléchargements d'instantanés. Si votre mot de passe contient des caractères spéciaux, reportez-vous à la section Gestion des caractères spéciaux.

#!/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 --