RDS for Db2 資料庫的存放程序 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

RDS for Db2 資料庫的存放程序

本主題中所述的內建預存程序會管理 Amazon RDS for Db2 的資料庫。若要執行這些程序,主要使用者必須先連線到rdsadmin資料庫。

這些預存程序用於各種任務。這不是完整清單。

如需語法、參數、用量備註和範例的相關資訊,請參閱下列內建預存程序。

rdsadmin.create_database

建立資料庫。

語法

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

參數

注意

此預存程序不會驗證必要參數的組合。當您呼叫 時rdsadmin.get_task_status,使用者定義的函數可能會傳回錯誤database_territory,因為 database_codeset、 和 database_collation 的組合無效。如需詳細資訊,請參閱 IBM Db2 文件中的選擇資料庫的程式碼頁面、區域和定序

以下是必要參數:

database_name

要建立的資料庫名稱。資料類型為 varchar

下列是選用參數:

database_page_size

資料庫的預設頁面大小。有效值:409681921638432768。資料類型為 integer。預設值為 8192

重要

Amazon RDS 支援 4 KiB、8 KiB 和 16 KiB 頁面的寫入原子性。相反地,32 KiB 頁面會折斷寫入,或將部分資料寫入桌面。如果您使用 32 KiB 頁面,我們建議您啟用point-in-time復原和自動備份。否則,您會面臨無法從未完成的頁面復原的風險。如需詳細資訊,請參閱備份簡介將資料庫執行個體還原至 Amazon RDS 的指定時間

database_code_set

資料庫的程式碼集。資料類型為 varchar。預設值為 UTF-8

database_ 區域

資料庫的兩個字母國家/地區代碼。資料類型為 varchar。預設值為 US

database_collation

定序序列,決定如何排序和比較存放在資料庫中的字元字串。資料類型為 varchar

有效值:

  • COMPATIBILITY – IBM Db2 第 2 版定序序列。

  • EBCDIC_819_037 – ISO Latin 程式碼頁面,定序;CCSID 037 (EBCDIC 美式英文)。

  • EBCDIC_819_500 – ISO Latin 程式碼頁面,定序;CCSID 500 (EBCDIC International)。

  • EBCDIC_850_037 – ASCII 拉丁碼頁面,定序;CCSID 037 (EBCDIC 美式英文)。

  • EBCDIC_850_500 – ASCII 拉丁碼頁面,定序;CCSID 500 (EBCDIC International)。

  • EBCDIC_932_5026 – ASCII 日文代碼頁面,定序;CCSID 037 (EBCDIC 美式英文)。

  • EBCDIC_932_5035 – ASCII 日文代碼頁面,定序;CCSID 500 (EBCDIC International)。

  • EBCDIC_1252_037 – Windows Latin 程式碼頁面,定序;CCSID 037 (EBCDIC 美式英文)。

  • EBCDIC_1252_500 – Windows Latin 程式碼頁面,定序;CCSID 500 (EBCDIC International)。

  • IDENTITY – 預設定序。字串會比較位元組的位元組。

  • IDENTITY_16BIT – UTF-16 的相容性編碼結構描述:8 位元 (CESU-8) 定序序列。如需詳細資訊,請參閱 Unicode Consortium 網站上的 Unicode 技術報告 #26

  • NLSCHAR – 僅適用於泰文程式碼頁面 (CP874)。

  • SYSTEM – 如果您使用 SYSTEM,資料庫會自動使用 database_codeset和 的定序序列database_territory

預設值為 IDENTITY

此外,RDS for Db2 支援下列定序群組: language-aware-collationlocale-sensitive-collation。如需詳細資訊,請參閱 IBM Db2 文件中的選擇 Unicode 資料庫的定序

database_autoconfigure_str

AUTOCONFIGURE 命令語法,例如 'AUTOCONFIGURE APPLY DB'。資料類型為 varchar。預設值為空字串或 null。

如需詳細資訊,請參閱 IBM Db2 文件中的 AUTOCONFIGURE命令

使用須知

如果您打算修改 db2_compatibility_vector 參數,請在建立資料庫之前修改 參數。如需詳細資訊,請參閱設定 db2_compatibility_vector 參數

特殊考量:

  • 傳送至 Db2 執行個體的CREATE DATABASE命令使用 RESTRICTIVE選項。

  • RDS for Db2 僅使用AUTOMATIC STORAGE資料表空間。

  • RDS for Db2 會使用 NUMSEGS和 的預設值DFT_EXTENT_SZ

  • RDS for Db2 使用儲存加密,不支援資料庫加密。

