Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Gespeicherte Prozeduren für Datenbanken von RDS für Db2
Mit den in diesem Thema beschrieben integrierten gespeicherten Prozeduren werden Datenbanken von Amazon RDS für Db2 verwaltet. Um diese Prozeduren auszuführen, muss der Masterbenutzer zuerst eine Verbindung mit der Datenbank rdsadmin herstellen.
Diese gespeicherten Prozeduren werden für eine Vielzahl von Aufgaben verwendet. Diese Liste ist nicht umfassend.
In den folgenden integrierten gespeicherten Prozeduren erhalten Sie Informationen zu deren Syntax, Parametern, Nutzungshinweisen und Beispielen.
Gespeicherte Prozeduren
rdsadmin.create_database
Erstellt eine Datenbank.
Syntax
db2 "call rdsadmin.create_database( 'database_name', 'database_page_size', 'database_code_set', 'database_territory', 'database_collation', 'database_autoconfigure_str', 'database_non-restrictive')"
Parameters
Anmerkung
Mit dieser gespeicherten Prozedur wird die Kombination der erforderlichen Parameter nicht validiert. Beim Aufrufen von rdsadmin.get_task_status kann die benutzerdefinierte Funktion aufgrund einer ungültigen Kombination von database_codeset, database_territory und database_collation einen Fehler zurückgeben. Weitere Informationen finden Sie in der IBM Db2-Dokumentation unter Choosing the code page, territory, and collation for your database
Der folgende Parameter ist erforderlich:
database_name-
Der Name der zu erstellenden Datenbank. Der Datentyp ist
varchar.
Die folgenden Parameter sind optional:
database_page_size-
Die Standard-Seitengröße der Datenbank. Zulässige Werte:
4096,8192,16384,32768. Der Datentyp istinteger. Der Standardwert ist8192.Wichtig
Amazon RDS unterstützt Write-Atomizität für Seiten mit 4 KiB, 8 KiB und 16 KiB. Im Gegensatz dazu besteht bei Seiten mit 32 KiB die Gefahr, dass Schreibvorgänge abgebrochen werden oder dass teilweise Daten auf die Festplatte geschrieben werden. Wenn Sie Seiten mit 32 KiB verwenden, empfehlen wir, eine zeitpunktbezogene Wiederherstellung und automatisierte Backups zu aktivieren. Andernfalls ist nach fehlerhaften Schreibvorgängen keine Wiederherstellung möglich. Weitere Informationen erhalten Sie unter Einführung in Backups und Wiederherstellen einer DB-Instance auf einen bestimmten Zeitpunkt für Amazon RDS.
database_code_set-
Der Codesatz für die Datenbank. Der Datentyp ist
varchar. Der Standardwert istUTF-8. database_territory-
Der zweistellige Ländercode für die Datenbank. Der Datentyp ist
varchar. Der Standardwert istUS. database_collation-
Die Sortierreihenfolge, die festlegt, wie die in der Datenbank gespeicherten Zeichenfolgen sortiert und verglichen werden. Der Datentyp ist
varchar.Zulässige Werte:
-
COMPATIBILITY– Sortierreihenfolge von IBM Db2 Version 2. -
EBCDIC_819_037– Lateinische ISO-Codepage, Sortierung; CCSID 037 (EBCDIC US-Englisch). -
EBCDIC_819_500– Lateinische ISO-Codepage, Sortierung; CCSID 500 (EBCDIC International). -
EBCDIC_850_037– Lateinische ASCII-Codepage, Sortierung; CCSID 037 (EBCDIC US-Englisch). -
EBCDIC_850_500– Lateinische ASCII-Codepage, Sortierung; CCSID 500 (EBCDIC International). -
EBCDIC_932_5026– Japanische ASCII-Codepage, Sortierung; CCSID 5026 (EBCDIC US-Englisch). -
EBCDIC_932_5035– Japanische ASCII-Codepage, Sortierung; CCSID 5035 (EBCDIC International). -
EBCDIC_1252_037– Lateinische Windows-Codepage, Sortierung; CCSID 037 (EBCDIC US-Englisch). -
EBCDIC_1252_500– Lateinische Windows-Codepage, Sortierung; CCSID 500 (EBCDIC International). -
IDENTITY– Standardsortierung. Die Zeichenfolgen werden Byte für Byte verglichen. -
IDENTITY_16BIT— Das Kompatibilitätskodierungsschema für UTF-16: 8-Bit (CESU-8) -Kollatierungssequenz. Weitere Informationen finden Sie im Unicode Technical Report #26auf der Website vom Unicode Consortium. -
NLSCHAR– Nur zur Verwendung mit der thailändischen Codepage (CP874). -
SYSTEM– Wenn SieSYSTEMverwenden, nutzt die Datenbank automatisch die Sortierreihenfolge fürdatabase_codesetunddatabase_territory.
Der Standardwert ist
IDENTITY.Darüber hinaus unterstützt RDS für Db2 die folgenden Sortierungsgruppen:
language-aware-collationundlocale-sensitive-collation. Weitere Informationen finden Sie in der IBM Db2-Dokumentation unter Choosing a collation for a Unicode database. -
database_autoconfigure_str-
Die Befehlssyntax
AUTOCONFIGURE, zum Beispiel'AUTOCONFIGURE APPLY DB'. Der Datentyp istvarchar. Der Standardwert ist eine leere Zeichenfolge oder Null.Weitere Informationen finden Sie in der IBM Db2-Dokumentation unter AUTOCONFIGURE command
. database_non-restrictive-
Die Gewährung von Standardberechtigungen und -berechtigungen innerhalb der Datenbank. Der Datentyp ist
varchar. Der Standardwert istN.Zulässige Werte:
-
N— Die erstellte Datenbank ist restriktiv und gewährt keine Berechtigungen oder Privilegien. -
Y— Die erstellte Datenbank ist nicht restriktiv und gewährt der speziellen GruppePUBLICeine Reihe von Berechtigungen. Weitere Informationen finden Sie in der IBM Db2 Dokumentation unter Standardberechtigungen, diebeim Erstellen einer Datenbank gewährt werden.
-
Nutzungshinweise
Wenn Sie den Parameter db2_compatibility_vector ändern möchten, erledigen Sie dies vor dem Erstellen einer Datenbank. Weitere Informationen finden Sie unter Festlegen des Parameters db2_compatibility_vector.
Spezielle Anforderungen:
-
Der an die Db2-Instance gesendete Befehl
CREATE DATABASEverwendet die OptionRESTRICTIVE. -
RDS für Db2 verwendet nur
AUTOMATIC STORAGE-Tabellenbereiche. -
RDS für Db2 verwendet die Standardwerte für
NUMSEGSundDFT_EXTENT_SZ. -
RDS für Db2 verwendet Speicherverschlüsselung und unterstützt keine Datenbankverschlüsselung.
Weitere Informationen zu diesen Anforderungen finden Sie in der IBM Db2-Dokumentation unter CREATE DATABASE command
Vor dem Aufrufen von rdsadmin.create_database müssen Sie eine Verbindung mit der Datenbank rdsadmin herstellen. Ersetzen Sie im folgenden Beispiel master_username und master_password durch Ihre RDS für Db2-DB-Instance-Informationen:
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Informationen zum Überprüfen des Erstellungsstatus einer Datenbank finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.create_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Im folgenden Beispiel wird eine Datenbank erstellt, die TESTJP mit einer korrekten Kombination der database_collation Parameter database_code_setdatabase_territory, und für Japan aufgerufen wird:
db2 "call rdsadmin.create_database('TESTJP', 4096, 'IBM-437', 'JP', 'SYSTEM')"
rdsadmin.copy_active_logs
Kopiert die aktiven Protokolle der RDS for Db2-Datenbank nach Amazon S3. Die Protokolle werden in ein Verzeichnis unter dem Speicherort hochgeladen, für ARCHIVE_LOG_COPY_TARGET_S3_ARN den Sie die Konfiguration vorgenommen haben.
Syntax
db2 "call rdsadmin.copy_active_logs( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, für die aktive Protokolle kopiert werden sollen. Der Datentyp ist
varchar.
Nutzungshinweise
Vor dem Aufruf rdsadmin.copy_active_logs müssen Sie die Archivprotokollkopie für die Datenbank konfigurieren. Weitere Informationen finden Sie unter Archivprotokolle nach Amazon S3 kopieren.
Aktive Protokolldateien werden in Ihren Amazon S3-Bucket unter hochgeladen s3_prefix rds-archive-log-copy/ dbi_resource_id / database_name - database_unique_id /active_logs_task_ task_id/. Das Amazon S3-Präfix verwendet die Konfiguration fürARCHIVE_LOG_COPY_TARGET_S3_ARN.
Informationen zur Überprüfung des Status des Kopierens aktiver Protokolle finden Sie unterrdsadmin.get_task_status.
Beispiele
Im folgenden Beispiel werden aktive Protokolle für eine Datenbank mit dem Namen kopiertTESTDB.
db2 "call rdsadmin.copy_active_logs(?, 'TESTDB')"
rdsadmin.deactivate_database
Deaktiviert eine Datenbank.
Syntax
db2 "call rdsadmin.deactivate_database( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der zu deaktivierenden Datenbank. Der Datentyp ist
varchar.
Nutzungshinweise
Sie können Datenbanken deaktivieren, um Speicherressourcen zu schonen oder andere Änderungen an der Datenbankkonfiguration vorzunehmen. Rufen Sie die gespeicherte Prozedur rdsadmin.activate_database auf, um deaktivierte Datenbanken wieder online zu schalten.
Durch Aufrufen der gespeicherten Prozedur rdsadmin.deactivate_database können Sie eine Datenbank auf einer Quell-DB-Instance während der Replikation nicht deaktivieren.
Informationen zum Überprüfen des Deaktivierungsstatus einer Datenbank finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.deactivate_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Im folgenden Beispiel wird die Datenbank TESTDB deaktiviert.
db2 "call rdsadmin.deactivate_database(?, 'TESTDB')"
rdsadmin.activate_database
Aktiviert eine Datenbank.
Informationen zu den Unterschieden zwischen rdsadmin.reactivate_database und rdsadmin.activate_database finden Sie unter Nutzungshinweise.
Syntax
db2 "call rdsadmin.activate_database( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der zu aktivierenden Datenbank. Der Datentyp ist
varchar.
Nutzungshinweise
Alle Datenbanken werden bei der Erstellung standardmäßig aktiviert. Wenn Sie eine Datenbank auf einer eigenständigen DB-Instance deaktivieren, um Speicherressourcen zu schonen oder andere Änderungen an der Datenbankkonfiguration vorzunehmen, rufen Sie die gespeicherte Prozedur rdsadmin.activate_database auf, um die Datenbank erneut zu aktivieren.
Mit dieser gespeicherten Prozedur wird nur eine Datenbank aktiviert, die sich auf einer eigenständigen DB-Instance befindet und durch Aufrufen der gespeicherten Prozedur rdsadmin.deactivate_database deaktiviert wurde. Um eine Datenbank auf einer Replikatquell-DB-Instance zu aktivieren, müssen Sie die gespeicherte Prozedur rdsadmin.reactivate_database aufrufen.
Informationen zum Überprüfen des Aktivierungsstatus einer Datenbank finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.activate_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Im folgenden Beispiel wird die Datenbank TESTDB aktiviert.
db2 "call rdsadmin.activate_database(?, 'TESTDB')"
rdsadmin.reactivate_database
Aktiviert eine Datenbank erneut.
Informationen zu den Unterschieden zwischen rdsadmin.activate_database und rdsadmin.reactivate_database finden Sie unter Nutzungshinweise.
Syntax
db2 "call rdsadmin.reactivate_database( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der erneut zu aktivierenden Datenbank. Der Datentyp ist
varchar.
Nutzungshinweise
Wenn Sie die gespeicherte Prozedur rdsadmin.reactivate_database aufrufen, wird mit dieser zuerst die Datenbank durch Aufrufen der gespeicherten Prozedur rdsadmin.deactivate_database deaktiviert und dann durch Aufrufen der gespeicherten Prozedur rdsadmin.activate_database aktiviert.
Nachdem Sie Änderungen an den Datenbankkonfigurationen vorgenommen haben, müssen Sie möglicherweise eine Datenbank auf einer DB-Instance von RDS für Db2 erneut aktivieren. Um zu ermitteln, ob Sie eine Datenbank erneut aktivieren müssen, stellen Sie eine Verbindung mit der Datenbank her und führen Sie db2 get db cfg show detail aus.
Eine Datenbank auf einer eigenständigen DB-Instance können Sie mit der gespeicherten Prozedur rdsadmin.reactivate_database erneut aktivieren. Wenn Sie die gespeicherte Prozedur rdsadmin.deactivate_database bereits aufgerufen haben, können Sie auch stattdessen die gespeicherte Prozedur rdsadmin.activate_database aufrufen.
Für eine Datenbank auf einer Replikatquell-DB-Instance müssen Sie die gespeicherte Prozedur rdsadmin.reactivate_database verwenden, um sie erneut zu aktivieren.
Informationen zum Überprüfen des Reaktivierungsstatus einer Datenbank finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.reactivate_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Im folgenden Beispiel wird die Datenbank TESTDB erneut aktiviert.
db2 "call rdsadmin.reactivate_database(?, 'TESTDB')"
rdsadmin.drop_database
Entfernt eine Datenbank.
Syntax
db2 "call rdsadmin.drop_database('database_name')"
Parameters
Der folgende Parameter ist erforderlich:
database_name-
Der Name der zu entfernenden Datenbank. Der Datentyp ist
varchar.
Nutzungshinweise
Sie können eine Datenbank durch Aufrufen von rdsadmin.drop_database nur dann entfernen, wenn die folgenden Bedingungen erfüllt sind:
-
Beim Erstellen der DB-Instance von RDS für Db2 mithilfe der Amazon-RDS-Konsole oder der AWS CLI haben Sie den Namen der Datenbank nicht angegeben. Weitere Informationen finden Sie unter Erstellen einer DB-Instance.
-
Sie haben die Datenbank durch Aufrufen der gespeicherten Prozedur rdsadmin.create_database erstellt.
-
Sie haben die Datenbank aus einem Offline- oder Sicherungsabbild durch Aufrufen der gespeicherten Prozedur rdsadmin.restore_database wiederhergestellt.
Vor dem Aufrufen von rdsadmin.drop_database müssen Sie eine Verbindung mit der Datenbank rdsadmin herstellen. Ersetzen Sie im folgenden Beispiel master_username und durch Ihre RDS für master_password Db2-DB-Instance-Informationen:
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Informationen zum Überprüfen des Löschstatus einer Datenbank finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.drop_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Im folgenden Beispiel wird die Datenbank TESTDB entfernt:
db2 "call rdsadmin.drop_database('TESTDB')"
rdsadmin.update_db_param
Aktualisiert die Datenbankparameter.
Syntax
db2 "call rdsadmin.update_db_param( 'database_name', 'parameter_to_modify', 'changed_value', 'restart_database')"
Parameters
Die folgenden Parameter sind erforderlich:
database_name-
Der Name der Datenbank, für die die Aufgabe ausgeführt werden soll. Der Datentyp ist
varchar. parameter_to_modify-
Der Name des zu ändernden Parameters. Der Datentyp ist
varchar. Weitere Informationen finden Sie unter Parameter von Amazon RDS für Db2. changed_value-
Der Wert, in den der Parameterwert geändert werden soll. Der Datentyp ist
varchar.
Der folgende Parameter ist optional:
restart_database-
Gibt an, ob RDS die Datenbank neu startet, sofern ein Neustart erforderlich ist. Der Datentyp ist
varchar. Umlogprimaryundlogfilsizzu ändern, legen Sie diesen Parameter auf'YES'fest.
Nutzungshinweise
Informationen zum Überprüfen des Aktualisierungsstatus von Datenbankparametern finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.update_db_param zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Beispiel 1: Aktualisieren eines Parameters
Im folgenden Beispiel wird der Parameter archretrydelay für die Datenbank TESTDB auf 100 aktualisiert:
db2 "call rdsadmin.update_db_param( 'TESTDB', 'archretrydelay', '100')"
Beispiel 2: Verzögern der Validierung von Objekten
Im folgenden Beispiel wird die Validierung von erstellten Objekten in der Datenbank TESTDB verzögert, um eine Überprüfung der Abhängigkeiten zu vermeiden:
db2 "call rdsadmin.update_db_param( 'TESTDB', 'auto_reval', 'deferred_force')"
rdsadmin.set_configuration
Konfiguriert spezifische Einstellungen für die Datenbank.
Syntax
db2 "call rdsadmin.set_configuration( 'name', 'value')"
Parameters
Die folgenden Parameter sind erforderlich:
name-
Der Name der Konfigurationseinstellung. Der Datentyp ist
varchar. value-
Der Wert der Konfigurationseinstellung. Der Datentyp ist
varchar.
Nutzungshinweise
In der folgenden Tabelle sind die Konfigurationseinstellungen angegeben, die Sie mit rdsadmin.set_configuration steuern können.
| Name | Description |
|---|---|
|
|
Gibt den S3-Bucket-ARN an, in den Archivprotokolle kopiert werden. Diese Einstellung gilt für alle Datenbanken auf der DB-Instance, die Archivprotokolle nach Amazon S3 kopieren aktiviert wurden. |
|
|
Gibt die maximale Passwortlänge an. Der Wert muss zwischen 8 und 128 Zeichen lang sein. Der Standardwert ist 128. |
|
|
Gibt die Mindestlänge des Kennworts an. Der Wert muss zwischen 8 und 128 Zeichen lang sein. Der Standardwert ist 8. |
|
|
Gibt die Mindestanzahl an numerischen Zeichen an, die in einem Passwort erforderlich sind. Der Wert muss zwischen 0 und 128 liegen. Der Standardwert ist 0. |
|
|
Gibt die Mindestanzahl von Großbuchstaben an, die in einem Passwort erforderlich sind. Der Wert muss zwischen 0 und 128 liegen. Der Standardwert ist 0. |
|
|
Gibt die Mindestanzahl von Kleinbuchstaben an, die in einem Passwort erforderlich sind. Der Wert muss zwischen 0 und 128 liegen. Der Standardwert ist 0. |
|
|
Gibt die Konfiguration der Kennwortregeln an. Gültige Werte sind |
|
|
Die Anzahl der während einer Wiederherstellung zu erstellenden Puffer. Dieser Wert muss kleiner als die Gesamtspeichergröße der DB-Instance-Klasse sein. Wenn diese Einstellung nicht konfiguriert ist, legt Db2 den Wert fest, der während der Wiederherstellung verwendet werden soll. Weitere Informationen finden Sie in der IBM Db2 Dokumentation unter dem Befehl |
|
|
Die Anzahl der Pfade (oder I/O Streams), die während einer Wiederherstellung aus Amazon S3 verwendet werden sollen. Um diese Konfigurationseinstellung verwenden zu können, benötigen Sie mehrere Sicherungsdateien. Dieser Wert kann die Leistung bei der Wiederherstellung von Datenbanken mit großen Datenmengen verbessern, da mehrere Datenbanksicherungsdateien parallel wiederhergestellt werden. Wir empfehlen, diesen Wert so einzustellen, dass er der Anzahl Ihrer Datenbanksicherungsdateien entspricht. Weitere Informationen finden Sie in der IBM Db2 Dokumentation unter dem Befehl |
|
|
Die Anzahl der während einer Wiederherstellung zu erstellenden Puffermanipulatoren. Dieser Wert muss kleiner als die doppelte Anzahl der vCPUs für die DB-Instance sein. Wenn diese Einstellung nicht konfiguriert ist, legt Db2 den Wert fest, der während der Wiederherstellung verwendet werden soll. Weitere Informationen finden Sie in der IBM Db2 Dokumentation unter dem Befehl |
|
|
Gibt an, ob Backup-Daten während der Wiederherstellung direkt gestreamt werden sollen, anstatt zuerst das gesamte Backup auf Ihre RDS for Db2-DB-Instance herunterzuladen und dann zu extrahieren. Die Einstellung |
Anmerkung
Das folgende Verhalten gilt für die Kennwort-Konfigurationsparameter:
-
RDS for Db2 setzt automatisch
RDS_PASSWORD_RULESauf,CUSTOMwenn ein Passwortparameter festgelegt ist. -
Wenn Sie
RDS_PASSWORD_RULESauf einstellenDEFAULT, setzt RDS for Db2 alle Kennwortparameter auf ihre Standardwerte zurück. -
Sie können keinen Kennwortparameter auf setzen.
NULLUm alle Kennwortparameter auf ihre Standardwerte zurückzusetzen, verwenden Sieset_configuration('RDS_PASSWORD_RULES', 'DEFAULT').
Beispiele
Beispiel 1: Angabe der Anzahl der zu erstellenden Puffer
Im folgenden Beispiel wird die Konfiguration RESTORE_DATABASE_NUM_BUFFERS auf 150 festgelegt.
db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_NUM_BUFFERS', '150')"
Beispiel 2: Angabe der Anzahl der zu erstellenden Puffermanipulatoren
Im folgenden Beispiel wird die Konfiguration RESTORE_DATABASE_PARALLELISM auf 8 festgelegt.
db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_PARALLELISM', '8')"
Beispiel 3: Angabe der Anzahl der Pfade oder I/O Streams, die bei der Wiederherstellung verwendet werden sollen
Im folgenden Beispiel wird die Konfiguration RESTORE_DATABASE_NUM_MULTI_PATHS auf 5 festgelegt.
db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_NUM_MULTI_PATHS', '5')"
Beispiel 4: Einstellung der Wiederherstellung auf das Streamen von Backup-Daten
Im folgenden Beispiel wird die Konfiguration USE_STREAMING_RESTORE auf TRUE festgelegt.
db2 "call rdsadmin.set_configuration( 'USE_STREAMING_RESTORE', 'TRUE')"
rdsadmin.show_configuration
Gibt die aktuellen Einstellungen zurück, die Sie mithilfe der gespeicherten Prozedur rdsadmin.set_configuration festlegen können.
Syntax
db2 "call rdsadmin.show_configuration( 'name')"
Parameters
Der folgende Parameter ist optional:
name-
Der Name der Konfigurationseinstellung, zu der Informationen zurückgegeben werden sollen. Der Datentyp ist
varchar.Die folgenden Konfigurationsnamen sind gültig:
-
RESTORE_DATABASE_NUM_BUFFERS— Die Anzahl der Puffer, die während eines Wiederherstellungsvorgangs erstellt werden müssen. -
RESTORE_DATABASE_PARALLELISM— Die Anzahl der Puffermanipulatoren, die während eines Wiederherstellungsvorgangs erstellt werden sollen. -
RESTORE_DATABASE_NUM_MULTI_PATHS— Die Anzahl der Pfade (oder I/O Streams), die während einer Wiederherstellung aus Amazon S3 verwendet werden sollen. -
USE_STREAMING_RESTORE— Gibt an, ob Backup-Daten direkt während der Wiederherstellung gestreamt werden sollen, anstatt zuerst die gesamten Backup-Daten auf Ihre RDS for Db2-DB-Instance herunterzuladen und dann zu extrahieren.
-
Nutzungshinweise
Wenn Sie den Namen einer Konfigurationseinstellung nicht festlegen, gibt rdsadmin.show_configuration Informationen für alle Konfigurationseinstellungen zurück, die Sie mithilfe der gespeicherten Prozedur rdsadmin.set_configuration festlegen können.
Beispiele
Im folgenden Beispiel werden Informationen zur aktuellen Konfiguration RESTORE_DATABASE_PARALLELISM zurückgegeben.
db2 "call rdsadmin.show_configuration( 'RESTORE_DATABASE_PARALLELISM')"
rdsadmin.backup_database
Sichert eine Datenbank von einer RDS for Db2-DB-Instance in einem Amazon S3-Bucket.
Syntax
db2 "call rdsadmin.backup_database( ?, 'database_name', 's3_bucket_name', 's3_prefix', 'backup_type', 'compression_option', 'util_impact_priority', 'num_files', 'parallelism', 'num_buffers')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Die folgenden Eingabeparameter sind erforderlich:
database_name-
Der Name der Zieldatenbank auf einer RDS for Db2-DB-Instance, die gesichert werden soll. Der Datentyp ist
varchar.Die Datenbank muss in der DB-Instance vorhanden sein. Sie können die
rdsadminDatenbank nicht sichern. s3_bucket_name-
Der Name des Amazon S3-Buckets, in dem sich Ihr Backup befinden soll. Der Datentyp ist
varchar.Der S3-Bucket muss vor dem Aufruf vorhanden sein
rdsadmin.backup_database, sich in derselben AWS-Region Zieldatenbank in der RDS for Db2-DB-Instance befinden, die Sie sichern möchten, und über die der DB-Instance zugeordnete IAM-Rolle zugänglich sein. s3_prefix-
Das Präfix des Pfads zu Amazon S3, in den RDS für Db2 die Sicherungsdateien hochlädt. Der Datentyp ist
varchar.Das Präfix ist auf 1024 Zeichen begrenzt. Es darf keinen führenden oder nachfolgenden Schrägstrich (/) enthalten. Aufgrund einer Einschränkung beim IBM Streaming zu Amazon S3 empfehlen wir, dass das Präfix Unterverzeichnisse enthält.
Zur besseren Dateiverwaltung erstellt RDS for Db2 danach zusätzliche Verzeichnisse.
s3_prefixRDS for Db2 lädt alle Sicherungsdateien in das Verzeichnis hoch.s3_prefix/dbi_resource_id/db_nameWenn Sie einennum_fileshöheren Wert als1angeben, enthält dasdb_nameVerzeichnis mehr als eine Sicherungsdatei.Im Folgenden finden Sie ein Beispiel für einen Amazon S3-Speicherort für Sicherungsdateien. Im Beispiel
backups/dailyist der Wert für dens3_prefixParameter festgelegt.backups/daily/db-5N7FXOY4GDP7RG2NSH2ZTAI2W4/SAMPLEDB backup_type-
Der Sicherungstyp, der bestimmt, ob die Datenbank während der Sicherung verfügbar bleibt. Der Datentyp ist
varchar.Zulässige Werte:
-
OFFLINE— Die Datenbank ist während des Backups nicht verfügbar. Dieser Typ ist schneller, verursacht jedoch Ausfallzeiten. -
ONLINE— Die Datenbank bleibt während des Backups verfügbar.ONLINEist standardmäßig aufINCLUDE LOGSfestgelegt.
-
Die folgenden Parameter sind optional:
compression_option-
Die Art des verwendeten Komprimierungsalgorithmus, der sich auf die Backup-Zeit, die CPU-Auslastung und die Speicherkosten auswirkt. Der Datentyp ist
varchar. Der Standardwert istNONE.Zulässige Werte:
-
NONE— Die größte Dateigröße, die geringste CPU-Auslastung und die günstigsten Speicherkosten. -
STANDARD— Standard-Db2-Komprimierung. Verwendungenlibdb2compr.so. -
ZLIB— Verbesserte Db2-Komprimierung. Nutztlibdb2zcompr.so, ist aber teurer CPU-intensive und kostet Speicherplatz am teuersten.
-
util_impact_priority-
Die Einstellung, mit der die Auswirkungen des Backups auf die Systemressourcen gesteuert werden. Der Datentyp ist
integer. Gültige Werte:1—100(von niedrig nach hoch). Der Standardwert ist50.Niedrigere Werte reduzieren die Auswirkungen der Sicherung auf die Systemressourcen, können jedoch die Zeit verlängern, die für die Sicherung der Datenbank benötigt wird. Höhere Werte können die Sicherung der Datenbank schneller abschließen, können sich jedoch auf andere Vorgänge auswirken. Die tatsächlichen Auswirkungen hängen von der Gesamtsystemauslastung und der
util_impact_limEinstellung ab. Sie können dieutil_impact_limEinstellung in Parametergruppen anzeigen und ändern. Weitere Informationen finden Sie unter Parameter von Amazon RDS für Db2. num_files-
Die Anzahl der parallelen Upload-Streams zu Amazon S3. Der Datentyp ist
integer. Gültige Werte:1–256.Wir empfehlen, diesen Parameter erst festzulegen, nachdem Sie die Backup-Leistung auf den Standard eingestellt haben, den Amazon RDS automatisch berechnet. Höhere Werte könnten die Leistung bei großen Backups verbessern, insbesondere bei Verbindungen mit hoher Bandbreite, aber ab einem bestimmten Punkt verschlechtern höhere Werte die Leistung. Stellen Sie außerdem sicher, dass Sie Ihre verfügbaren Systemressourcen und Netzwerkkapazitäten berücksichtigen.
parallelism-
Die Anzahl der Tablespaces, die das Backup-Utility parallel lesen kann. Der Datentyp ist
integer. Gültige Werte:1–256.Wir empfehlen, diesen Parameter erst festzulegen, nachdem Sie die Backup-Leistung auf den Standardwert eingestellt haben, den die Db2-Engine automatisch als optimalen Wert berechnet. Wenn Sie diesen Parameter festlegen, validiert Amazon RDS anhand der verfügbaren Prozessoren und führt die Backup-Anfrage nicht aus, wenn die Verarbeitungsleistung nicht ausreicht.
num_buffers-
Die Anzahl der zu verwendenden Puffer. Der Datentyp ist
integer. Gültige Werte:1–268435456.Wir empfehlen, diesen Parameter erst festzulegen, nachdem Sie die Backup-Leistung auf die Standardeinstellung überprüft haben, die Amazon RDS automatisch auf der Grundlage des Speichers berechnet. Wenn Sie diesen Parameter festlegen, validiert Amazon RDS anhand des verfügbaren Speichers und führt die Backup-Anfrage nicht aus, wenn der verfügbare Speicher nicht ausreicht. Wenn Sie Backups an mehreren Speicherorten durchführen (
num_filesist auf mehr als gesetzt1), könnte eine höhere Anzahl von Puffern die Leistung verbessern. Wenn Sie diese Option nicht festlegencompression_optionNONE, können Sie die Leistung verbessern, indem Sienum_buffersundparallelismerhöhen.
Nutzungshinweise
Diese gespeicherte Prozedur erstellt asynchrone Sicherungsaufgaben, die das Backup Ihrer Datenbank mithilfe der Amazon S3-Integration direkt in Ihren Amazon S3-Bucket streamen. Sie können Backups sowohl von Ihrem lokalen Server als auch von einer RDS for Db2-DB-Instance erstellen, sie zu Amazon S3 streamen und sie dann wiederherstellen, wo immer Sie möchten. Hinweise zur Wiederherstellung einer Datenbank auf einer RDS for Db2-DB-Instance finden Sie unter. rdsadmin.restore_database
Bevor Sie die gespeicherte Prozedur aufrufen, lesen Sie die folgenden Hinweise:
-
Sie können jeweils nur eine Datenbank sichern.
-
Sie können eine Sicherung und Wiederherstellung nicht zusammen auf einer DB-Instance durchführen.
-
Die serverseitige Amazon S3-Verschlüsselung mit AWS KMS (SSE-KMS) wird nicht unterstützt. Selbst wenn der S3-Bucket auf eingestellt ist SSE-KMS, verwenden die in den S3-Bucket hochgeladenen Dateien keine SSE-KMS Verschlüsselung.
-
Um die Sicherungsdateien an Amazon S3 zu streamen, müssen Sie die Integration bereits konfiguriert haben. Weitere Informationen finden Sie unter Integration einer DB-Instance von Amazon RDS für Db2 mit Amazon S3.
-
Damit eine RDS for Db2-DB-Instance mit Amazon S3 interagieren kann, benötigen Sie eine VPC und einen Amazon S3-Gateway-Endpunkt, den private Subnetze verwenden können. Weitere Informationen erhalten Sie unter Schritt 1: Erstellen eines VPC-Gateway-Endpunkts für Amazon S3 und Schritt 2: Überprüfen, ob der VPC-Gateway-Endpunkt für Amazon S3 vorhanden ist.
Vor dem Aufrufen von rdsadmin.backup_database müssen Sie eine Verbindung mit der Datenbank rdsadmin herstellen. Ersetzen Sie im folgenden Beispiel master_username und master_password durch Ihre RDS for Db2-DB-Instance-Informationen:
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Stellen Sie sicher, dass Sie die Verbindung beenden, nachdem Sie Ihre Datenbank gesichert haben.
terminate
Hinweise zur Überprüfung des Status der Sicherung einer Datenbank finden Sie unterrdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.backup_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Alle Beispiele sichern eine Datenbank, die im Amazon S3-Bucket aufgerufen wurde, amzn-s3-demo-bucket und setzen den Wert s3_prefix aufbackups/daily. MYDB
Beispiel #1: Angabe einer Datenbank, die offline und nicht verfügbar ist, mit durchschnittlicher Auslastung und einem einzelnen Upload-Stream
Im folgenden Beispiel ist die Datenbank offline, was schneller ist, aber bedeutet, dass die Datenbank während des Backups nicht verfügbar ist. Das Beispiel führt keine Komprimierung der Dateien durch, hat mittlere Auswirkungen auf die Systemressourcen und verwendet einen einzigen Upload-Stream zu Amazon S3.
db2 call "rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'OFFLINE', 'NONE', 50, 1)"
Beispiel #2: Die Datenbank wird online angegeben und ist mit verbesserter Komprimierung, mittlerer Auslastung und wenigen parallelen Upload-Streams verfügbar
Im folgenden Beispiel ist die Datenbank online und während des Backups verfügbar. Das Beispiel führt eine erweiterte Komprimierung durch, was zu einer kleinen Dateigröße führt, die es aber ist CPU-intensive. Es hat eine etwas höhere Auswirkung auf die Systemressourcen als der Durchschnitt und verwendet fünf Upload-Streams zu Amazon S3.
db2 call "rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'ONLINE', 'ZLIB', 60, 5)"
Beispiel #3: Angabe der Datenbank, die offline und nicht verfügbar ist, mit Standardwerten und Systemberechnungen
Im folgenden Beispiel ist die Datenbank offline, was schneller ist, aber bedeutet, dass die Datenbank während des Backups nicht verfügbar ist. Das Beispiel verwendet die Standardkomprimierung der Dateien und wirkt sich auf die Systemressourcen aus. Es ermöglicht RDS for Db2 auch, die Anzahl der parallelen Upload-Streams zu Amazon S3, die parallel zu lesenden Tablespaces und die zu verwendenden Puffer zu berechnen.
db2 "call rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'OFFLINE')"
Beispiel #4: Angabe einer Datenbank, die offline und nicht verfügbar ist, ohne Komprimierung, hohe Auslastung und benutzerdefinierte Berechnungen
Im folgenden Beispiel ist die Datenbank offline, was zwar schneller ist, aber bedeutet, dass die Datenbank während des Backups nicht verfügbar ist. Das Beispiel führt keine Komprimierung der Dateien durch, hat eine hohe Auswirkung auf die Systemressourcen und verwendet 20 Upload-Streams zu Amazon S3. Es legt die maximale Anzahl von Tablespaces fest, die parallel gelesen werden sollen. Dies kann dazu führen, dass die Backup-Anfrage fehlschlägt, wenn die Verarbeitungsleistung nicht ausreicht. Außerdem wird die maximale Anzahl der zu verwendenden Puffer festgelegt, was dazu führen kann, dass die Backup-Anfrage fehlschlägt, wenn der Arbeitsspeicher nicht ausreicht.
db2 "call rdsadmin.backup_database( ?, 'MYDB', 'amzn-s3-demo-bucket', 'backups/daily', 'OFFLINE', 'NONE', 90, 20, 256, 268435456)"
rdsadmin.restore_database
Stellt eine Datenbank aus einem Amazon-S3-Bucket für die DB-Instance von RDS für Db2 wieder her.
Syntax
db2 "call rdsadmin.restore_database( ?, 'database_name', 's3_bucket_name', 's3_prefix',restore_timestamp, 'backup_type')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Die folgenden Eingabeparameter sind erforderlich:
database_name-
Der Name der Zieldatenbank, die in RDS für Db2 wiederhergestellt werden soll. Der Datentyp ist
varchar.Wenn der Quelldatenbankname beispielsweise lautete
TESTDBund Sie ihn auf gesetzt habenNEWDB, stellt Amazon RDSdatabase_namedie Datenbank als Quelldatenbank wieder her.NEWDB s3_bucket_name-
Der Name des Amazon-S3-Bucket, in dem sich das Backup befindet. Der Datentyp ist
varchar. s3_prefix-
Das Präfix, das beim Download für den Dateiabgleich verwendet werden soll. Der Datentyp ist
varchar.Wenn dieser Parameter leer ist, werden alle Dateien im Amazon S3-Bucket verarbeitet. Nachfolgend ist ein Beispielpräfix angegeben:
backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101 restore_timestamp-
Der Zeitstempel für das Abbild des Datenbank-Backups. Der Datentyp ist
varchar.Der Zeitstempel ist im Namen der Backup-Datei enthalten. Beispielsweise ist
20230615010101der Zeitstempel für den DateinamenSAMPLE.0.rdsdb.DBPART000.20230615010101.001. backup_type-
Der Typ des Backups. Der Datentyp ist
varchar. Zulässige Werte:OFFLINE,ONLINE.Verwenden Sie
ONLINEfür Migrationen mit geringster Ausfallzeit. Weitere Informationen finden Sie unter Migration von Linux to Linux mit nahezu keiner Ausfallzeit für Amazon RDS for Db2.
Nutzungshinweise
Sie können diese gespeicherte Prozedur verwenden, um eine Db2-Datenbank zu einer DB-Instance von RDS für Db2 zu migrieren. Weitere Informationen finden Sie unter Nutzung von AWS Services zur Migration von Daten von Db2 zu Amazon RDS for Db2. Sie können diese gespeicherte Prozedur auch verwenden, um mehrere Kopien derselben Datenbank mit unterschiedlichen Datenbanknamen zu erstellen, die dasselbe Wiederherstellungsabbild nutzen.
Bevor Sie die gespeicherte Prozedur aufrufen, lesen Sie die folgenden Hinweise:
-
Bevor Sie eine Datenbank wiederherstellen, müssen Sie Speicherplatz für Ihre RDS for Db2-DB-Instance bereitstellen, der größer ist als die ursprüngliche Db2-Datenbank auf der Festplatte. Wenn Sie diese Option aktiviert haben
USE_STREAMING_RESTORE, streamt Amazon RDS bei der Wiederherstellung Ihres Backups die Sicherungsdateien direkt von Ihrem S3-Bucket auf Ihre RDS for Db2-DB-Instance. Wenn Sie die Option nicht aktivierenUSE_STREAMING_RESTORE, müssen Sie Speicherplatz für Ihre RDS for Db2-DB-Instance bereitstellen, der gleich oder größer als die Summe der Backup-Größe plus der ursprünglichen Db2-Datenbank auf der Festplatte ist. Weitere Informationen finden Sie unter Insufficient disk space. -
Wenn Sie das Backup wiederherstellen, extrahiert Amazon RDS die Backup-Datei auf der DB-Instance von RDS für Db2. Jede Backup-Datei darf maximal 5 TB umfassen. Wenn eine Sicherungsdatei größer als 5 TB ist, müssen Sie die Sicherungsdatei in kleinere Dateien aufteilen.
-
Um alle Dateien mithilfe der gespeicherten Prozedur
rdsadmin.restore_databasewiederherzustellen, geben Sie das Dateinummernsuffix nicht nach dem Zeitstempel in die Dateinamen ein. Das stellt beispielsweise die folgendens3_prefixbackupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101Dateien wieder her:SAMPLE.0.rdsdb.DBPART000.20230615010101.001 SAMPLE.0.rdsdb.DBPART000.20230615010101.002 SAMPLE.0.rdsdb.DBPART000.20230615010101.003 SAMPLE.0.rdsdb.DBPART000.20230615010101.004 SAMPLE.0.rdsdb.DBPART000.20230615010101.005 -
RDS für Db2 unterstützt keine nichtautomatische Speicherung. Weitere Informationen finden Sie unter Tablespaces not restored.
-
RDS für Db2 unterstützt keine Routinen ohne Fencing. Weitere Informationen finden Sie unter Non-fenced routines not allowed.
-
Um die Leistung von Datenbankwiederherstellungsvorgängen zu verbessern, können Sie die Anzahl der Puffer, Puffermanipulatoren und die Anzahl mehrerer Sicherungspfade konfigurieren, die RDS verwenden soll. Um die Speichernutzung zu optimieren und die Leistung potenziell zu verbessern, können Sie auch direkt ein Backup von Amazon S3 streamen. Verwenden Sie rdsadmin.show_configuration, um die aktuelle Konfiguration zu überprüfen. Verwenden Sie rdsadmin.set_configuration, um die Konfiguration zu ändern.
Informationen zum Onlineschalten der Datenbank und zum Anwenden zusätzlicher Transaktionsprotokolle nach dem Wiederherstellen der Datenbank finden Sie unter rdsadmin.rollforward_database.
Informationen zum Überprüfen des Wiederherstellungsstatus der Datenbank finden Sie unter rdsadmin.get_task_status.
Informationen zu Fehlermeldungen, die beim Aufrufen von rdsadmin.restore_database zurückgegeben werden, finden Sie unter Fehler bei gespeicherten Prozeduren.
Beispiele
Im folgenden Beispiel wird ein Offline-Backup mit einer einzelnen Datei oder mehreren Dateien wiederhergestellt, die Folgendes enthalten s3_prefixbackupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101:
db2 "call rdsadmin.restore_database( ?, 'SAMPLE', 'amzn-s3-demo-bucket', 'backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101', 20230615010101, 'OFFLINE')"
rdsadmin.rollforward_database
Schaltet die Datenbank online und wendet zusätzliche Transaktionsprotokolle an, nachdem eine Datenbank durch Aufrufen von rdsadmin.restore_database wiederhergestellt wurde.
Syntax
db2 "call rdsadmin.rollforward_database( ?, 'database_name', 's3_bucket_name',s3_prefix, 'rollforward_to_option', 'complete_rollforward')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Die folgenden Eingabeparameter sind erforderlich:
database_name-
Der Name der Datenbank, für die der Vorgang ausgeführt werden soll. Der Datentyp ist
varchar. s3_bucket_name-
Der Name des Amazon-S3-Bucket, in dem sich das Backup befindet. Der Datentyp ist
varchar. s3_prefix-
Das Präfix, das beim Download für den Dateiabgleich verwendet werden soll. Der Datentyp ist
varchar.Wenn dieser Parameter leer ist, werden alle Dateien im S3-Bucket heruntergeladen. Nachfolgend ist ein Beispielpräfix angegeben:
logsfolder/Wichtig
Das S3-Präfix muss auf einen Speicherort verweisen, der nur Db2-Archivprotokolldateien im Standardbenennungsformat enthält (z. B.).
Ssequence.LOGS0000001.LOGWenn das Präfix Dateien enthält, die keine Archivprotokolldateien sind, wie Backup-Images, Metadatendateien oder andere Objekte, schlägt der Rollforward-Vorgang mit einem Fehler fehl. Verwenden Sie ein dediziertes S3-Präfix für Archivierungsprotokolle, das von Ihren Sicherungsdateien getrennt ist.
Die folgenden Eingabeparameter sind optional:
rollforward_to_option-
Der Punkt, zu dem Sie ein Rollforward ausführen möchten. Der Datentyp ist
varchar. Gültige Werte:END_OF_LOGS,END_OF_BACKUPmit dem Zeitstempel im FormatYYYY-MM-DD-HH.MM.SS. Der Standardwert istEND_OF_LOGS. complete_rollforward-
Gibt an, ob der Rollforward-Prozess abgeschlossen werden soll. Der Datentyp ist
varchar. Der Standardwert istTRUE.Wenn
TRUE, dann ist die Datenbank nach Abschluss online und es kann darauf zugegriffen werden. WennFALSE, dann verbleibt die Datenbank im StatusROLL-FORWARD PENDING.
Nutzungshinweise
Sie können rds.rollforward_database für ein Online-Backup mit enthaltenen Protokollen verwenden, die in vielen verschiedenen Szenarien On-Premises erstellt werden.
Szenario 1: Wiederherstellen der Datenbank, Ausführen von Rollforward der enthaltenen Protokolle und Onlineschalten der Datenbank
Nachdem rdsadmin.restore_database() abgeschlossen wurde, verwenden Sie die Syntax in Beispiel 1, um die Datenbank mit den Transaktionsprotokollen online zu schalten.
Szenario 2: Onlineschalten der Datenbank, ohne ein Rollforward der enthaltenen Protokolle auszuführen
Nachdem rdsadmin.restore_database() abgeschlossen wurde, verwenden Sie die Syntax in Beispiel 2, um die Datenbank ohne die Transaktionsprotokolle online zu schalten.
Szenario 3: Ausführen eines Rollforward der im Backup enthaltenen Protokolle und Anwenden zusätzlicher Transaktionsprotokolle, wenn sie On-Premises erstellt werden
Nachdem rdsadmin.restore_database() abgeschlossen wurde, verwenden Sie die Syntax in Beispiel 3 oder Beispiel 4, um ein Rollforward der Protokolle auszuführen, ohne die Datenbank online zu schalten.
Wenn Sie complete_rollforward auf FALSE festlegen, befindet sich die Datenbank im Status ROLL-FORWARD PENDING und ist offline. Um die Datenbank online zu schalten, müssen Sie rdsadmin.complete_rollforward aufrufen.
Informationen zum Überprüfen des Rollforward-Status der Datenbank finden Sie unter rdsadmin.rollforward_status.
Wichtig
Das S3-Präfix, für das Sie angeben, rdsadmin.rollforward_database darf nur Archivprotokolldateien in diesem S Format enthalten. Platzieren Sie keine Backup-Images, Metadatendateien oder andere Nicht-Log-Objekte unter demselben S3-Präfix, das Sie für Rollforward verwenden. Wenn das Präfix Dateien enthält, die keine Archivprotokolldateien sind, schlägt der Rollforward-Vorgang fehl. Speichern Sie Ihre Archivprotokolle in einem speziellen Präfix, das von Ihren Datenbank-Backupdateien getrennt ist.sequence.LOG
Beispiele
Beispiel 1: Onlineschalten der Datenbank mit Transaktionsprotokollen
Im folgenden Beispiel wird ein Rollforward zu einem Online-Backup der Datenbank mit Transaktionsprotokollen ausgeführt und die Datenbank dann online geschaltet:
db2 "call rdsadmin.rollforward_database( ?, null, null, 'END_OF_LOGS', 'TRUE')"
Beispiel 2: Onlineschalten der Datenbank ohne Transaktionsprotokolle
Im folgenden Beispiel wird ein Rollforward zu einem Online-Backup der Datenbank ohne Transaktionsprotokolle durchgeführt und die Datenbank dann online geschaltet:
db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'archiveLogs/', 'END_OF_BACKUP', 'TRUE')"
Anmerkung
Das archiveLogs/ Präfix darf nur Archivprotokolldateien in diesem S Format enthalten.sequence.LOG
Beispiel 3: Nicht-Onlineschalten der Datenbank mit Transaktionsprotokollen
Im folgenden Beispiel wird ein Rollforward zu einem Online-Backup der Datenbank mit Transaktionsprotokollen ausgeführt und die Datenbank dann nicht online geschaltet:
db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', null, 'archiveLogs/TESTDB', 'END_OF_LOGS', 'FALSE')"
Anmerkung
Wenn Null s3_bucket_name ist, verwendet der Rollforward Protokolldateien, die bereits auf der DB-Instance von einer früheren Wiederherstellung mit den enthaltenen Protokollen vorhanden sind. Wenn Sie eine angebens3_prefix, stellen Sie sicher, dass sie nur Archivprotokolldateien enthält.
Beispiel 4: Nicht-Onlineschalten der Datenbank mit zusätzlichen Transaktionsprotokollen
Im folgenden Beispiel wird ein Rollforward zu einem Online-Backup der Datenbank mit zusätzlichen Transaktionsprotokollen ausgeführt und die Datenbank dann nicht online geschaltet:
db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/S0000155.LOG', 'END_OF_LOGS', 'FALSE')"
rdsadmin.rollforward_status
Gibt die Ausgabe von ROLLFORWARD DATABASE
zurück.database_name QUERY STATUS
Syntax
db2 "call rdsadmin.rollforward_status( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, für die der Vorgang ausgeführt werden soll. Der Datentyp ist
varchar.
Nutzungshinweise
Nach dem Aufrufen von rdsadmin.rollforward_database können Sie rdsadmin.rollforward_status aufrufen, um den Status des Rollforward in der Datenbank zu überprüfen.
Informationen zum Überprüfen des Status dieser gespeicherten Prozedur finden Sie unter rdsadmin.get_task_status.
rdsadmin.complete_rollforward
Schaltet die Datenbank aus dem Status ROLL-FORWARD PENDING online.
Syntax
db2 "call rdsadmin.complete_rollforward( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, die Sie online schalten möchten. Der Datentyp ist
varchar.
Nutzungshinweise
Wenn Sie rdsadmin.rollforward_database aufgerufen haben, wobei complete_rollforward auf FALSE festgelegt ist, befindet sich die Datenbank im Status ROLL-FORWARD PENDING und ist offline. Rufen Sie rdsadmin.complete_rollforward auf, um den Rollforward-Prozess abzuschließen und die Datenbank online zu schalten.
Informationen zum Überprüfen des Abschlussstatus des Rollforward-Prozesses finden Sie unter rdsadmin.rollforward_status.
Beispiele
Im folgenden Beispiel wird die Datenbank TESTDB online geschaltet:
db2 "call rdsadmin.complete_rollforward( ?, 'TESTDB')"
rdsadmin.db2pd_command
Sammelt Informationen zu einer Datenbank von RDS für Db2.
Syntax
db2 "call rdsadmin.db2pd_command( 'db2pd_cmd', 's3_bucket_name', 's3_prefix')"
Parameters
Der folgende Eingabeparameter ist erforderlich:
db2pd_cmd-
Der Name des Befehls
db2pd, den Sie ausführen möchten. Der Datentyp istvarchar.Der Parameter muss mit einem Bindestrich beginnen. Eine Liste der Parameter finden Sie in der IBM Db2-Dokumentation unter db2pd - Monitor and troubleshoot Db2 database command
. Die folgenden Optionen werden nicht unterstützt:
-
-addnode -
-alldatabases -
-alldbp -
-alldbs -
-allmembers -
-alm_in_memory -
-cfinfo -
-cfpool -
-command -
-dbpartitionnum -
-debug -
-dump -
-file | -o -
-ha -
-interactive -
-member -
-pagesAnmerkung
-pages summarywird unterstützt. -
-pdcollection -
-stack -
-totalmem
Die Unteroption
filewird nicht unterstützt. Beispiel:db2pd -db testdb -tcbstats file=tcbstat.out.Die Verwendung der Option
stackswird nicht unterstützt. Beispiel:db2pd -edus interval=5 top=10 stacks. -
Die folgenden Parameter sind optional:
s3_bucket_name-
Der Name des Amazon S3-Buckets, in den Sie die Ausgabedatei hochladen möchten. Der Datentyp ist
varchar. Wenns3_bucket_nameweder angegeben noch angegebens3_prefixwird, können die gesammelten Informationen durch einen Anruf abgerufen werdenrdsadmin.get_task_status. s3_prefix-
Das Präfix des Pfads zu Amazon S3, in den RDS for Db2 die Ausgabedateien hochlädt. Der Datentyp ist
varchar. Wenn ein Präfix angegeben ist,s3_bucket_namemuss es ebenfalls angegeben werden. Wenn es weggelassens3_bucket_namewird, solange es vorhanden ist, wird die Ausgabedatei in das Stammverzeichnis des angegebenen Buckets hochgeladen.
Nutzungshinweise
Mit dieser gespeicherten Prozedur werden Informationen gesammelt, die bei der Überwachung und Problembehandlung von Datenbanken von RDS für Db2 hilfreich sein können.
Die gespeicherte Prozedur verwendet das IBM-Dienstprogramm db2pd, um verschiedene Befehle auszuführen. Für das Dienstprogramm db2pd ist die Autorisierung SYSADM erforderlich, über die der Masterbenutzer von RDS für Db2 nicht verfügt. Mit der gespeicherten Amazon-RDS-Prozedur kann der Masterbenutzer das Dienstprogramm jedoch zum Ausführen verschiedener Befehle verwenden. Weitere Informationen zum Dienstprogramm finden Sie in der IBM Db2-Dokumentation unter db2pd - Monitor and troubleshoot Db2 database command
Die Ausgabe ist auf maximal 2 GB beschränkt.
Bevor Sie die gespeicherte Prozedur aufrufen, überprüfen Sie die folgenden Anforderungen:
-
Um die Ausgabe auf Amazon S3 hochzuladen, müssen Sie die Integration bereits konfiguriert haben. Weitere Informationen finden Sie unter Integration einer DB-Instance von Amazon RDS für Db2 mit Amazon S3.
-
Damit eine RDS for Db2-DB-Instance mit Amazon S3 interagieren kann, benötigen Sie eine VPC und einen Amazon S3-Gateway-Endpunkt, den private Subnetze verwenden können. Weitere Informationen erhalten Sie unter Schritt 1: Erstellen eines VPC-Gateway-Endpunkts für Amazon S3 und Schritt 2: Überprüfen, ob der VPC-Gateway-Endpunkt für Amazon S3 vorhanden ist.
-
Für und Optionen ist ein gültiges Amazon S3-Bucket-Ziel erforderlich
-everything.-repeat -
Für
-repeatOption: Die Standardsyntax lautet'[command] -repeat [interval_seconds] [count]'. Das Intervall muss mindestens 1 Sekunde betragen, und die Anzahl der Ausführungen darf 100 nicht überschreiten. Die gesamte Ausführungszeit (interval_seconds×count) darf 600 Sekunden nicht überschreiten. Wenn keine Werte angegeben werden, sind die Standardwerte ein Intervall von5Sekunden und eine Anzahl von10.
Informationen zum Überprüfen des Erfassungsstatus von Datenbankinformationen finden Sie unter rdsadmin.get_task_status.
Beispiele
Beispiel 1: Zurückgeben der Betriebszeit einer DB-Instance
Im folgenden Beispiel wird die Betriebszeit einer DB-Instance von RDS für Db2 zurückgegeben:
db2 "call rdsadmin.db2pd_command('-')"
Beispiel 2: Zurückgeben der Betriebszeit einer Datenbank
Im folgenden Beispiel wird die Betriebszeit der Datenbank TESTDB zurückgegeben:
db2 "call rdsadmin.db2pd_command('-db TESTDB -')"
Beispiel 3: Zurückgeben der Speicherauslastung einer DB-Instance
Im folgenden Beispiel wird die Speicherauslastung einer DB-Instance von RDS für Db2 zurückgegeben:
db2 "call rdsadmin.db2pd_command('-dbptnmem')"
Beispiel 4: Zurückgeben von Speichersätzen einer DB-Instance und Datenbank
Im folgenden Beispiel werden die Speichersätze einer DB-Instance von RDS für Db2 und der Datenbank TESTDB zurückgegeben:
db2 "call rdsadmin.db2pd_command('-inst -db TESTDB -memsets')"
Beispiel 5: Rückgabe der wiederholten Speichernutzung der DB-Instance
Im folgenden Beispiel wird die Speichernutzung einer RDS for Db2-DB-Instance alle 10 Sekunden sechsmal zurückgegeben:
db2 "call rdsadmin.db2pd_command( '-dbptnmem -repeat 10 6', 'amzn-s3-demo-bucket', 'db2pdResults')"
rdsadmin.force_application
Erzwingt die Deaktivierung von Anwendungen aus einer Datenbank von RDS für Db2.
Syntax
db2 "call rdsadmin.force_application( ?, 'applications')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
applications-
Die Anwendungen, für die Sie die Deaktivierung aus einer Datenbank von RDS für Db2 erzwingen möchten. Der Datentyp ist
varchar. Gültige Werte:ALLoderapplication_handle.Trennen Sie die Namen mehrerer Anwendungen durch Kommas. Beispiel: ','.
application_handle_1application_handle_2
Nutzungshinweise
Mit dieser gespeicherten Prozedur wird die Deaktivierung aller Anwendungen aus einer Datenbank erzwungen, sodass Sie Wartungsarbeiten durchführen können.
Die gespeicherte Prozedur verwendet den IBM-Befehl FORCE APPLICATION. Für den Befehl FORCE APPLICATION ist die Autorisierung SYSADM, SYSMAINT oder SYSCTRL erforderlich, über die der Masterbenutzer von RDS für Db2 nicht verfügt. Mit der gespeicherten Amazon-RDS-Prozedur kann der Masterbenutzer den Befehl jedoch verwenden. Weitere Informationen finden Sie in der IBM Db2-Dokumentation unter FORCE APPLICATION command
Informationen zum Überprüfen des Status der erzwungenen Deaktivierung von Anwendungen aus einer Datenbank finden Sie unter rdsadmin.get_task_status.
Beispiele
Beispiel 1: Festlegen aller Anwendungen
Im folgenden Beispiel wird die Deaktivierung aller Anwendungen aus einer Datenbank von RDS für Db2 erzwungen.
db2 "call rdsadmin.force_application( ?, 'ALL')"
Beispiel 2: Festlegen mehrerer Anwendungen
Im folgenden Beispiel wird die Deaktivierung der Anwendungs-Handles 9991, 8891 und 1192 aus einer Datenbank von RDS für Db2 erzwungen:
db2 "call rdsadmin.force_application( ?, '9991, 8891, 1192')"
rdsadmin.set_archive_log_retention
Konfiguriert den Zeitraum (in Stunden) für die Beibehaltung von Archivprotokolldateien für die angegebene Datenbank von RDS für Db2.
Syntax
db2 "call rdsadmin.set_archive_log_retention( ?, 'database_name', 'archive_log_retention_hours')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Die folgenden Eingabeparameter sind erforderlich:
database_name-
Der Name der Datenbank, für die die Beibehaltung des Archivprotokolls konfiguriert werden soll. Der Datentyp ist
varchar. archive_log_retention_hours-
Die Anzahl der Stunden, die die Archivprotokolldateien beibehalten werden sollen. Der Datentyp ist
smallint. Die Standardeinstellung ist, und das Maximum ist (35 Tage).0840Wenn der Wert
0ist, behält Amazon RDS die Archivprotokolldateien nicht bei.
Nutzungshinweise
Standardmäßig behält RDS für Db2 Protokolle 5 Minuten lang bei. Wir empfehlen, dass Sie bei der Verwendung von Replikationstools, wie z. B. AWS DMS für Change Data Capture (CDC)IBM Q Replication, die Aufbewahrung von Protokollen in diesen Tools für mehr als 5 Minuten einrichten.
Sie können die aktuelle Einstellung für die Beibehaltung von Archivprotokollen durch Aufrufen von rdsadmin.show_archive_log_retention einsehen.
Sie können die Einstellung für die Beibehaltung von Archivprotokollen in der Datenbank rdsadmin nicht konfigurieren.
Beispiele
Beispiel 1: Festlegen des Beibehaltungszeitraums
Im folgenden Beispiel wird der Beibehaltungszeitraum des Archivprotokolls für die Datenbank TESTDB auf 24 Stunden festgelegt.
db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '24')"
Beispiel 2: Deaktivieren des Beibehaltungszeitraums
Im folgenden Beispiel wird die Beibehaltung des Archivprotokolls für die Datenbank TESTDB deaktiviert.
db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '0')"
rdsadmin.show_archive_log_retention
Gibt die aktuelle Einstellung für die Beibehaltung des Archivprotokolls für die angegebene Datenbank zurück.
Syntax
db2 "call rdsadmin.show_archive_log_retention( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, für die die Beibehaltungseinstellung des Archivprotokolls angezeigt werden soll. Der Datentyp ist
varchar.
Beispiele
Im folgenden Beispiel wird die Einstellung für die Beibehaltung des Archivprotokolls für die Datenbank TESTDB veranschaulicht.
db2 "call rdsadmin.show_archive_log_retention(?,'TESTDB')"
rdsadmin.list_archive_log_information
Gibt Details zu den Archivprotokolldateien zurück, z. B. die Größe, das Datum und die Uhrzeit der Erstellung sowie den Namen der einzelnen Protokolldateien für die angegebene Datenbank. Außerdem wird die Gesamtspeichermenge zurückgegeben, die von den Protokolldateien in der Datenbank belegt wird.
Syntax
db2 "call rdsadmin.list_archive_log_information( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, für die die Archivprotokollinformationen aufgeführt werden sollen. Der Datentyp ist
varchar.
Beispiele
Im folgenden Beispiel werden Archivprotokollinformationen für die Datenbank TESTDB zurückgegeben.
db2 "call rdsadmin.list_archive_log_information( ?, 'TESTDB')"
rdsadmin.enable_archive_log_copy
Aktiviert das Kopieren des RDS Db2-Datenbankarchivs in Amazon S3.
Syntax
db2 "call rdsadmin.enable_archive_log_copy( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, für die das Kopieren des Archivprotokolls nach Amazon S3 aktiviert werden soll. Der Datentyp ist
varchar.
Beispiele
Im folgenden Beispiel wird das Kopieren des Archivprotokolls für eine Datenbank mit dem Namen aktiviertTESTDB.
db2 "call rdsadmin.enable_archive_log_copy( ?, 'TESTDB')"
rdsadmin.disable_archive_log_copy
Deaktiviert das Kopieren des RDS Db2-Datenbankarchivs auf Amazon S3.
Syntax
db2 "call rdsadmin.disable_archive_log_copy( ?, 'database_name')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Der folgende Eingabeparameter ist erforderlich:
database_name-
Der Name der Datenbank, für die das Kopieren des Archivprotokolls nach Amazon S3 deaktiviert werden soll. Der Datentyp ist
varchar.
Beispiele
Im folgenden Beispiel wird das Kopieren des Archivprotokolls für eine Datenbank mit dem Namen TESTDB deaktiviert.
db2 "call rdsadmin.disable_archive_log_copy( ?, 'TESTDB')"
rdsadmin.fgac_command
Führt Befehle zur feinkörnigen Zugriffskontrolle (FGAC) aus.
Syntax
db2 "call rdsadmin.fgac_command( ?, 'database_name', 'fgac_cmd')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Die folgenden Eingabeparameter sind erforderlich:
database_name-
Der Name der Datenbank, für die Sie FGAC-Befehle ausführen möchten. Der Datentyp ist
varchar. fgac_cmd-
Der detaillierte Zugriffskontrollbefehl, den Sie ausführen möchten. Der Datentyp ist
varchar.Die folgenden Befehle sind gültig:
-
ALTER MASK— Ändert eine bestehende Spaltenmaske in der Zeilen- und Spaltenzugriffskontrolle (RCAC). -
ALTER PERMISSION— Ändert die Eigenschaften einer vorhandenen Zeilenberechtigung in RCAC. -
ALTER SECURITY POLICY— Ändert eine bestehende Sicherheitsrichtlinie für RCAC. -
ALTER SECURITY LABEL— Ändert die Eigenschaften eines vorhandenen Sicherheitslabels in der labelbasierten Zugriffskontrolle (LBAC). -
ALTER TABLE— Ändert die Tabellenstruktur, einschließlich des Hinzufügens von RCAC- oder LBAC-Steuerelementen. -
CREATE MASK— Erzeugt eine neue Spaltenmaske für RCAC. -
CREATE PERMISSION— Erzeugt eine neue Zeilenberechtigung für RCAC. -
CREATE SECURITY LABEL— Erstellt ein neues Sicherheitslabel für LBAC. -
CREATE SECURITY POLICY— Erstellt eine neue Sicherheitsrichtlinie für RCAC. -
DROP MASK— Löscht eine vorhandene Spaltenmaske. -
DROP PERMISSION— Löscht eine bestehende Zeilenberechtigung. -
DROP SECURITY LABEL— Löscht ein Sicherheitsetikett von LBAC. -
DROP SECURITY POLICY— Löscht eine bestehende RCAC-Sicherheitsrichtlinie. -
GRANT EXEMPTION ON RULE— Ermöglicht einem Benutzer, bestimmte LBAC-Regeln zu umgehen. -
GRANT SECURITY LABEL— Weist einem Benutzer ein LBAC-Sicherheitslabel zu. -
REVOKE EXEMPTION ON RULE— Entfernt die Ausnahme eines Benutzers von den LBAC-Regeln. -
REVOKE SECURITY LABEL— Entfernt ein LBAC-Sicherheitslabel von einem Benutzer.
-
Nutzungshinweise
Diese gespeicherte Prozedur steuert den Zugriff auf Zeilen- oder Spaltenebene auf Tabellendaten in Ihrer Datenbank auf einer RDS for Db2-DB-Instance. RDS for Db2 unterstützt zwei Arten von FGAC in der Datenbank:
-
Label-based Zugriffskontrolle (LBAC)
-
Zugriffskontrolle für Zeilen und Spalten (RCAC)
Bevor Sie die gespeicherte Prozedur aufrufen, lesen Sie die folgenden Hinweise:
-
Um ein einfaches Anführungszeichen (') zu umgehen, verwenden Sie ein zusätzliches einfaches Anführungszeichen. Die folgenden Beispiele zeigen, wie Sie
'apple''banana', und entkommen können'fruit'.db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT FRUITSET SET{''apple'',''banana''}')"db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT FRUITTREE TREE(''fruit'' ROOT, ''apple'' UNDER ''fruit'', ''banana'' UNDER ''fruit'')')" -
Um Klammern ([]) zu umgehen, verwenden Sie einen umgekehrten Schrägstrich (\). Das folgende Beispiel zeigt, wie man entkommen kann.
[''apple'',''banana'']db2 "call rdsadmin.fgac_command( ?, ' testdb', 'CREATE SECURITY LABEL COMPONENT FRUITARRAY ARRAY\[''apple'',''banana''\]')"
Beispiele
Die folgenden Beispiele führen alle FGAC-Befehle in einer Datenbank mit dem Namen aus. testdb
Beispiel 1: Erstellen einer neuen Sicherheitsbeschriftung mit dem Namen FRUITSET
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT FRUITSET SET{''apple'',''banana''}')"
Beispiel 2: Erstellen einer neuen Maske für die EMP_ID Spalte, die aktiviert ist, wenn der Wert auf weniger als drei gesetzt EMP_ID ist
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE MASK id_MASK ON EMPLOYEE FOR COLUMN EMP_ID RETURN CASE WHEN (EMP_ID < 3) THEN EMP_ID ELSE NULL END ENABLE')"
Beispiel 3: Erstellen einer neuen Maske für die DEPARTMENT Spalte, die aktiviert ist, wenn der Wert auf gesetzt SESSION_USER ist security_user
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE MASK DEPARTMENT_MASK ON EMPLOYEE FOR COLUMN DEPARTMENT RETURN CASE WHEN SESSION_USER = ''security_user'' THEN DEPARTMENT ELSE NULL END ENABLE')"
Beispiel 4: Erstellen einer neuen Sicherheitsbeschriftung mit dem Namen treelabel
db2 "call rdsadmin.fgac_command( ?, 'testdb', 'CREATE SECURITY LABEL COMPONENT treelabel TREE(''COMPANY'' ROOT, ''HR'' UNDER ''COMPANY'', ''FINANCE'' UNDER ''COMPANY'', ''IT'' UNDER ''COMPANY'')')"
rdsadmin.db2support_command
Sammelt Diagnoseinformationen über eine RDS for Db2-Datenbank und lädt sie in einen Amazon S3-Bucket hoch.
Syntax
db2 "call rdsadmin.db2support_command( ?, 'database_name', 's3_bucket_name', 's3_prefix')"
Parameters
Der folgende Ausgabeparameter ist erforderlich:
- ?
-
Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur
?.
Die folgenden Eingabeparameter sind erforderlich:
database_name-
Der Name der Datenbank, für die Diagnoseinformationen gesammelt werden sollen. Der Datentyp ist
varchar. s3_bucket_name-
Der Name des Amazon S3-Buckets, in den Sie die Diagnoseinformationen hochladen möchten. Der Datentyp ist
varchar. s3_prefix-
Das Präfix des Pfads zu Amazon S3, in den RDS for Db2 die Diagnosedateien hochlädt. Der Datentyp ist
varchar.
Nutzungshinweise
Diese gespeicherte Prozedur sammelt Diagnoseinformationen, die bei der Fehlerbehebung in RDS für Db2-Datenbanken helfen können, und lädt die Informationen in einen Amazon S3-Bucket hoch.
Die gespeicherte Prozedur verwendet das IBM db2support Hilfsprogramm, um Diagnosedaten zu sammeln. Weitere Informationen zu dem Hilfsprogramm finden Sie in der Dokumentation unter db2support — Befehl für das Tool zur Problemanalyse und
Bevor Sie die gespeicherte Prozedur aufrufen, lesen Sie die folgenden Hinweise:
-
Um die Diagnosedateien auf Amazon S3 hochzuladen, müssen Sie die Integration bereits konfiguriert haben. Weitere Informationen finden Sie unter Integration einer DB-Instance von Amazon RDS für Db2 mit Amazon S3.
-
Damit eine RDS for Db2-DB-Instance mit Amazon S3 interagieren kann, benötigen Sie eine VPC und einen Amazon S3-Gateway-Endpunkt, den private Subnetze verwenden können. Weitere Informationen erhalten Sie unter Schritt 1: Erstellen eines VPC-Gateway-Endpunkts für Amazon S3 und Schritt 2: Überprüfen, ob der VPC-Gateway-Endpunkt für Amazon S3 vorhanden ist.
Vor dem Aufrufen von rdsadmin.db2support_command müssen Sie eine Verbindung mit der Datenbank rdsadmin herstellen. Ersetzen Sie im folgenden Beispiel master_username und master_password durch Ihre RDS for Db2-DB-Instance-Informationen:
db2 connect to rdsadmin usermaster_usernameusingmaster_password
Hinweise zur Überprüfung des Status der Erfassung von Diagnoseinformationen finden Sie unterrdsadmin.get_task_status.
Beispiele
Beispiel 1: Sammeln von Diagnoseinformationen für eine Datenbank
Das folgende Beispiel sammelt Diagnoseinformationen für eine aufgerufene Datenbank TESTDB und lädt sie in den Amazon S3-Bucket hoch, der amzn-s3-demo-bucket mit dem Präfix diagnostics/testdb aufgerufen wird:
db2 "call rdsadmin.db2support_command( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'diagnostics/testdb')"
Beispiel 2: Erfassung von Diagnoseinformationen mit einem datumsbasierten Präfix
Das folgende Beispiel sammelt Diagnoseinformationen für eine aufgerufene Datenbank MYDB und lädt sie in den Amazon S3-Bucket hoch, der amzn-s3-demo-bucket mit einem datumsbasierten Präfix aufgerufen wird:
db2 "call rdsadmin.db2support_command( ?, 'MYDB', 'amzn-s3-demo-bucket', 'support/2024/01/15')"