Este cenário explica como automatizar o processo de backup do instantâneo criado durante a manutenção diária do serviço em um computador local.
Instantâneo de Artefato
) criado durante a janela de manutençãoNote:
url
, user
, password
e NumberOfBackups
, conforme necessário.Consulte Automação da Execução de Scripts para obter informações sobre como programar o script usando o Agendador de Tarefas do Windows.
Script de Amostra para Windows
Crie um arquivo de lote (.bat
) ou shell (.sh
) contendo um script semelhante ao seguinte para automatizar downloads de instantâneos.
@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 Amostra para Linux/UNIX
Crie um arquivo shell (.sh
) contendo um script semelhante ao seguinte para automatizar os downloads de instantâneos. Se sua senha contiver caracteres especiais, consulte Caracteres Especiais.
#!/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 --