如需這些考量的詳細資訊,請參閱 IBM Db2 文件中的 CREATE DATABASE命令

呼叫 之前rdsadmin.create_database,您必須連線到rdsadmin資料庫。在下列範例中,將 master_usernamemaster_password 取代為您的 RDS for Db2 資料庫執行個體資訊:

db2 connect to rdsadmin user master_username using master_password

如需檢查建立資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.create_database,請參閱 對預存程序的錯誤進行故障診斷

範例

下列範例會使用日本的 database_code_setdatabase_territorydatabase_collation 參數的TESTJP正確組合來建立名為 的資料庫:

db2 "call rdsadmin.create_database('TESTJP', 4096, 'IBM-437', 'JP', 'SYSTEM')"

rdsadmin.deactivate_database

停用資料庫。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要停用的資料庫名稱。資料類型為 varchar

使用須知

您可以停用資料庫以節省記憶體資源或進行其他資料庫組態變更。若要讓已停用的資料庫恢復連線,請呼叫 rdsadmin.activate_database 預存程序。

如需檢查停用資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.deactivate_database,請參閱 對預存程序的錯誤進行故障診斷

範例

下列範例會停用名為 的資料庫TESTDB

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

rdsadmin.activate_database

啟用資料庫。

如需有關 rdsadmin.reactivate_databaserdsadmin.activate_database 之間的差異的資訊,請參閱 使用須知

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要啟用的資料庫名稱。資料類型為 varchar

使用須知

根據預設,所有資料庫都會在建立時啟用。如果您停用獨立資料庫執行個體上的資料庫以節省記憶體資源或進行其他資料庫組態變更,請呼叫rdsadmin.activate_database預存程序以再次啟用資料庫。

如需有關檢查啟動資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.activate_database,請參閱 對預存程序的錯誤進行故障診斷

範例

下列範例會啟用名為 的資料庫TESTDB

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

rdsadmin.reactivate_database

重新啟用資料庫。

如需 rdsadmin.activate_database和 之間差異的資訊rdsadmin.reactivate_database,請參閱 使用須知

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要重新啟用的資料庫名稱。資料類型為 varchar

使用須知

當您呼叫rdsadmin.reactivate_database預存程序時,預存程序會先呼叫預rdsadmin.deactivate_database存程序來停用資料庫,然後呼叫rdsadmin.activate_database預存程序來啟用資料庫。

變更資料庫組態之後,您可能需要在 RDS for Db2 資料庫執行個體上重新啟動資料庫。若要判斷是否需要重新啟用資料庫,請連線至資料庫並執行 db2 get db cfg show detail

對於獨立資料庫執行個體上的資料庫,您可以使用 rdsadmin.reactivate_database 存放程序來重新啟用資料庫。或者,如果您已呼叫rdsadmin.deactivate_database預存程序,您可以改為呼叫預rdsadmin.activate_database存程序。

如需有關檢查重新啟用資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.reactivate_database,請參閱 對預存程序的錯誤進行故障診斷

範例

下列範例會重新啟動名為 的資料庫TESTDB

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

rdsadmin.drop_database

捨棄資料庫。

語法

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

參數

以下是必要參數:

database_name

要捨棄的資料庫名稱。資料類型為 varchar

使用須知

rdsadmin.drop_database 只有在符合下列條件時,才能呼叫 來捨棄資料庫:

呼叫 之前rdsadmin.drop_database,您必須連線到rdsadmin資料庫。在下列範例中,將 master_usernamemaster_password 取代為您的 RDS for Db2 資料庫執行個體資訊:

db2 connect to rdsadmin user master_username using master_password

如需檢查捨棄資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.drop_database,請參閱 對預存程序的錯誤進行故障診斷

範例

下列範例會捨棄名為 的資料庫TESTDB

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

rdsadmin.update_db_param

更新資料庫參數。

語法

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

參數

下列是必要參數:

database_name

要執行任務的資料庫名稱。資料類型為 varchar

參數_to_modify

要修改的參數名稱。資料類型為 varchar。如需詳細資訊,請參閱Amazon RDS for Db2 參數

changed_value

要變更參數值的值。資料類型為 varchar

使用須知

如需檢查更新資料庫參數狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.update_db_param,請參閱 對預存程序的錯誤進行故障診斷

範例

範例 1:更新參數

下列範例會將名為 100之資料庫的 archretrydelay 參數更新為 TESTDB

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

範例 2:延遲物件的驗證

下列範例會延遲名為 的資料庫中建立物件的驗證TESTDB,以避免相依性檢查:

