Gespeicherte Prozeduren für Datenbanken für RDS for Db2 - Amazon Relational Database Service

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 für RDS for Db2

Die in diesem Thema beschriebenen integrierten gespeicherten Prozeduren verwalten Datenbanken für Amazon RDS for Db2. Um diese Prozeduren auszuführen, muss der Masterbenutzer zuerst eine Verbindung zur rdsadmin Datenbank herstellen.

Diese gespeicherten Prozeduren werden für eine Vielzahl von Aufgaben verwendet. Diese Liste ist nicht umfassend.

Informationen zu deren Syntax, Parametern, Nutzungshinweisen und Beispielen finden Sie in den folgenden integrierten gespeicherten Prozeduren.

rdsadmin.create_database

Erstellt eine Datenbank.

Syntax

db2 "call rdsadmin.create_database('database_name')"

Parameter

Anmerkung

Diese gespeicherte Prozedur validiert die Kombination der erforderlichen Parameter nicht. Beim Aufrufen rdsadmin.get_task_status kann die benutzerdefinierte Funktion aufgrund einer Kombination vondatabase_codeset,, einen Fehler zurückgebendatabase_territory, database_collation die nicht gültig ist. Weitere Informationen finden Sie unter Codepage, Gebiet und Sortierung für Ihre Datenbank auswählen im IBM Db2 -Dokumentation.

Der folgende Parameter ist erforderlich:

database_name

Der Name der zu erstellenden Datenbank. Der Datentyp istvarchar.

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 ist 8192.

Wichtig

Amazon RDS unterstützt Schreibatomizitä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 unvollständige Daten auf den Schreibtisch geschrieben werden. Wenn Sie Seiten mit 32 KiB verwenden, empfehlen wir Ihnen, die point-in-time Wiederherstellung und automatische Backups zu aktivieren. Andernfalls laufen Sie Gefahr, dass Sie zerrissene Seiten nicht wiederherstellen können. Weitere Informationen erhalten Sie unter Einführung in Backups und Wiederherstellung einer DB-Instance zu einem bestimmten Zeitpunkt für Amazon RDS.

database_code_set

Der Codesatz für die Datenbank. Der Datentyp istvarchar. Der Standardwert ist UTF-8.

database_territory

Der aus zwei Buchstaben bestehende Ländercode für die Datenbank. Der Datentyp istvarchar. Der Standardwert ist US.

database_collation

Die Sortierreihenfolge, die bestimmt, wie in der Datenbank gespeicherte Zeichenketten sortiert und verglichen werden. Der Datentyp istvarchar.

