ajout de datapump
This commit is contained in:
@@ -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
|
||||
|
||||
119
roles/oracle-db-postinstall/files/export_datapump.sh
Normal file
119
roles/oracle-db-postinstall/files/export_datapump.sh
Normal file
@@ -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 <<EOF
|
||||
set heading off
|
||||
set feedback off
|
||||
set echo off
|
||||
select VALUE from nls_database_parameters where PARAMETER='NLS_CHARACTERSET';
|
||||
EOF
|
||||
)
|
||||
NLS_CHARACTERSET=$(echo $NLS_CHARACTERSET | sed 's/^\s*//g')
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# inititalisation des variables d'environnement
|
||||
#------------------------------------------------------------------------------
|
||||
f_init
|
||||
|
||||
# creation du repertoire de sauvegarde. S'il existe la commande install ne fait rien
|
||||
install -d ${EXP_LOCATION}
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# creation du répertoire DPDIR au niveau de la base
|
||||
#------------------------------------------------------------------------------
|
||||
$ORACLE_HOME/bin/sqlplus -S / as sysdba <<EOF
|
||||
set heading off
|
||||
set feedback off
|
||||
set echo off
|
||||
create or replace directory $DPDIR as '${EXP_LOCATION}';
|
||||
grant read, write on directory $DPDIR to public;
|
||||
exit
|
||||
EOF
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# export des données
|
||||
#------------------------------------------------------------------------------
|
||||
$ORACLE_HOME/bin/expdp \'/ as sysdba\' full=y directory=$DPDIR dumpfile=export_${ORACLE_SID}.dmp logfile=export_${ORACLE_SID}.log flashback_time=systimestamp reuse_dumpfiles=yes
|
||||
14
roles/oracle-db-postinstall/files/export_datapump_alldb.sh
Normal file
14
roles/oracle-db-postinstall/files/export_datapump_alldb.sh
Normal file
@@ -0,0 +1,14 @@
|
||||
#!/bin/sh
|
||||
#------------------------------------------------------------------------------
|
||||
# ORACLE DATABASE : EXPDP ALL DB RMAN
|
||||
#------------------------------------------------------------------------------
|
||||
# Historique :
|
||||
# 21/04/2023 : YAO - Creation : export datapump de toutes les bases ouvertes
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
# toutes les bases ouvertes sont sauvegardées par le script RMAN
|
||||
|
||||
for i in $(ps -ef | grep pmon | grep -v grep | cut -d_ -f3)
|
||||
do
|
||||
sh /home/oracle/scripts/export_datapump.sh -s $i
|
||||
done
|
||||
@@ -41,20 +41,36 @@
|
||||
# ajout de script oracle pour les backups rman
|
||||
# ---------------------------------------------------
|
||||
|
||||
- name: Copie du script backup_rman.sh dans {{ scripts_dir }}
|
||||
copy: src=backup_rman.sh dest={{ scripts_dir }}/ owner=oracle group=oinstall mode=755
|
||||
# - name: Copie du script backup_rman.sh dans {{ scripts_dir }}
|
||||
# copy: src=backup_rman.sh dest={{ scripts_dir }}/ owner=oracle group=oinstall mode=755 #
|
||||
|
||||
- name: Copie du script backup_rman_alldb.sh dans {{ scripts_dir }}
|
||||
copy: src=backup_rman_alldb.sh dest={{ scripts_dir }}/ owner=oracle group=oinstall mode=755
|
||||
# - name: Copie du script backup_rman_alldb.sh dans {{ scripts_dir }}
|
||||
# copy: src=backup_rman_alldb.sh dest={{ scripts_dir }}/ owner=oracle group=oinstall mode=755
|
||||
|
||||
- name: Création du répertoire de sauvegarde RMAN /u04
|
||||
- name: Copie du script RMAN et Datapump dans {{ scripts_dir }}
|
||||
copy: src={{ item }} dest={{ scripts_dir }}/ owner=oracle group=oinstall mode=755
|
||||
loop:
|
||||
- backup_rman.sh
|
||||
- backup_rman_alldb.sh
|
||||
- export_datapump.sh
|
||||
- export_datapump_alldb.sh
|
||||
tags: backup
|
||||
|
||||
- name: Création de répertoire de sauvegarde RMAN et Datapump /u04
|
||||
file: dest=/u04 mode=775 owner=oracle group=oinstall state=directory recurse=yes
|
||||
tags: backup
|
||||
|
||||
- name: installation du package mutt pour envoyer des mails depuis le shell
|
||||
yum: name=mutt state=latest disable_gpg_check=yes
|
||||
tags: backup
|
||||
|
||||
- name: Exécuter le script de backup RMAN tous les jours à 22h44
|
||||
- name: Ajout de la tâche cron RMAN
|
||||
cron: name="Backup RMAN des bases ouvertes et en AL" user=oracle minute="44" hour="23" job="sh {{ scripts_dir }}/backup_rman_alldb.sh 2>&1 1>/dev/null"
|
||||
tags: backup
|
||||
|
||||
- name: Ajout de la tâche cron Datapump
|
||||
cron: name="Export Datapump des bases ouvertes" user=oracle minute="44" hour="21" job="sh {{ scripts_dir }}/export_datapump_alldb.sh 2>&1 1>/dev/null"
|
||||
tags: backup
|
||||
|
||||
# ---------------------------------------------------
|
||||
# configuration Linux : config oracle pour logrotate
|
||||
|
||||
Reference in New Issue
Block a user