db2 "call rdsadmin.update_db_param( 'TESTDB', 'auto_reval', 'deferred_force')"

rdsadmin.set_configuration

設定資料庫的特定設定。

語法

db2 "call rdsadmin.set_configuration( 'name', 'value')"

參數

下列是必要參數:

name

組態設定的名稱。資料類型為 varchar

組態設定的值。資料類型為 varchar

使用須知

下表顯示您可以使用 控制的組態設定rdsadmin.set_configuration

名稱 描述

RESTORE_DATABASE_NUM_BUFFERS

在還原操作期間要建立的緩衝區數目。此值必須小於資料庫執行個體類別的總記憶體大小。如果未設定此設定,Db2 會決定在還原操作期間要使用的值。如需詳細資訊,請參閱 IBM Db2 文件

RESTORE_DATABASE_PARALLELISM

在還原操作期間要建立的緩衝區操縱器數量。此值必須小於資料庫執行個體 vCPUs數目的兩倍。如果未設定此設定,Db2 會決定在還原操作期間要使用的值。如需詳細資訊,請參閱 IBM Db2 文件

範例

範例 1:指定要建立的緩衝區操縱器數量

下列範例會將RESTORE_DATABASE_PARALLELISM組態設定為 8

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

範例 2:指定要建立的緩衝區數目

下列範例會將RESTORE_DATABASE_NUM_BUFFERS組態設定為 150

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

rdsadmin.show_configuration

傳回您可以使用預存程序 設定的目前設定rdsadmin.set_configuration

語法

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

參數

以下參數為選用:

name

要傳回相關資訊的組態設定名稱。資料類型為 varchar

下列組態名稱有效:

  • RESTORE_DATABASE_NUM_BUFFERS – 在還原操作期間要建立的緩衝區數目。

  • RESTORE_DATABASE_PARALLELISM – 在還原操作期間要建立的緩衝區操縱器數目。

使用須知

如果您未指定組態設定的名稱, 會rdsadmin.show_configuration傳回您可以使用預存程序 設定之所有組態設定的資訊rdsadmin.set_configuration

範例

下列範例會傳回目前RESTORE_DATABASE_PARALLELISM組態的相關資訊。

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

rdsadmin.restore_database

將資料庫從 Amazon S3 儲存貯體還原至 RDS for Db2 資料庫執行個體。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

在 RDS for Db2 中還原的目標資料庫名稱。資料類型為 varchar

例如,如果來源資料庫名稱為 TESTDB,而您將 database_name 設定為 NEWDB,則 Amazon RDS 會還原NEWDB為來源資料庫。

s3_bucket_name

備份所在的 Amazon S3 儲存貯體名稱。資料類型為 varchar

s3_prefix

在下載期間用於檔案比對的字首。資料類型為 varchar

如果此參數為空,則會下載 Amazon S3 儲存貯體中的所有檔案。以下是範例字首:

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

資料庫備份映像的時間戳記。資料類型為 varchar

時間戳記包含在備份檔案名稱中。例如, 20230615010101是檔案名稱 的時間戳記SAMPLE.0.rdsdb.DBPART000.20230615010101.001

backup_type

備份的類型。資料類型為 varchar。有效值:OFFLINEONLINE

ONLINE 用於近乎零的停機時間遷移。如需詳細資訊,請參閱遷移來源 Linux 至 Linux Amazon RDS for Db2 的停機時間接近零

使用須知

您可以使用此預存程序將 Db2 資料庫遷移至 RDS for Db2 資料庫執行個體。如需詳細資訊,請參閱使用 AWS 服務將資料從 Db2 遷移至 Amazon RDS for Db2。您也可以使用此預存程序,以使用相同還原映像的不同資料庫名稱建立相同資料庫的多個複本。

呼叫預存程序之前,請檢閱下列考量事項:

  • 在還原資料庫之前,您必須為 RDS for Db2 資料庫執行個體佈建儲存空間,該儲存空間等於或大於備份大小和磁碟上原始 Db2 資料庫的總和。如需詳細資訊,請參閱Insufficient disk space

  • 當您還原備份時,Amazon RDS 會在 RDS for Db2 資料庫執行個體上擷取備份檔案。每個備份檔案都必須為 5 TB 或更小。如果備份檔案超過 5 TB,您必須將備份檔案分割為較小的檔案。

  • 若要使用rdsadmin.restore_database預存程序還原所有檔案,請勿在檔案名稱中包含時間戳記後面的檔案編號尾碼。例如,s3_prefixbackupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101還原下列檔案:

    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 不支援非自動儲存。如需詳細資訊,請參閱Tablespaces not restored

  • RDS for Db2 不支援非連接常式。如需詳細資訊,請參閱Non-fenced routines not allowed

  • 若要改善資料庫還原操作的效能,您可以設定 RDS 要使用的緩衝區和緩衝區操縱器數量。若要檢查目前的組態,請使用 rdsadmin.show_configuration。若要變更組態,請使用 rdsadmin.set_configuration

