En este caso se explica cómo automatizar el proceso de creación de una copia de seguridad de la instantánea creada durante el mantenimiento del servicio diario en un equipo local.
Artifact Snapshot
) que se creó en el periodo de mantenimientoNote:
url
, user
, password
y NumberOfBackups
) según sea necesario.Consulte Automatización de la ejecución de scripts para obtener información sobre la programación del script con Programador de tareas de Windows.
Script de Windows de ejemplo
Cree un archivo por lotes (.bat
) o de shell (.sh
) que contenga un script similar al siguiente para automatizar las descargas de instantáneas.
@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%
Script de Linux/UNIX de ejemplo
Cree un archivo de shell (.sh
) que contenga un script similar al siguiente para automatizar las descargas de instantáneas. Si su contraseña contiene caracteres especiales, consulte Manejo de caracteres especiales.
#!/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 --