Zulässige Werte:

  • COMPATIBILITY— Eine IBM Db2 Version 2-Kollationssequenz.

  • 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 037 (EBCDIC, US-Englisch).

  • EBCDIC_932_5035— Japanische ASCII-Codepage, Sortierung; CCSID 500 (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. Zeichenketten werden Byte für Byte verglichen.

  • IDENTITY_16BIT— Das Kompatibilitätskodierungsschema für UTF-16:8-Bit-Kollationssequenz (CESU-8). Weitere Informationen finden Sie im technischen Unicode-Bericht #26 auf der Website des Unicode-Konsortiums.

  • NLSCHAR— Nur zur Verwendung mit der thailändischen Codepage (CP874).

  • SYSTEM— Wenn Sie verwendenSYSTEM, verwendet die Datenbank die Sortierreihenfolge automatisch für database_codeset unddatabase_territory.

Der Standardwert ist IDENTITY.

Darüber hinaus unterstützt RDS for Db2 die folgenden Kollatierungsgruppen: und. language-aware-collation locale-sensitive-collation Weitere Informationen finden Sie unter Auswählen einer Kollation für eine Unicode-Datenbank im IBM Db2 -Dokumentation.

database_autoconfigure_str

Die AUTOCONFIGURE Befehlssyntax, zum Beispiel. 'AUTOCONFIGURE APPLY DB' Der Datentyp istvarchar. Die Standardeinstellung ist eine leere Zeichenfolge oder Null.

Weitere Informationen finden Sie unter .AUTOCONFIGURE Befehl in der IBM Db2 -Dokumentation.

Nutzungshinweise

Wenn Sie den db2_compatibility_vector Parameter ändern möchten, ändern Sie den Parameter, bevor Sie eine Datenbank erstellen. Weitere Informationen finden Sie unter Einstellung des Parameters db2_compatibility_vector.

Besondere Überlegungen:

  • Der an die Db2-Instanz gesendete CREATE DATABASE Befehl verwendet die RESTRICTIVE Option.

  • RDS für Db2 verwendet AUTOMATIC STORAGE nur Tablespaces.

  • RDS für Db2 verwendet die Standardwerte für und. NUMSEGS DFT_EXTENT_SZ

  • RDS für Db2 verwendet Speicherverschlüsselung und unterstützt keine Datenbankverschlüsselung.

Weitere Informationen zu diesen Überlegungen finden Sie unter CREATE DATABASE Befehl in der IBM Db2 -Dokumentation.

Vor dem Aufrufen rdsadmin.create_database müssen Sie eine Verbindung zur rdsadmin Datenbank herstellen. Ersetzen Sie im folgenden Beispiel master_username und master_password durch Ihre RDS for Db2-DB-Instance-Informationen:

db2 connect to rdsadmin user master_username using master_password

Hinweise zur Überprüfung des Status beim Erstellen einer Datenbank finden Sie unterrdsadmin.get_task_status.

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.create_database, finden Sie unterBehebung von Fehlern 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.deactivate_database

Deaktiviert eine Datenbank.

Syntax

db2 "call rdsadmin.deactivate_database( ?, 'database_name')"

Parameter

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 deaktiviert werden soll. Der Datentyp istvarchar.

Nutzungshinweise

Sie können Datenbanken deaktivieren, um Speicherressourcen zu sparen oder andere Änderungen an der Datenbankkonfiguration vorzunehmen. Rufen Sie die rdsadmin.activate_database gespeicherte Prozedur auf, um deaktivierte Datenbanken wieder online zu schalten.

Hinweise zur Überprüfung des Status der Deaktivierung einer Datenbank finden Sie unter. rdsadmin.get_task_status

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.deactivate_database, finden Sie unterBehebung von Fehlern bei gespeicherten Prozeduren.

Beispiele

Im folgenden Beispiel wird eine TESTDB aufgerufene Datenbank 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 unterNutzungshinweise.

Syntax

db2 "call rdsadmin.activate_database( ?, 'database_name')"

Parameter

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 istvarchar.

Nutzungshinweise

Alle Datenbanken sind standardmäßig aktiviert, wenn sie erstellt werden. Wenn Sie eine Datenbank auf einer eigenständigen DB-Instance deaktivieren, um Speicherressourcen zu sparen oder andere Änderungen an der Datenbankkonfiguration vorzunehmen, rufen Sie die rdsadmin.activate_database gespeicherte Prozedur auf, um die Datenbank erneut zu aktivieren.

Hinweise zur Überprüfung des Status der Aktivierung einer Datenbank finden Sie unterrdsadmin.get_task_status.

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.activate_database, finden Sie unterBehebung von Fehlern bei gespeicherten Prozeduren.

Beispiele

Das folgende Beispiel aktiviert eine Datenbank namensTESTDB.

db2 "call rdsadmin.activate_database(?, 'TESTDB')"

rdsadmin.reactivate_database

Reaktiviert eine Datenbank.

Hinweise zu den Unterschieden zwischen rdsadmin.activate_database und finden Sie rdsadmin.reactivate_database unterNutzungshinweise.

Syntax

db2 "call rdsadmin.reactivate_database( ?, 'database_name')"

Parameter

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 reaktiviert werden soll. Der Datentyp istvarchar.

Nutzungshinweise

Wenn Sie die rdsadmin.reactivate_database gespeicherte Prozedur aufrufen, deaktiviert die gespeicherte Prozedur zuerst die Datenbank, indem sie die rdsadmin.deactivate_database gespeicherte Prozedur aufruft, und aktiviert dann die Datenbank, indem sie die rdsadmin.activate_database gespeicherte Prozedur aufruft.

Nachdem Sie Änderungen an den Datenbankkonfigurationen vorgenommen haben, müssen Sie möglicherweise eine Datenbank auf einer RDS for Db2-DB-Instance reaktivieren. Um festzustellen, ob Sie eine Datenbank reaktivieren müssen, stellen Sie eine Verbindung mit der Datenbank her und führen Sie den Befehl aus. db2 get db cfg show detail

Für eine Datenbank auf einer eigenständigen DB-Instance können Sie die rdsadmin.reactivate_database Store-Prozedur verwenden, um die Datenbank zu reaktivieren. Oder, wenn Sie die rdsadmin.deactivate_database gespeicherte Prozedur bereits aufgerufen haben, können Sie stattdessen die rdsadmin.activate_database gespeicherte Prozedur aufrufen.

Hinweise zur Überprüfung des Status der Reaktivierung einer Datenbank finden Sie unterrdsadmin.get_task_status.

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.reactivate_database, finden Sie unterBehebung von Fehlern bei gespeicherten Prozeduren.

Beispiele

Im folgenden Beispiel wird eine TESTDB aufgerufene Datenbank reaktiviert.

db2 "call rdsadmin.reactivate_database(?, 'TESTDB')"

rdsadmin.drop_database

Entfernt eine Datenbank.

Syntax

db2 "call rdsadmin.drop_database('database_name')"

Parameter

Der folgende Parameter ist erforderlich:

database_name

Der Name der Datenbank, die gelöscht werden soll. Der Datentyp istvarchar.

Nutzungshinweise

Sie können eine Datenbank rdsadmin.drop_database nur löschen, indem Sie sie aufrufen, wenn die folgenden Bedingungen erfüllt sind:

  • Sie haben den Namen der Datenbank nicht angegeben, als Sie Ihre RDS for Db2-DB-Instance mit der Amazon RDS-Konsole oder der AWS CLI erstellt haben. Weitere Informationen finden Sie unter Erstellen einer DB-Instance.

  • Sie haben die Datenbank erstellt, indem Sie die rdsadmin.create_database gespeicherte Prozedur aufgerufen haben.

  • Sie haben die Datenbank aus einem Offline- oder Sicherungsabbild wiederhergestellt, indem Sie die rdsadmin.restore_database gespeicherte Prozedur aufgerufen haben.

Vor dem Aufrufen rdsadmin.drop_database müssen Sie eine Verbindung mit der rdsadmin Datenbank herstellen. Ersetzen Sie im folgenden Beispiel master_username und master_password durch Ihre RDS for Db2-DB-Instance-Informationen:

db2 connect to rdsadmin user master_username using master_password

Hinweise zur Überprüfung des Status beim Löschen einer Datenbank finden Sie unterrdsadmin.get_task_status.

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.drop_database, finden Sie unterBehebung von Fehlern bei gespeicherten Prozeduren.

Beispiele

Im folgenden Beispiel wird eine Datenbank mit dem Namen gelöschtTESTDB:

db2 "call rdsadmin.drop_database('TESTDB')"

rdsadmin.update_db_param

Aktualisiert Datenbankparameter.

Syntax

db2 "call rdsadmin.update_db_param( 'database_name', 'parameter_to_modify', 'changed_value)"

Parameter

Die folgenden Parameter sind erforderlich:

database_name

Der Name der Datenbank, für die die Aufgabe ausgeführt werden soll. Der Datentyp istvarchar.

parameter_to_modify

Der Name des zu ändernden Parameters. Der Datentyp istvarchar. Weitere Informationen finden Sie unter Amazon RDS für Db2-Parameter.

changed_value

Der Wert, auf den der Parameterwert geändert werden soll. Der Datentyp istvarchar.

Nutzungshinweise

Hinweise zur Überprüfung des Status der Aktualisierung von Datenbankparametern finden Sie unterrdsadmin.get_task_status.

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.update_db_param, finden Sie unterBehebung von Fehlern bei gespeicherten Prozeduren.

Beispiele

Beispiel 1: Einen Parameter aktualisieren

Im folgenden Beispiel archretrydelay wird der Parameter 100 für eine Datenbank mit dem Namen auf aktualisiertTESTDB:

db2 "call rdsadmin.update_db_param( 'TESTDB', 'archretrydelay', '100')"

Beispiel 2: Die Validierung von Objekten verzögern

Im folgenden Beispiel wird die Validierung von erstellten Objekten in einer Datenbank verschoben, die aufgerufen wird, um eine Überprüfung der Abhängigkeiten TESTDB 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')"

Parameter

Die folgenden Parameter sind erforderlich:

name

Der Name der Konfigurationseinstellung. Der Datentyp istvarchar.

value

Der Wert für die Konfigurationseinstellung. Der Datentyp istvarchar.

Nutzungshinweise

Die folgende Tabelle zeigt die Konfigurationseinstellungen, mit denen Sie steuern könnenrdsadmin.set_configuration.

Name Beschreibung

RESTORE_DATABASE_NUM_BUFFERS

Die Anzahl der Puffer, die während eines Wiederherstellungsvorgangs erstellt werden sollen. Dieser Wert muss kleiner als die Gesamtspeichergröße der DB-Instance-Klasse sein. Wenn diese Einstellung nicht konfiguriert ist, bestimmt Db2 den Wert, der während des Wiederherstellungsvorgangs verwendet werden soll. Weitere Informationen finden Sie hier: IBM Db2 Dokumentation.

RESTORE_DATABASE_PARALLELISM

Die Anzahl der Puffermanipulatoren, die während eines Wiederherstellungsvorgangs erstellt werden sollen. Dieser Wert muss kleiner als das Doppelte der Zahl von v CPUs für die DB-Instance sein. Wenn diese Einstellung nicht konfiguriert ist, bestimmt Db2 den Wert, der während des Wiederherstellungsvorgangs verwendet werden soll. Weitere Informationen finden Sie hier: IBM Db2 Dokumentation.

Beispiele

Beispiel 1: Angabe der Anzahl der zu erstellenden Puffermanipulatoren

Im folgenden Beispiel wird die RESTORE_DATABASE_PARALLELISM Konfiguration auf festgelegt. 8

db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_PARALLELISM', '8')"

Beispiel 2: Angeben der Anzahl der zu erstellenden Puffer

Im folgenden Beispiel wird die RESTORE_DATABASE_NUM_BUFFERS Konfiguration auf 150 festgelegt.

db2 "call rdsadmin.set_configuration( 'RESTORE_DATABASE_NUM_BUFFERS', '150')"

rdsadmin.show_configuration

Gibt die aktuellen Einstellungen zurück, die Sie mithilfe der gespeicherten Prozedur festlegen könnenrdsadmin.set_configuration.

Syntax

db2 "call rdsadmin.show_configuration( 'name')"

Parameter

Der folgende Parameter ist optional:

name

Der Name der Konfigurationseinstellung, über die Informationen zurückgegeben werden sollen. Der Datentyp istvarchar.

Die folgenden Konfigurationsnamen sind gültig:

  • RESTORE_DATABASE_NUM_BUFFERS — Die Anzahl der Puffer, die während eines Wiederherstellungsvorgangs erstellt werden sollen.

  • RESTORE_DATABASE_PARALLELISM — Die Anzahl der Puffermanipulatoren, die während eines Wiederherstellungsvorgangs erstellt werden sollen.

Nutzungshinweise

Wenn Sie den Namen einer Konfigurationseinstellung nicht angeben, werden Informationen für alle Konfigurationseinstellungen rdsadmin.show_configuration zurückgegeben, die Sie mithilfe der gespeicherten Prozedur festlegen können. rdsadmin.set_configuration

Beispiele

Im folgenden Beispiel werden Informationen zur aktuellen RESTORE_DATABASE_PARALLELISM Konfiguration zurückgegeben.

db2 "call rdsadmin.show_configuration( 'RESTORE_DATABASE_PARALLELISM')"

rdsadmin.restore_database

Stellt eine Datenbank aus einem Amazon S3 S3-Bucket auf Ihrer RDS for Db2-DB-Instance wieder her.

Syntax

db2 "call rdsadmin.restore_database( ?, 'database_name', 's3_bucket_name', 's3_prefix', restore_timestamp, 'backup_type')"

Parameter

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 for Db2 wiederhergestellt werden soll. Der Datentyp istvarchar.

Wenn der Quelldatenbankname beispielsweise lautete TESTDB und Sie database_name auf eingestellt habenNEWDB, stellt Amazon RDS NEWDB als Quelldatenbank wieder her.

s3_bucket_name

Der Name des Amazon S3 S3-Buckets, in dem sich Ihr Backup befindet. Der Datentyp istvarchar.

s3_prefix

Das Präfix, das für den Dateiabgleich beim Herunterladen verwendet werden soll. Der Datentyp istvarchar.

Wenn dieser Parameter leer ist, werden alle Dateien im Amazon S3 S3-Bucket heruntergeladen. Das Folgende ist ein Beispiel für ein Präfix:

backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101
restore_timestamp

Der Zeitstempel des Datenbank-Backup-Images. Der Datentyp istvarchar.

Der Zeitstempel ist im Namen der Sicherungsdatei enthalten. 20230615010101Ist zum Beispiel der Zeitstempel für den Dateinamen. SAMPLE.0.rdsdb.DBPART000.20230615010101.001

backup_type

Die Art der Sicherung. Der Datentyp istvarchar. Zulässige Werte: OFFLINE, ONLINE.

Wird ONLINE für Migrationen verwendet, bei denen fast keine Ausfallzeiten auftreten. Weitere Informationen finden Sie unter Migration von Linux to Linux mit nahezu null Ausfallzeiten für Amazon for Db2 RDS.

Nutzungshinweise

Sie können diese gespeicherte Prozedur verwenden, um eine Db2-Datenbank auf eine RDS for Db2-DB-Instance 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 verwenden.

Bevor Sie die gespeicherte Prozedur aufrufen, sollten Sie sich die folgenden Überlegungen ansehen:

  • Bevor Sie eine Datenbank wiederherstellen, müssen Sie Speicherplatz für Ihre RDS for Db2-DB-Instance bereitstellen, der mindestens der Summe der Größe Ihres Backups und der ursprünglichen Db2-Datenbank auf der Festplatte entspricht. Weitere Informationen finden Sie unter Insufficient disk space.

  • Wenn Sie das Backup wiederherstellen, extrahiert Amazon RDS die Sicherungsdatei auf Ihrer RDS for Db2-DB-Instance. Jede Backup-Datei muss 5 TB oder kleiner sein. Wenn eine Sicherungsdatei größer als 5 TB ist, müssen Sie die Sicherungsdatei in kleinere Dateien aufteilen.

  • Um alle Dateien mithilfe der rdsadmin.restore_database gespeicherten Prozedur wiederherzustellen, geben Sie das Dateinummersuffix nach dem Zeitstempel nicht in die Dateinamen ein. Das stellt beispielsweise die folgenden s3_prefix backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101 Dateien 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 for 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 von RDS zu verwendenden Puffer und Puffermanipulatoren konfigurieren. Um die aktuelle Konfiguration zu überprüfen, verwenden Sie. rdsadmin.show_configuration Um die Konfiguration zu ändern, verwenden Sierdsadmin.set_configuration.

Informationen zum Onlineschalten der Datenbank und zum Anwenden zusätzlicher Transaktionslogs nach dem Wiederherstellen der Datenbank finden Sie unterrdsadmin.rollforward_database.

Hinweise zur Überprüfung des Status der Datenbankwiederherstellung finden Sie unterrdsadmin.get_task_status.

Informationen zu Fehlermeldungen, die beim Aufrufen zurückgegeben werdenrdsadmin.restore_database, finden Sie unterBehebung von Fehlern bei gespeicherten Prozeduren.

Beispiele

Das folgende Beispiel stellt eine Offline-Sicherung mit einer einzelnen Datei oder mehreren Dateien wieder her, die Folgendes aufweisen 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

Bringt die Datenbank online und wendet zusätzliche Transaktionsprotokolle an, nachdem eine Datenbank durch einen Aufruf wiederhergestellt wurderdsadmin.restore_database.

Syntax

db2 "call rdsadmin.rollforward_database( ?, 'database_name', 's3_bucket_name', s3_prefix, 'rollfoward_to_option', 'complete_rollforward')"

Parameter

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 istvarchar.

s3_bucket_name

Der Name des Amazon S3 S3-Buckets, in dem sich Ihr Backup befindet. Der Datentyp istvarchar.

s3_prefix

Das Präfix, das für den Dateiabgleich beim Herunterladen verwendet werden soll. Der Datentyp istvarchar.

Wenn dieser Parameter leer ist, werden alle Dateien im S3-Bucket heruntergeladen. Das folgende Beispiel ist ein Beispielpräfix:

backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101

Die folgenden Eingabeparameter sind optional:

rollforward_to_option

Der Punkt, zu dem Sie weiterrollen möchten. Der Datentyp istvarchar. Zulässige Werte: END_OF_LOGS, END_OF_BACKUP. Der Standardwert ist END OF LOGS.

complete_rollforward

Gibt an, ob der Roll-Forward-Prozess abgeschlossen werden soll. Der Datentyp ist. varchar Der Standardwert ist TRUE.

WennTRUE, dann ist die Datenbank nach Abschluss online und zugänglich. WennFALSE, dann bleibt die Datenbank in einem ROLL-FORWARD PENDING Zustand.

Nutzungshinweise

Nach dem Aufruf müssen Sie aufrufenrdsadmin.restore_database, rollforward_database um Archivprotokolle aus einem S3-Bucket anzuwenden. Sie können diese gespeicherte Prozedur auch verwenden, um nach dem Aufruf zusätzliche Transaktionsprotokolle wiederherzustellenrdsadmin.restore_database.

Wenn Sie complete_rollforward auf einstellenFALSE, befindet sich Ihre Datenbank in einem ROLL-FORWARD PENDING Zustand und ist offline. Um die Datenbank online zu schalten, müssen Sie anrufenrdsadmin.complete_rollforward.

Hinweise zur Überprüfung des Status beim Rollforward der Datenbank finden Sie unterrdsadmin.get_task_status.

Beispiele

Beispiel 1: Die Datenbank mit Transaktionsprotokollen online schalten

Im folgenden Beispiel wird ein Rollforward zu einer Online-Sicherung der Datenbank mit Transaktionsprotokollen durchgeführt und die Datenbank anschließend online geschaltet:

db2 "call rdsadmin.rollforward_database( ?, null, null, 'END_OF_LOGS', 'TRUE')"

Beispiel 2: Eine Datenbank ohne Transaktionsprotokolle online schalten

Im folgenden Beispiel wird ein Rollforward zu einer Online-Sicherung der Datenbank ohne Transaktionsprotokolle durchgeführt und die Datenbank anschließend online geschaltet:

db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/, 'END_OF_BACKUP', 'TRUE')"

