SQWareProduction:oracle:bin:sqwora Impdp.ksh

De WikiFr_dbSQWare
Révision datée du 8 mars 2020 à 19:30 par BatchUser (discussion | contributions) (Updated by BatchUser)
Aller à : navigation, rechercher

Presentation

Script $gvsqw_OraBin/sqwora_Impdp.ksh :


Import un ou plusieurs schemas par impdp
Actions:

  • Drop tous les objets des schemas a recharger
  • Realise l'import


Le script peut aussi:

  • Recuperer le fichier dump par rsync
  • envoyer un rapport d'import par mail
  • executer un script shell avant load
  • executer un script shell apres load
  • garder une liste de tables (save/restore)



Aide en ligne

L'aide en ligne est accessible dans la plupart des scripts avec l'option -h.
Ex: $gvsqw_OraBin/sqwora_Impdp.ksh -h
Contenu de l'aide :

Sourcing sqwora_Global.lib v2024.02 SQWareProduction for Oracle (dbSQWare) ... 

Utilisation: sqwora_Impdp.ksh [-h] -I <instance> -FileIdent <fileident> -O <owner> [+ options]

DESCRIPTION
   sqwora_Impdp.ksh impdp
SUPPORT
   Oracle versions supportees: 10gR2 <= v <= 21c

PARAMETERS
     -I  instance       : Target instance pour recharger.
     -FU owner(s)       : Schema(s) a recharger (non necessaire quand -PartialExp).
     -FileIdent  txt    : Identifiant fichier pour trouver dump a charger (ex: ExpdpFull_MYORA ou ExpdpMYSCH_ ou ...).
OPTIONS
     -h                 : Affichage de l'aide complete.
     -s                 : Affichage des exemples d'utilisation.
     -F    filename     : Fichier avec la liste des tables a garder (save/restore).
     -TU   owner(s)     : To user, schema(s) cible(s) a recharger.
     -RD   directory    : Repertoire pour trouver/copie le fichier de dump sur le host local (par defaut /$(echo ${HOME}|cut -d/ -f2)/backup/${ORACLE_SID}/expdp).
     -Pdb  pdb_name     : pdb_name pour multitenant.
     -NoDrop            : Ne drop pas les objets et utilise l'option 'table_exists_action=replace' dans impdp.
     -GetInf  u@h:path  : user@host:path pour recuperer le dump source distant.
     -OptImp option     : Option a ajouter sur impdp commande.
     -FRT       code    : Valeur forcee du code retour sur erreur.
     -PartialExp        : Desactive l'option 'schemas=xxx' (prend 'tous les schemas du dump').
     -NoConsistent      : Supprime l'option 'flashback_time=systimestamp'.
     -LockKill          : Lock des comptes utilisateurs et kill sessions (target schema(s) a recharger).
     -Before scriptname : Script a executer avant reload et avant drop de objects.
     -After  scriptname : Script a executer apres reload.
     -AddMail   email   : Adresse Email a ajouter a 'pmexpdba@gmail.com'.
     -SendReport        : Envoi du rapport d'execution.
     -NoMail            : Desactive l'envoi de mail sur erreur a pmexpdba@gmail.com (par defaut, envoi sur erreur).
     -Locale    locale  : Force la Locale d'affichage de l'aide (fr,en).
     -Exec              : Execute the reload (par defaut, affiche les commandes generees).

Information.png
Information:
Pour etre sur d'avoir une aide a jour, reportez vous directement a l'aide en ligne du script avec l'option -h .


Traitement de l'erreur

Erreurs de parse des arguments

Ce type de message est genere:

Lack 'FileIdent' parameter, Utilisation: sqwora_Impdp.ksh [-h] -I <instance> -FileIdent <fileident> -O <owner> [+ options]

Si vous vous connectez via un terminal, aucun mail ne sera envoyé et vous aurez plutôt ce type de message:

Not sending mail because you are in connected mode !!!
Lack 'FileIdent' parameter

Si vous n'êtes pas connecté à un terminal, le message d'erreur apparaît et est envoyé par mail à l'adresse contenue dans la variable $gvsqw_GlobalMail (Voir l'aide pour personnaliser cette variable). L'objet commence toujours par "$gvsqw_MailMsg_oracle : " (Voir l'aide pour personnaliser cette variable).

Information.png
Information:
L'envoi de mail peut être désactivé par l'option -NoMail pour une exécution.