若要讓資料庫上線並在還原資料庫後套用其他交易日誌,請參閱 rdsadmin.rollforward_database

如需檢查資料庫還原狀態的資訊,請參閱 rdsadmin.get_task_status

如需呼叫 時傳回的錯誤訊息rdsadmin.restore_database,請參閱 對預存程序的錯誤進行故障診斷

範例

下列範例使用具有 s3_prefix 的單一檔案或多個檔案還原離線備份backupfolder/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

讓資料庫上線,並在呼叫 還原資料庫後套用其他交易日誌rdsadmin.restore_database

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要在其中執行操作的資料庫名稱。資料類型為 varchar

s3_bucket_name

備份所在的 Amazon S3 儲存貯體名稱。資料類型為 varchar

s3_prefix

在下載期間用於檔案比對的字首。資料類型為 varchar

如果此參數為空,則會下載 S3 儲存貯體中的所有檔案。下列範例是範例字首:

backupfolder/SAMPLE.0.rdsdb.DBPART000.20230615010101

下列輸入參數為選用:

rollforward_to_option

您要向前滾動的點。資料類型為 varchar。有效值:END_OF_LOGSEND_OF_BACKUP。預設值為 END OF LOGS

complete_rollforward

指定是否完成向前滾動程序。資料類型為 varchar。預設值為 TRUE

如果為 TRUE,則完成後,資料庫會上線並可存取。如果為 FALSE,則資料庫會保持 ROLL-FORWARD PENDING 狀態。

使用須知

呼叫 之後rdsadmin.restore_database,您必須呼叫 rollforward_database才能從 S3 儲存貯體套用封存日誌。您也可以使用此預存程序,在呼叫 後還原其他交易日誌rdsadmin.restore_database

如果您將 complete_rollforward設定為 FALSE,則資料庫處於 ROLL-FORWARD PENDING 狀態且離線。若要讓資料庫上線,您必須呼叫 rdsadmin.complete_rollforward

如需檢查轉遞資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

範例

範例 1:將具有交易日誌的資料庫上線

下列範例會使用交易日誌轉送至資料庫的線上備份,然後讓資料庫上線:

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

範例 2:將沒有交易日誌的資料庫上線

下列範例會轉送至沒有交易日誌的資料庫線上備份,然後讓資料庫上線:

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

範例 3:未將具有交易日誌的資料庫上線

下列範例會使用交易日誌轉送至資料庫的線上備份,然後不會讓資料庫上線:

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

範例 4:未將具有其他交易日誌的資料庫上線

下列範例會使用其他交易日誌轉送至資料庫的線上備份,然後不會讓資料庫上線:

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

rdsadmin.complete_rollforward

ROLL-FORWARD PENDING 狀態將資料庫上線。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

您要上線的資料庫名稱。資料類型為 varchar

使用須知

如果您呼叫 rdsadmin.rollforward_database 並將 complete_rollforward設定為 FALSE,則您的資料庫處於 ROLL-FORWARD PENDING 狀態且離線。若要完成向前滾動程序並使資料庫上線,請呼叫 rdsadmin.complete_rollforward

如需有關檢查完成向前滾動程序狀態的資訊,請參閱 rdsadmin.get_task_status

範例

下列範例可讓TESTDB資料庫上線:

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

rdsadmin.db2pd_command

收集 RDS for Db2 資料庫的相關資訊。

語法

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

參數

需要下列輸入參數:

db2pd_cmd

您要執行的db2pd命令名稱。資料類型為 varchar

參數必須以連字號開頭。如需參數清單,請參閱 IBM Db2 文件中的 db2pd - 監控和疑難排解 Db2 資料庫命令

不支援下列選項:

  • -addnode

  • -alldatabases

  • -alldbp

  • -alldbs

  • -allmembers

  • -alm_in_memory

  • -cfinfo

  • -cfpool

  • -command

  • -dbpartitionnum

  • -debug

  • -dump

  • -everything

  • -file | -o

  • -ha

  • -interactive

  • -member

  • -pages

    注意

    系統支援 -pages summary

  • -pdcollection

  • -repeat

  • -stack

  • -totalmem