Beispiel 3: Datenbank mit Transaktionsprotokollen wird nicht online geschaltet

Im folgenden Beispiel wird ein Rollforward zu einer Online-Sicherung der Datenbank mit Transaktionsprotokollen durchgeführt, ohne dass die Datenbank online geschaltet wird:

db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', null, 'onlinebackup/TESTDB', 'END_OF_LOGS', 'FALSE')"

Beispiel 4: Die Datenbank mit zusätzlichen Transaktionsprotokollen wird nicht online geschaltet

Im folgenden Beispiel wird ein Rollforward zu einer Online-Sicherung der Datenbank mit zusätzlichen Transaktionsprotokollen durchgeführt, ohne dass die Datenbank online geschaltet wird:

db2 "call rdsadmin.rollforward_database( ?, 'TESTDB', 'amzn-s3-demo-bucket', 'logsfolder/S0000155.LOG', 'END_OF_LOGS', 'FALSE')"

rdsadmin.complete_rollforward

Bringt die Datenbank aus einem ROLL-FORWARD PENDING Status online.

Syntax

db2 "call rdsadmin.complete_rollforward( ?, 'database_name')"

Parameter

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 stellen möchten. Der Datentyp istvarchar.

Nutzungshinweise

Wenn Sie rdsadmin.rollforward_database mit der complete_rollforward Einstellung auf aufgerufen habenFALSE, befindet sich Ihre Datenbank in einem ROLL-FORWARD PENDING Status und ist offline. Rufen Sie an, um den Roll-Forward-Vorgang abzuschließen und die Datenbank online zu schalten. rdsadmin.complete_rollforward

