From fee1efba2a7d2ba9094cd1c735435bf6b3263302 Mon Sep 17 00:00:00 2001 From: Yacine31 Date: Fri, 21 Apr 2023 00:50:01 +0200 Subject: [PATCH] ajout de datapump --- .../files/backup_rman.sh | 2 +- .../files/export_datapump.sh | 119 ++++++++++++++++++ .../files/export_datapump_alldb.sh | 14 +++ roles/oracle-db-postinstall/tasks/main.yml | 28 ++++- 4 files changed, 156 insertions(+), 7 deletions(-) create mode 100644 roles/oracle-db-postinstall/files/export_datapump.sh create mode 100644 roles/oracle-db-postinstall/files/export_datapump_alldb.sh diff --git a/roles/oracle-db-postinstall/files/backup_rman.sh b/roles/oracle-db-postinstall/files/backup_rman.sh index 1acb124..db981c1 100644 --- a/roles/oracle-db-postinstall/files/backup_rman.sh +++ b/roles/oracle-db-postinstall/files/backup_rman.sh @@ -113,7 +113,7 @@ done export ORACLE_SID ORAENV_ASK=NO PATH=/usr/local/bin:$PATH -. oraenv -s +. oraenv -s >/dev/null #------------------------------------------------------------------------------ # inititalisation des variables d'environnement diff --git a/roles/oracle-db-postinstall/files/export_datapump.sh b/roles/oracle-db-postinstall/files/export_datapump.sh new file mode 100644 index 0000000..79b3110 --- /dev/null +++ b/roles/oracle-db-postinstall/files/export_datapump.sh @@ -0,0 +1,119 @@ +#!/bin/sh +#------------------------------------------------------------------------------ +# Historique : +# 14/09/2011 : YOU - Creation +# 14/10/2015 : YOU - script générique pour toutes les bases +# 15/12/2022 : YOU - retention de 1 jour +#------------------------------------------------------------------------------ +#------------------------------------------------------------------------------ +# fonction init : c'est ici qu'il faut modifier toutes les variables liées +# à l'environnement +#------------------------------------------------------------------------------ +export ORACLE_OWNER=oracle + +f_init() { + + # positionner les variables d'environnement + export SCRIPTS_DIR=/home/oracle/scripts + # paramètres de lang + export LANG=en_US.UTF-8 + export NLS_LANG=AMERICAN_AMERICA.${NLS_CHARACTERSET} + + # répertoire destination de l'export + export EXP_LOCATION=/u04/expdp/$ORACLE_SID + # nom du répertoire au niveau de la base de données + export DPDIR=EXPDP_DIR + + # date = jour de la semaine : permet de garder 7 export en ligne + export JOUR_SEMAINE=$(date +%A) +} #f_init + +#------------------------------------------------------------------------------ +# fonction d'aide +#------------------------------------------------------------------------------ +f_help() { + +echo " + +syntaxe : $0 -s ORACLE_SID +------ +" +exit $1 + +} #f_help + +#---------------------------------------- +#------------ MAIN ---------------------- +#---------------------------------------- + +unset ORACLE_SID + +while getopts :s:h o +do + case $o in + s) ORACLE_SID=$OPTARG; + ;; + h) f_help 0; + ;; + *) f_help 2; + ;; + \?) f_help 2; + ;; + esac +done + +[ "${ORACLE_SID}" ] || f_help 2; + +#------------------------------------------------------------------------------ +# si ce n'est pas le user oracle qui lance le script, on quitte +#------------------------------------------------------------------------------ +if (test `whoami` != $ORACLE_OWNER) +then + echo "Vous devez etre $ORACLE_OWNER pour lancer ce script" + exit +fi + +#------------------------------------------------------------------------------ +# positionner les variables d'environnement ORACLE +#------------------------------------------------------------------------------ +export ORACLE_SID +ORAENV_ASK=NO +PATH=/usr/local/bin:$PATH +. oraenv -s >/dev/null + +#------------------------------------------------------------------------------ +# recuperation du NLS_CHARACTERSET +#------------------------------------------------------------------------------ +NLS_CHARACTERSET=$($ORACLE_HOME/bin/sqlplus -S / as sysdba <