本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
您可以在下文中找到如何在執行 Oracle 的 Amazon RDS 資料庫執行個體上執行與記錄日誌相關的一般 DBA 任務。為了提供受管理的服務體驗,Amazon RDS 並不會提供資料庫執行個體的 Shell 存取權,而且會將存取權限制在某些需要進階權限的系統程序和資料表。
如需更多詳細資訊,請參閱 Amazon RDS for Oracle 資料庫日誌檔案。
設定強制記錄
在強制記錄模式中,Oracle 會將所有變更記錄至資料庫,暫存資料表空間和暫存區段中的變更除外 (會忽略 NOLOGGING
子句)。如需詳細資訊,請參閱 Oracle 文件中的指定 FORCE LOGGING 模式
若要設定強制記錄,請使用 Amazon RDS 程序 rdsadmin.rdsadmin_util.force_logging
。force_logging
程序具有下列參數。
參數名稱 | 資料類型 | 預設 | 是 | 描述 |
---|---|---|---|---|
|
布林值 |
true |
否 |
設定為 |
下列範例會將資料庫設為強制記錄模式。
EXEC rdsadmin.rdsadmin_util.force_logging(p_enable => true
);
設定補充記錄
如果您啟用補充記錄,LogMiner 將具有支援鏈結資料列和叢集資料表的必要資訊。如需詳細資訊,請參閱 Oracle 文件中的補充記錄
Oracle 資料庫預設不會啟用補充記錄。若要啟用和停用補充記錄,請使用 Amazon RDS 程序 rdsadmin.rdsadmin_util.alter_supplemental_logging
。如需 Amazon RDS 如何為 Oracle 資料庫執行個體管理已封存重做日誌保留的詳細資訊,請參閱 保留封存的重做日誌。
alter_supplemental_logging
程序具有下列參數。
參數名稱 | 資料類型 | 預設 | 必要 | 描述 |
---|---|---|---|---|
|
varchar2 |
— |
是 |
|
|
varchar2 |
null |
否 |
補充記錄的類型。有效值為 |
下列範例會啟用補充記錄。
begin
rdsadmin.rdsadmin_util.alter_supplemental_logging(
p_action => 'ADD
');
end;
/
下列範例會為所有長度固定的最大資料欄啟用補充記錄。
begin
rdsadmin.rdsadmin_util.alter_supplemental_logging(
p_action => 'ADD
',
p_type => 'ALL
');
end;
/
下列範例會為主索引鍵資料欄啟用補充記錄。
begin
rdsadmin.rdsadmin_util.alter_supplemental_logging(
p_action => 'ADD
',
p_type => 'PRIMARY KEY
');
end;
/
切換線上日誌檔案
若要切換日誌檔案,請使用 Amazon RDS 程序 rdsadmin.rdsadmin_util.switch_logfile
。switch_logfile
程序沒有參數。
下列範例會切換日誌檔案。
EXEC rdsadmin.rdsadmin_util.switch_logfile;
新增線上重做日誌
執行 Oracle 的 Amazon RDS 資料庫執行個體會從四個線上重做日誌開始,每個為 128 MB。若要新增額外的重做日誌,請使用 Amazon RDS 程序 rdsadmin.rdsadmin_util.add_logfile
。
add_logfile
程序具有下列參數。
注意
參數是互斥的。
參數名稱 | 資料類型 | 預設 | 必要 | 描述 |
---|---|---|---|---|
|
正數 |
null |
否 |
日誌檔案的大小 (以位元組為單位)。 只有在日誌的大小低於 2147483648 位元組 (2 GiB) 時,才使用此參數。否則,RDS 會發出錯誤。對於超過此位元組值的日誌大小,請改用 |
|
varchar2 |
— |
是 |
日誌檔案大小,以 KB (K)、MB (M) 或 GB (G) 為單位。 |
下列命令會新增 100 MB 的日誌檔案。
EXEC rdsadmin.rdsadmin_util.add_logfile(p_size => '100M
');
捨棄線上重做日誌
若要捨棄重做日誌,請使用 Amazon RDS 程序 rdsadmin.rdsadmin_util.drop_logfile
。drop_logfile
程序具有下列參數。
參數名稱 | 資料類型 | 預設 | 必要 | 描述 |
---|---|---|---|---|
|
正數 |
— |
是 |
日誌的群組編號。 |
下列範例會捨棄群組編號 3 的日誌。
EXEC rdsadmin.rdsadmin_util.drop_logfile(grp => 3
);
您只可以捨棄狀態為「未使用」或「非作用中」的日誌。下列範例會取得日誌的狀態。
SELECT GROUP#, STATUS FROM V$LOG;
GROUP# STATUS
---------- ----------------
1 CURRENT
2 INACTIVE
3 INACTIVE
4 UNUSED