不支援 file子選項,例如 db2pd -db testdb -tcbstats file=tcbstat.out

不支援使用 stacks選項,例如 db2pd -edus interval=5 top=10 stacks

使用須知

此預存程序會收集有助於監控和故障診斷 RDS for Db2 資料庫的資訊。

預存程序會使用 IBMdb2pd公用程式來執行各種命令。db2pd 公用程式需要SYSADM授權,RDS for Db2 主要使用者沒有授權。不過,透過 Amazon RDS 預存程序,主要使用者可以使用 公用程式來執行各種命令。如需 公用程式的詳細資訊,請參閱 IBM Db2 文件中的 db2pd - 監控 Db2 資料庫命令並進行疑難排解

輸出上限為 2 GB。

如需檢查收集資料庫相關資訊狀態的相關資訊,請參閱 rdsadmin.get_task_status

範例

範例 1:傳回資料庫執行個體的執行時間

下列範例會傳回 RDS for Db2 資料庫執行個體的執行時間:

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

範例 2:傳回資料庫的執行時間

下列範例會傳回名為 之資料庫的執行時間TESTDB

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

範例 3:傳回資料庫執行個體的記憶體用量

下列範例會傳回 RDS for Db2 資料庫執行個體的記憶體用量:

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

範例 4:傳回資料庫執行個體和資料庫的記憶體集

下列範例會傳回 RDS for Db2 資料庫執行個體的記憶體集,以及名為 的資料庫TESTDB

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

rdsadmin.force_application

強制應用程式離開 RDS for Db2 資料庫。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

應用程式

您要強制退出 RDS for Db2 資料庫的應用程式。資料類型為 varchar。有效值: ALLapplication_handle

以逗號分隔多個應用程式的名稱。範例:'application_handle_1application_handle_2'。

使用須知

此預存程序會強制所有應用程式離開資料庫,讓您可以執行維護。

預存程序使用 IBMFORCE APPLICATION命令。FORCE APPLICATION 命令需要 RDS for Db2 SYSADM主要使用者沒有的 SYSMAINT、 或 SYSCTRL授權。不過,透過 Amazon RDS 預存程序,主要使用者可以使用 命令。如需詳細資訊,請參閱 IBM Db2 文件中的 FORCE APPLICATION 命令

如需檢查強制應用程式離開資料庫狀態的資訊,請參閱 rdsadmin.get_task_status

範例

範例 1:指定所有應用程式

下列範例強制所有應用程式退出 RDS for Db2 資料庫:

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

範例 2:指定多個應用程式

下列範例會強制應用程式處理 RDS for Db2 資料庫119299918891、 和 :

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

rdsadmin.set_archive_log_retention

設定保留指定 RDS for Db2 資料庫封存日誌檔案的時間量 (以小時為單位)。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要設定封存日誌保留的資料庫名稱。資料類型為 varchar

archive_log_retention_hours

保留封存日誌檔案的時數。資料類型為 smallint。預設值為 0,上限為 168(7 天)。

如果值為 0,Amazon RDS 不會保留封存日誌檔案。

使用須知

根據預設,RDS for Db2 會保留日誌 5 分鐘。如果您使用 等複寫工具 AWS DMS 進行變更資料擷取 (CDC) 或 IBM Q Replication,建議您在這些工具中設定超過 5 分鐘的日誌保留。

您可以呼叫 來檢視目前的封存日誌保留設定rdsadmin.show_archive_log_retention

您無法在rdsadmin資料庫上設定封存日誌保留設定。

範例

範例 1:設定保留時間

下列範例會將名為 的資料庫封存日誌保留時間設定為 TESTDB 24 小時。

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

範例 2:停用保留時間

下列範例會停用名為 之資料庫的封存日誌保留TESTDB

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

rdsadmin.show_archive_log_retention

傳回指定資料庫目前的封存日誌保留設定。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要顯示其封存日誌保留設定的資料庫名稱。資料類型為 varchar

範例

下列範例顯示名為 之資料庫的封存日誌保留設定TESTDB

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

rdsadmin.list_archive_log_information

傳回封存日誌檔案的詳細資訊,例如大小、建立日期和時間,以及指定資料庫的個別日誌檔案名稱。它也會傳回資料庫中日誌檔案所使用的總儲存量。

語法

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

參數

需要下列輸出參數:

?

輸出錯誤訊息的參數標記。此參數僅接受 ?

需要下列輸入參數:

database_name

要列出封存日誌資訊的資料庫名稱。資料類型為 varchar

範例

下列範例會傳回名為 之資料庫的封存日誌資訊TESTDB

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