Hinweise zur Überprüfung des Status des Abschlusses des Roll-Forward-Prozesses finden Sie unter. rdsadmin.get_task_status

Beispiele

Das folgende Beispiel zeigt TESTDB Datenbank online:

db2 "call rdsadmin.complete_rollfoward( ?, 'TESTDB')"

rdsadmin.db2pd_command

Sammelt Informationen über eine RDS for Db2-Datenbank.

Syntax

db2 "call rdsadmin.db2pd_command('db2pd_cmd')"

Parameter

Der folgende Eingabeparameter ist erforderlich:

db2pd_cmd

Der Name des db2pd Befehls, den Sie ausführen möchten. Der Datentyp istvarchar.

Der Parameter muss mit einem Bindestrich beginnen. Eine Liste der Parameter finden Sie unter db2pd — Db2-Datenbankbefehl überwachen und Fehler beheben im IBM Db2 -Dokumentation.

Die folgenden Optionen werden nicht unterstützt:

  • -addnode

  • -alldatabases

  • -alldbp

  • -alldbs

  • -allmembers

  • -alm_in_memory

  • -cfinfo

  • -cfpool

  • -command

  • -dbpartitionnum

  • -debug

  • -dump

  • -everything

  • -file | -o

  • -ha

  • -interactive

  • -member

  • -pages

    Anmerkung

    -pages summary wird unterstützt.

  • -pdcollection

  • -repeat

  • -stack

  • -totalmem

