Général:FAQ JobsOnDemand

De WikiFr_dbSQWare
Aller à la navigation Aller à la recherche

Généralités


Information:
Les JobsOnDemand sont arrivés avec la version 2024.06 de dbSQWare les versions antérieures n'en disposent pas. pensez à mettre à jour votre dbSQWare Général:PatchUpgrade .

Limites de cette section

Nous proposons ici des exemples courants d'utilisation de la fonctionnalité JobsOnDemand observés et demandés par nos utilisateurs.
Tous les scripts dbSQware peuvent être utilisés par cette fonctionnalité, mais cela n'aura parfois que peu d'intérêt.

Ce que nous allons vous présenter dans ce MODOP sur les JobsOnDemand :

  • Des exemples de création,
  • Des exemples de planification,
  • La possibilité de les déléguer à des utilisateurs,
  • etc ...
  • Leur suivi.

Introduction

Les JobsOnDemand permettent de créer des ensembles composés de scripts et de leurs paramètres existants, ensembles dont l'exécution est demandée directement dans SQWareAdmin.
Vous pouvez imaginer toutes sortes de cas d'usages par exemple :

  • Un ensemble script/paramètres spécifique et récurant mais non planifiable,
  • Un ensemble script/paramètres qui sera exécuter 1 fois à un moment bien précis et donc planifiable,
  • etc ...

Cela permet également d'avoir des JobsOnDemand qui peuvent être exécutés par des utilisateurs qui n'ont pas accès aux scripts dbSQWare en particulier et, ou à la machine dbSQWare en général.

Vous trouverez le menu dédié aux JobsOnDemand (Menu 2) dans chaque moteur et bien sûr dans la vue TOUS SGBD.

Accueil menu JobsOnDemand
Accueil menu JobsOnDemand


Lors de la création d'un JobsOnDemand utilisant un script dbSQWare cela ne fonctionnera que si les paramètres spécifiés sont disponibles pour ce script.
Vous pouvez vérfier cela en ligne de commande dans l'aide en ligne et, ou sur ce wiki sur la page dédié à ce script.
Par exemple pour le script sqwora_Expdp.ksh :

  • avec l'aide en ligne, option -h
oracle@srvORAexample:~/SQWareProduction/oracle/bin (ORAEXAMPLE) $ ./sqwora_Expdp.ksh -h
Sourcing sqwora_Global.lib v2025.02 SQWareProduction for Oracle (dbSQWare) ...

Usage: sqwora_Expdp.ksh [-h] -I <instance> -T <ExpType> [+ options]

DESCRIPTION
   sqwora_Expdp.ksh expdp script
SUPPORT
   Oracle supported versions: 10gR2 <= v <= 21c

PARAMETERS
     -I  instance       : Target instance to expdp.
     -T  type_exp       : Type of expdp (full,schema,structure,parfile,tables).
OPTIONS
     -h                 : Display the full usage.
     -s                 : Display samples of usage.
     -HI nb_gen         : Number of generations to keep (by default: 1).
     -P  Nb threads     : Number of threads in parallel (by default 2).
     -FU  owner         : Schema to expdp.
     -Pdb pdb_name      : pdb_name for multitenant.
     -PAR parfile       : Parfile to use.
     -OPT option        : Option to add to the expdp command.
     -ZIP extension     : Compressor extension gz,bz2,Z,none (by default: none).
     -FRT return_code   : Force return code value on error.
     -AddMail   email   : Email address to add at 'dba@domaine.com'.
     -SendReport        : Send execution log report.
     -NoConsistent      : Remove 'flashback_time=systimestamp' option.
     -RD      directory : Expdp directory (par defaut /orabackup/${ORACLE_SID}/expdp).
     -PutInf  u@h:path  : user@host:path to push dump to distant host.
     -Dist              : For distant connection to database (change $gvsqw_DbaUser to $gvsqw_DistDbaUser@$ORACLE_SID ).
     -Sysdba            : '/ as sysdba' connection instead of $gvsqw_DbaUser.
     -NoMail            : Deactivate sendmail on error to dev.env@dbsqware.com (by default, send on error).
     -Locale    locale  : Force Locale for help display (fr,en).
     -Exec              : Execute expdp (by default, display generated commands).


Création de JobsOnDemand

Dans tous les cas

Pour Ajouter un nouveau JobsOnDemand il faut aller sur l'interface web de dbSQWare soit dans ALL RDBMS, soit n'importe lequel des moteurs (menu 1) OnDemandJobs (menu 2) JobsParam (menu 3).

En haut à droite vous cliquez sur le bouton Add.

Depuis All RDBMS :

all RDBMS
all RDBMS


Depuis un moteur par exemple Oracle :

add Oracle
add Oracle


Le formulaire suivant s'ouvre :

add empty
add empty

Les paramètres obligatoires sont :

  • DbAlias, l'instance sur laquelle le script va être exécuté,
  • Job Name, seulmeent le nom du job pour les différencier,
  • User name, utilisateur qui va lancer le script
  • Host Name, l'hôte sur lequel le script sera exécuté,
  • Script, quel est le script que le JobsOnDemand est sensé lancer, il faut inclure le path.

Les paramètres optionnels sont :

  • Parameters, tous les scripts n'ont pas forcément de paramètres cela dépend du script,
  • Description, une brève description du pourquoi du Job.

Cas de Job avec des paramètres "durcis"

Cas de Job avec des paramètres "souples"

Exemple avec sqwora_SchemaRefreshExpdp.ksh

Lancement de JobsOnDemand

Lancement immédiat

Lancement différé

Délégation d'exécution

Suivi des JobsOnDemand

Codes retours

  • -1 Job prêt mais non démarré
  • -5 Job mis en file d'attente par le service sqwScheduler
  • -10 Connexion SSH réussie, en attente de l'échéance planifié
  • -20 Job en cours
  • -30 Job terminé mais sans code retour ! (par exemple un script de provenant pas de dbSQWare)
  • 0 Job terminé sans aucune erreur
  • 12 Job terminé mais avec erreur(s)
  • 31
  • 51 Connexion SSH échouée.