RDS for Oracle 中附加存储卷的使用案例
附加存储卷支持各种数据库管理方案。以下各节介绍了常见的使用案例和实施方法。
将存储容量扩展到 64 TiB 以上
当主存储卷接近 64 TiB 限制但数据库中需要更多存储空间时,您可以使用附加存储卷。您可以使用 modify-db-instance 命令将附加存储卷连接到数据库实例,每个存储卷最多 64 TiB。连接附加存储卷后,您可以在附加存储卷上创建表空间,并使用标准 Oracle SQL 将表、索引和分区等对象移动到这些表空间。有关更多信息,请参阅 在 RDS for Oracle 中对附加存储卷执行数据库管理操作。
在单独的卷上对频繁和不频繁访问的数据进行存储分层
您可以通过在卷之间配置不同的存储类型,使用附加存储卷来优化成本和性能。例如,您可以使用高性能预调配 IOPS SSD 存储(io2)卷来存储频繁访问的数据,而将历史数据存储在经济实惠的通用型(gp3)存储卷上。您可以使用标准 Oracle 命令将特定的数据库对象(表、索引和分区)移动到这些表空间。有关更多信息,请参阅 在 RDS for Oracle 中对附加存储卷执行数据库管理操作。
用于数据加载和卸载的临时存储
您可以按照以下步骤,使用附加存储卷作为大型数据加载或导出的临时存储:
-
使用以下命令在附加存储卷上创建一个目录:
BEGIN rdsadmin.rdsadmin_util.create_directory( p_directory_name => 'DATA_PUMP_DIR2', p_database_volume_name => 'rdsdbdata2'); END; / -
创建目录后,按照使用 Oracle Data Pump 导入中所述的步骤将数据导出并导入到新目录。
-
操作完成后,移除文件,并可以选择删除该卷以节省存储成本。只有当附加存储卷为空时,您才能移除该存储卷。
将 Oracle 可传输表空间与附加存储卷结合使用
您可以通过 Oracle 可传输表空间,使用附加存储卷将数据文件移动到附加存储卷中,步骤如下:
-
在使用附加存储卷将可传输表空间导入到目标数据库之前,先在会话级别设置
db_create_file_dest参数。ALTER SESSION SET db_create_file_dest = '/rdsdbdata2/db'; VAR x CLOB; BEGIN :x := rdsadmin.rdsadmin_transport_util.import_xtts_tablespaces( p_tablespace_list => 'TBTEST1', p_directory_name => 'XTTS_DIR_DATA2', p_platform_id => 13); END; / PRINT :x; -
检查可传输表空间导入状态:
ALTER SESSION SET nls_date_format = 'DD.MM.YYYY HH24:MI:SS'; COL xtts_operation_start_utc FORMAT A30 COL xtts_operation_end_utc FORMAT A30 COL xtts_operation_state FORMAT A30 COL xtts_operation_type FORMAT A30 SELECT xtts_operation_start_utc, xtts_operation_type, xtts_operation_state FROM rdsadmin.rds_xtts_operation_info; -
可传输表空间导入完成后,导入可传输表空间元数据。
BEGIN rdsadmin.rdsadmin_transport_util.import_xtts_metadata( p_datapump_metadata_file => 'xttdump.dmp', p_directory_name => 'XTTS_DIR_DATA2'); END; /