Die file Unteroption wird beispielsweise nicht unterstützt. db2pd -db testdb -tcbstats file=tcbstat.out

Die Verwendung der stacks Option wird beispielsweise nicht unterstützt. db2pd -edus interval=5 top=10 stacks

Nutzungshinweise

Diese gespeicherte Prozedur sammelt Informationen, die bei der Überwachung und Problembehandlung von RDS for Db2-Datenbanken helfen können.

Die gespeicherte Prozedur verwendet IBM db2pdHilfsprogramm zum Ausführen verschiedener Befehle. Das db2pd Hilfsprogramm erfordert eine SYSADM Autorisierung, über die der RDS for Db2-Masterbenutzer nicht verfügt. Mit der gespeicherten Amazon RDS-Prozedur kann der Masterbenutzer das Hilfsprogramm jedoch verwenden, um verschiedene Befehle auszuführen. Weitere Informationen über das Hilfsprogramm finden Sie unter db2pd — Db2-Datenbankbefehl überwachen und beheben im IBM Db2 -Dokumentation.

Die Ausgabe ist auf maximal 2 GB beschränkt.

Hinweise zur Überprüfung des Status der Erfassung von Informationen über die Datenbank finden Sie unterrdsadmin.get_task_status.

Beispiele

Beispiel 1: Rückgabe der Verfügbarkeit der DB-Instance

