Variablen für Scripts für Jobs und benutzerdefinierte Alerts

Sie können vordefinierte Variablen in Scripts verwenden, die Sie für Jobs oder benutzerdefinierte Alerts angeben. Sie können z. B. ein Script erstellen, das eine Variable DSWEB_DATABASE_NAME enthält, die in den Namen einer physischen Datenbank aufgelöst wird.
Wenn Sie dem Script Variablen hinzufügen wollen, schließen Sie jede Variable in "${ }" ein. Beispiel:
${DSWEB_DATABASE_PROFILENAME}

Variablen für Job-Manager-Scripts und benutzerdefinierte Scripts

Die Variablen in der folgenden Tabelle können in jedem Job-Manager-Alertscript und benutzerdefinierten Alertscript verwendet werden. Diese Variablen stellen Werte dar, die mit dem Alert verwendet werden, wie Datenbankname und Job-ID.

Tabelle 1. Variablen, die in Job-Manager-Scripts und in benutzerdefinierten Scripts verwendet werden können
Variable Zurückgegebener Wert
DSWEB_DATABASE_NAME Der Name der physischen Datenbank.
DSWEB_DATABASE_PROFILENAME Der Name, der der Datenbank zugeordnet ist, wenn er auf der Seite für Datenbanken erstellt wird.

Dieser Wert ist nicht der Name der physischen Datenbank, sondern die eindeutige Kennung, die der Datenbank zugeordnet ist.

DSWEB_INSTANCE_NAME Der Name der DB2-Instanz.
DSWEB_JOB_ID Der Job, der die eindeutige ID des Scripts verwendet hat.
DSWEB_JOB_NAME Der Name oder die Bezeichnung, den oder die Sie für den aktuellen Job verwendet haben.
DSWEB_LOGGEDIN_USER Die Benutzer-ID, die zum Ausführen des Scripts verwendet wird. Diese Benutzer-ID kann auch die SSH-Benutzer-ID sein.

Variablen nur für Job-Manager-Scripts

Die Variablen in Tabelle 2 können nur in Job-Manager-Scripts verwendet werden. Diese Variablen sind nur definiert, wenn sie von der Funktion für Alertaktionen ausgelöst werden.

Tabelle 2. Variablen, die nur in Job-Manager-Scripts verwendet werden können
Variable Zurückgegebener Wert
DSWEB_ALERT_DETAIL Wichtige Details oder Kurzdarstellung des Alerts.
DSWEB_ALERT_ID Die Alert-ID für die angegebene Alertaktion.
DSWEB_ALERT_TYPE_NAME Der Typ von Alert wie z. B. der Datenbankstatus.

Prüfdatensätze aus einer Gruppe von Datenbanken extrahieren und terminieren

In diesem Beispiel ist das Datenbankadministratorteam des Unternehmens "Great Outdoor Company" für die Verwaltung von Hunderten von Datenbanken verantwortlich. Eine seiner Anforderungen ist es, in regelmäßigen Intervallen (z. B. wöchentlich) Prüfdatensätze aus einer Gruppe von Datenbanken zu extrahieren und dann die Datei mit begrenzter Satzlänge per FTP auf den zentralen Server zu übertragen. Von diesem zentralen Server aus sortiert eine angepasste Anwendung die Prüfinformationen. Die Einhaltung von Richtlinien und die Validierung von Benutzerzugriffen wird überprüft und alle Probleme werden für die Lösung markiert.

Das Datenbankadministratorteam entwickelt ein Script zum Extrahieren von Prüfdatensätzen mit der gespeicherten Prozedur SYSPROC.AUDIT_DELIM_EXTRACT. Auf SYSPROC.AUDIT_DELIM_EXTRACT kann über /mnt/dba/scripts/extractaudit.sh in allen ihren Linux- und UNIX-Systemen zugegriffen werden. SYSPROC.AUDIT_DELIM_EXTRACT verwendet DB2-Befehle und andere Dienstprogramme zum Extrahieren von Prüfdatensätzen und zum Kopieren dieser Datensätze auf den zentralen Server. Das vorhandene generische Script des Datenbankadministratorteams erwartet den Datenbanknamen beim Start als Argument. Das Datenbankadministratortteam will ein Script erstellen, das den Datenbanknamen extrahiert. Im Job-Manager können sie die Ausführung des Scripts in regelmäßigen Intervallen terminieren, um das Extrahieren des Datenbanknamens zu automatisieren.

Wenn Sie einem Script Variablen hinzufügen wollen, schließen Sie jede Variable in "${ }" ein. Beispiel:
${DSWEB_DATABASE_PROFILENAME}
echo ==========================================
echo TRACE: Jobname ist '${DSWEB_JOB_NAME}', Job-ID ist '${DSWEB_JOB_ID}'
echo TRACE: Job wird ausgeführt für Datenbankprofil '${DSWEB_DATABASE_PROFILENAME}' mit Benutzer-ID: '${DSWEB_LOGGEDIN_USER}'
echo TRACE: Der Datenbankname ist '${DSWEB_DATABASE_NAME}'
echo ==========================================
/mnt/dba/scripts/extractaudit.sh ${DSWEB_DATABASE_NAME}

Nachdem der Datenbankadministrator das Script ausführt, testet er die Ausgabe für eine andere Datenbank, um zu bestätigen, dass der Scriptaufruf im Job wie erwartet funktioniert. Der Datenbankadministrator schaltet in die Jobverlaufssicht um und überprüft im Ausführungsprotokoll, ob das Script erfolgreich ausgeführt wurde. Der Datenbankadministrator erstellt dann einen Zeitplan zum wöchentlichen Ausführen des Jobs im Abschnitt Zeitpläne. Der Datenbankadministrator wählt die Gruppe von Datenbanken und die Zeit aus. Außerdem wählte er aus, dass monatliche Zeitpläne für all die Datenbanken erstellt werden, für die dieser Job nur monatlich ausgeführt werden muss.


Feedback