Execution errors

Que vous soyez ou non connecté à un terminal, le message d'erreur apparaît et un mail contenant un résumé des erreurs de traitement est envoyé à l'adresse contenue dans la variable $gvsqw_GlobalMail (Voir l'aide pour personnaliser cette variable). L'objet commence toujours par "$gvsqw_MailMsg_oracle : " (Voir l'aide pour personnaliser cette variable).

Information.png
Information:
L'envoi de mail peut être désactivé par l'option -NoMail pour une exécution.


Exemples d'utilisation

Sourcing sqwora_Global.lib v2024.02 SQWareProduction for Oracle (dbSQWare) ... 

#Standard (Locale) help for script sqwora_Impdp.ksh:


$gvsqw_OraBin/sqwora_Impdp.ksh -h
#Affichage de l'aide en ligne pour ce script

$gvsqw_OraBin/sqwora_Impdp.ksh -Locale fr -h
#Affichage de l'aide en ligne pour ce script avec forçage de la locale 'fr' (Locale par defaut geree par $gvsqw_Locale)

$gvsqw_OraBin/sqwora_Impdp.ksh -s
#Affichage des exemples d'utilisation pour ce script

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList>
#Genere les commandes mais ne les execute pas !

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -Exec
#Importe un ou plusieurs schemas avec impdp

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -RD <DirImport> -Exec
#Importe un ou plusieurs schemas <OwnerList>, utilise le fichier avec l'identifiant <fileident>, recupere le dump dans le repertoire <DirImport> du localhost

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -GetInf <user@host:path> -Exec
#Importe un ou plusieurs schemas <OwnerList>, utilise le fichier avec l'identifiant <fileident>, et recupere le dump par rsync avant <user@host:path>

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU OLDSCH -TU NEWSCH -Exec
#Importe le schema OLDSCH <OwnerList>, utilise le fichier avec l'identifiant <fileident>, vers le schema cible NEWSCH

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -LockKill
#Verouille le compte utilisateur et ferme les sessions (des chemas cibles de l'import)

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -NoDrop
#Ne drop pas les objets et utilise l'option 'table_exists_action=replace' pour impdp

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -PartialExp
#Desactive l'utilisation de 'schemas=xxx'

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -Pdb <pdb_name> -Exec
#Specifie une liste de PDB '<PdbList>' pour les environnements multi-tenant

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -Before <script> -Exec
#Execute le script <script> et ensuite importe  un ou plusieurs schemas

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent ExpdpFull_MYORA -FU MYSCH -GetInf <user@host:path> -After $Home/scripts/XXX.ksh -Exec
#Importe le schema MYSCH <OwnerList>, utilise le fichier avec l'identifiant ExpdpFull_MYORA <fileident> depuis <user@host:path> puis execute script $Home/scripts/XXX.ksh

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> OptImp '<options>' -Exec
#Ajoute la liste d'options <options> au job impdp

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> OptExp '<options>' -Exec
#Ajoute la liste d'options <options> au job expdp

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -NoConsistent -Exec
#Supprime l'option 'flashback_time=systimestamp' (par defaul)

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -AddMail 'mymail1@mydomaine.com,mymail2@mydomaine.com'
#Ajoute la liste de mail a l'adresse par defaut geree par $gvsqw_GlobalMail

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -SendReport
#Envoie la log par mail a la fin du traitement meme s'il n'y a pas d'erreur (par defaut, seulement en cas d'erreur)

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -NoMail
#Desactive l'envoi de mail sur erreur a $gvsqw_GlobalMail (par defaut, seulement en cas d'erreur)

$gvsqw_OraBin/sqwora_Impdp.ksh -I $ORACLE_SID -FileIdent <fileident> -FU <OwnerList> -FRT <NumericValue> -Exec
#Force le code retour a '<NumericValue>' sur erreur (si pas d'erreur, "exit 0"!)
#Vous pouvez aussi forcer le code retour de ce script pour tous
#si vous settez la variable d'environnement: $gvsqw_ForcedReturnCodeScript_sqwora_Impdp=<NumericValue>
#dans le fichier de configuration $gvsqw_OraBin/../etc_cust/sqwora_GlobalVar.cfg
Information.png
Information:
Pour être sûr que les exemples sont exacts, reportez-vous directement à l'option d'aide en ligne du script -s .