Das folgende Beispiel gibt die Verfügbarkeit einer RDS für eine DB2-DB-Instance zurück:

db2 "call rdsadmin.db2pd_command('-')"

Beispiel 2: Rückgabe der Verfügbarkeit der Datenbank

Das folgende Beispiel gibt die Verfügbarkeit einer Datenbank mit dem Namen zurück: TESTDB

db2 "call rdsadmin.db2pd_command('-db TESTDB -')"

Beispiel 3: Rückgabe der Speichernutzung einer DB-Instance

Das folgende Beispiel gibt die Speichernutzung einer RDS für eine DB2-DB-Instance zurück:

db2 "call rdsadmin.db2pd_command('-dbptnmem')"

Beispiel 4: Rückgabe von Speichersätzen von DB-Instance und Datenbank

Das folgende Beispiel gibt die Speichersätze einer RDS for Db2-DB-Instance und einer Datenbank namens TESTDB zurück:

db2 "call rdsadmin.db2pd_command('-inst -db TESTDB -memsets')"

rdsadmin.force_application

Zwingt Anwendungen aus einer RDS for Db2-Datenbank.

Syntax

db2 "call rdsadmin.force_application( ?, 'applications')"

Parameter

Der folgende Ausgabeparameter ist erforderlich:

?

Eine Parametermarkierung, die eine Fehlermeldung ausgibt. Dieser Parameter akzeptiert nur?.

Der folgende Eingabeparameter ist erforderlich:

applications

Die Anwendungen, die Sie aus einer RDS for Db2-Datenbank ausschalten möchten. Der Datentyp istvarchar. Gültige Werte: ALL oder application_handle.

Trennen Sie die Namen mehrerer Anwendungen durch Kommas. Beispiel: 'application_handle_1,application_handle_2'.

Nutzungshinweise

Diese gespeicherte Prozedur zwingt alle Anwendungen aus einer Datenbank, sodass Sie Wartungsarbeiten durchführen können.

Die gespeicherte Prozedur verwendet die IBM FORCE APPLICATIONBefehl. Für den FORCE APPLICATION Befehl ist eine SYSCTRL Autorisierung SYSADMSYSMAINT, oder erforderlich, über die der RDS for Db2-Masterbenutzer nicht verfügt. Mit der gespeicherten Amazon RDS-Prozedur kann der Masterbenutzer den Befehl jedoch verwenden. Weitere Informationen finden Sie unter dem Befehl FORCE APPLICATION im IBM Db2 -Dokumentation.

Hinweise zur Überprüfung des Status beim Abschalten von Anwendungen aus einer Datenbank finden Sie unterrdsadmin.get_task_status.

Beispiele

Beispiel 1: Alle Anwendungen angeben

Im folgenden Beispiel werden alle Anwendungen aus einer RDS for Db2-Datenbank entfernt:

db2 "call rdsadmin.force_application( ?, 'ALL')"

Beispiel 2: Angabe mehrerer Anwendungen

Im folgenden Beispiel werden Anwendungs-Handles 99918891, und 1192 aus einer RDS for Db2-Datenbank deaktiviert:

db2 "call rdsadmin.force_application( ?, '9991, 8891, 1192')"

rdsadmin.set_archive_log_retention

Konfiguriert den Zeitraum (in Stunden) für die Aufbewahrung von Archivprotokolldateien für die angegebene RDS for Db2-Datenbank.

Syntax

db2 "call rdsadmin.set_archive_log_retention( ?, 'database_name', 'archive_log_retention_hours')"

Parameter

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 Aufbewahrung von Archivprotokollen konfiguriert werden soll. Der Datentyp istvarchar.

archive_log_retention_hours

Die Anzahl der Stunden, für die die Archiv-Protokolldateien aufbewahrt werden sollen. Der Datentyp istsmallint. Die Standardeinstellung ist0, und das Maximum ist 168 (7 Tage).

Wenn der Wert ist0, speichert Amazon RDS die Archiv-Protokolldateien nicht.

Nutzungshinweise

Standardmäßig speichert RDS for Db2 Protokolle für 5 Minuten. Wir empfehlen, dass Sie Replikationstools verwenden, z. B. AWS DMS für Change Data Capture (CDC) oder IBM Q Replication, legen Sie in diesen Tools die Aufbewahrung von Protokollen für mehr als 5 Minuten fest.

Sie können die aktuellen Einstellungen für die Aufbewahrung von Archivprotokollen einsehen, indem Sie anrufenrdsadmin.show_archive_log_retention.

Sie können die Einstellung für die Aufbewahrung von Archivprotokollen in der rdsadmin Datenbank nicht konfigurieren.

Beispiele

Beispiel 1: Einstellung der Aufbewahrungszeit

Im folgenden Beispiel wird die Aufbewahrungszeit des Archivprotokolls für eine aufgerufene Datenbank TESTDB auf 24 Stunden festgelegt.

db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '24')"

Beispiel 2: Deaktivierung der Aufbewahrungszeit

Im folgenden Beispiel wird die Aufbewahrung von Archivprotokollen für eine Datenbank mit dem Namen deaktiviert. TESTDB

db2 "call rdsadmin.set_archive_log_retention( ?, 'TESTDB', '0')"

rdsadmin.show_archive_log_retention

Gibt die aktuelle Aufbewahrungseinstellung für das Archivprotokoll für die angegebene Datenbank zurück.

Syntax

db2 "call rdsadmin.show_archive_log_retention( ?, 'database_name')"

Parameter

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 Einstellung zur Aufbewahrung von Archivprotokollen angezeigt werden soll. Der Datentyp istvarchar.

Beispiele

Das folgende Beispiel zeigt die Einstellung zur Aufbewahrung von Archivprotokollen für eine Datenbank namensTESTDB.

db2 "call rdsadmin.show_archive_log_retention( ? 'TESTDB')"

rdsadmin.list_archive_log_information

Gibt Details zu den Archivprotokolldateien zurück, z. B. Größe, Datum und 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')"

Parameter

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 Archivprotokollinformationen aufgelistet werden sollen. Der Datentyp istvarchar.

Beispiele

Das folgende Beispiel gibt Archivprotokollinformationen für eine Datenbank mit dem Namen zurückTESTDB.

db2 "call rdsadmin.list_archive_log_information( ? 'TESTDB')"