选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

将 Oracle 迁移 PeopleSoft 到亚马逊RDS定制版 - AWS Prescriptive Guidance

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将 Oracle 迁移 PeopleSoft 到亚马逊RDS定制版

由 Gaurav Gupta 创作 () AWS

摘要

Oracle PeopleSoft 是一款适用于企业级流程的企业资源规划 (ERP) 解决方案。 PeopleSoft 具有三层架构:客户端、应用程序和数据库。 PeopleSoft 可以在 Amazon Relational Database Service(亚马逊RDS)上运行。现在,您还可以 PeopleSoft 在 Amazon Cu RDS stom 上运行,它提供对底层操作系统的访问权限。

Amazon C RDS ustom for Oracle 是一项托管数据库服务,适用于需要访问底层操作系统和数据库环境的传统、定制和打包应用程序。当您将 Oracle 数据库迁移到 Amazon Cu RDS stom 时,Amazon Web Services (AWS) 可以管理备份任务和高可用性,而您可以专注于维护 PeopleSoft 应用程序和功能。有关迁移需要考虑的关键因素,请参阅《AWS规范性指南》中的 Oracle 数据库迁移策略

此模式侧重于使用 Oracle Recovery Manager (EC2) 备份将亚马逊弹性计算云 (AmazonRMAN) 上的 PeopleSoft 数据库迁移到亚马逊RDS定制的步骤。它在EC2实例和亚马逊RDS定制之间使用亚马逊弹性文件系统 (AmazonEFS) 共享文件系统,但您也可以使用亚马逊FSx或任何共享云端硬盘。该模式使用RMAN完全备份(有时称为 0 级备份)。

先决条件和限制

先决条件

  • 在亚马逊上运行的 Oracle 19C 版本源数据库,EC2搭载 Oracle Linux 7、Oracle Linux 8、红帽企业 Linux (RHEL) 7 或 RHEL 8。在此模式的示例中,源数据库名称为 FSDMO92,但这不是必需的。

    注意

    您也可以将此模式用于本地 Oracle 源数据库。您必须在本地网络和虚拟私有云之间建立适当的网络连接(VPC)。

  • 一个 PeopleSoft 9.2 的演示实例。

  • 单个 PeopleSoft 应用程序层。但是,您可以调整此模式以使用多个应用程序层。

  • Amazon C RDS ustom 配置了至少 8 GB 的交换空间。

限制

此模式不支持以下配置:

  • 将数据库 ARCHIVE_LAG_TARGET 参数设置为 60–7200 范围之外的值

  • 禁用数据库实例日志模式 (NOARCHIVELOG)

  • 关闭EC2实例的 Amazon Elastic Block Store (AmazonEBS) 优化属性

  • 修改挂载到EC2实例的原始EBS卷

  • 添加新EBS卷或将卷类型从 gp2 更改为 gp3

  • 更改 LOG_ARCHIVE_FORMAT 参数的扩展名格式(需要 *.arc

  • 多路复用或更改控制文件位置和名称(必须为 /rdsdbdata/db/*DBNAME*/controlfile/control-01.ctl

有关这些配置和其他不支持的配置的更多信息,请参阅 Amazon RDS 文档

产品版本

有关 Amazon C RDS ustom 支持的 Oracle 数据库版本和实例类,请参阅 Amazon Cu RDSstom for Oracle 的要求和限制。

架构

目标技术堆栈

  • 应用程序负载均衡器

  • Amazon EFS

  • 适用于 Oracle 的亚马逊RDS定制

  • AWS Secrets Manager

  • Amazon Simple Storage Service(Amazon S3)

目标架构

以下架构图表示在上的单个可用区中运行的 PeopleSoft 系统AWS。应用程序层可通过应用程序负载均衡器进行访问。应用程序和数据库都在私有子网中,Amazon C RDS ustom 和 Amazon EC2 数据库实例使用亚马逊EFS共享文件系统来存储和访问RMAN备份文件。Amazon S3 用于创建自定义 RDS Oracle 引擎和存储重做日志元数据。

Web 服务器、应用程序服务器、Amazon RDS Custom、EC2数据库实例和私有子网EFS中的亚马逊。

工具

工具

AWS 服务

  • Amazon C RDS ustom for Oracle 是一项托管数据库服务,适用于需要访问底层操作系统和数据库环境的传统、定制和打包应用程序。它能自动执行数据库管理任务,如备份和高可用性。 

  • Amazon Elastic File System(亚马逊EFS)可帮助您在AWS云端创建和配置共享文件系统。此模式使用 Amazon EFS 共享文件系统来存储和访问RMAN备份文件。

  • AWSS@@ ecrets Manager 可帮助您将代码中的硬编码凭据(包括密码)替换为API调用 Secrets Manager 以编程方式检索密钥。在这种模式中,您可以从 Secrets Manager 检索数据库用户密码来创建 RDSADMINADMIN 用户以及更改 syssystem 密码。

  • Amazon Simple Storage Service (Amazon S3) 是一项基于云的对象存储服务,可帮助您存储、保护和检索任意数量的数据。

  • Elastic Load Balancing (ELB) 将传入的应用程序或网络流量分布到多个目标。例如,您可以跨亚马逊弹性计算云 (AmazonEC2) 实例、容器以及一个或多个可用区中的 IP 地址分配流量。此模式使用应用程序负载均衡器。

其他工具

  • Oracle Recovery Manager (RMAN) 为 Oracle 数据库提供备份和恢复支持。此模式用于RMAN对亚马逊上的源 Oracle 数据库执行热备份EC2,然后在 Amazon Cu RDS stom 上还原。

最佳实践

  • 对于数据库初始化参数,请自定义 Amazon RDS 自定义数据库实例为其提供的标准 pfile, PeopleSoft 而不是使用 Oracle 源数据库中的 spfile。这是因为在 Amazon Cu RDS stom 中创建只读副本时,空格和注释会导致问题。有关数据库初始化参数的更多信息,请参阅 Oracle Support Note 1100831.1(需要 Oracle 支持账户)。

  • 默认情况下,Amazon C RDS ustom 使用 Oracle 自动内存管理。如果您想使用 Hugemem 内核,可以将 Amazon Cu RDS stom 配置为改用自动共享内存管理。

  • 默认情况下启用 memory_max_target 参数。框架会在后台使用它来创建只读副本。

  • 启用 Oracle 闪回数据库。此功能在故障转移(而非切换)测试场景中恢复备用数据库时非常有用。

操作说明

任务描述所需技能

创建数据库实例。

在亚马逊RDS控制台中,创建一个 Amazon C RDS ustom for Oracle 数据库实例,其数据库名称名为FSDMO92(或您的源数据库名称)。

有关说明,请参阅AWS文档中的 “使用 Amazon C RDS ustom” 和 “适用于 Oracle 的 Amazon C RDS ustom — 数据库环境中的新控制功能” 博客文章。这样可以确保将数据库名称设置为与源数据库相同的名称。(如果保留为空,则EC2实例和数据库名称将设置为ORCL。)

DBA

设置数据库实例和文件系统

任务描述所需技能

创建数据库实例。

在亚马逊RDS控制台中,创建一个 Amazon C RDS ustom for Oracle 数据库实例,其数据库名称名为FSDMO92(或您的源数据库名称)。

有关说明,请参阅AWS文档中的 “使用 Amazon C RDS ustom” 和 “适用于 Oracle 的 Amazon C RDS ustom — 数据库环境中的新控制功能” 博客文章。这样可以确保将数据库名称设置为与源数据库相同的名称。(如果保留为空,则EC2实例和数据库名称将设置为ORCL。)

DBA
任务描述所需技能

创建备份脚本。

创建RMAN备份脚本以将数据库备份到您安装的 Amazon EFS 文件系统(/efs在以下示例中)。您可以使用示例代码或运行现有RMAN脚本之一。

#!/bin/bash Dt=`date +'%Y%m%d-%H%M'` BACKUP_LOG="rman-${ORACLE_SID}-$Dt" export TAGDATE=`date +%Y%m%d%H%M`; LOGPATH=/u01/scripts/logs rman target / >> $LOGPATH/rman-${ORACLE_SID}-$Dt << EOF SQL "ALTER SYSTEM SWITCH LOGFILE"; SQL "ALTER SESSION SET NLS_DATE_FORMAT="DD.MM.YYYY HH24:MI:SS""; RUN { ALLOCATE CHANNEL ch11 TYPE DISK MAXPIECESIZE 5G; ALLOCATE CHANNEL ch12 TYPE DISK MAXPIECESIZE 5G; BACKUP AS COMPRESSED BACKUPSET FULL DATABASE FORMAT '/efs/rman_backup/FSCM/%d_%T_%s_%p_FULL' ; SQL "ALTER SYSTEM ARCHIVE LOG CURRENT"; BACKUP FORMAT '/efs/rman_backup/FSCM/%d_%T_%s_%p_ARCHIVE' ARCHIVELOG ALL DELETE ALL INPUT ; BACKUP CURRENT CONTROLFILE FORMAT '/efs/rman_backup/FSCM/%d_%T_%s_%p_CONTROL'; } EXIT; EOF
DBA

运行备份脚本。

要运行RMAN备份脚本,请以 Oracle 主用户身份登录并运行该脚本。

$ chmod a+x rman_backup.sh $ ./rman_backup.sh &
DBA

检查是否存在错误,并记下备份文件的名称。

检查RMAN日志文件中是否有错误。如果一切正常,请运行以下命令列出控制文件的备份。

RMAN> list backup of controlfile; using target database control file instead of recovery catalog

记下输出文件的名称。

List of Backup Sets =================== BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 12 Full 21.58M DISK 00:00:01 13-JUL-22 BP Key: 12 Status: AVAILABLE Compressed: NO Tag: TAG20220713T150155 Piece Name: /efs/rman_backup/FSCM/FSDMO92_20220713_12_1_CONTROL Control File Included: Ckp SCN: 16559159985898 Ckp time: 13-JUL-22

在 Amazon Custo RDS m 上恢复数据库/efs/rman_backup/FSCM/FSDMO92_20220713_12_1_CONTROL时,您将使用备份控制文件。

DBA

对源 Amazon EC2 数据库进行RMAN完整备份

任务描述所需技能

创建备份脚本。

创建RMAN备份脚本以将数据库备份到您安装的 Amazon EFS 文件系统(/efs在以下示例中)。您可以使用示例代码或运行现有RMAN脚本之一。

#!/bin/bash Dt=`date +'%Y%m%d-%H%M'` BACKUP_LOG="rman-${ORACLE_SID}-$Dt" export TAGDATE=`date +%Y%m%d%H%M`; LOGPATH=/u01/scripts/logs rman target / >> $LOGPATH/rman-${ORACLE_SID}-$Dt << EOF SQL "ALTER SYSTEM SWITCH LOGFILE"; SQL "ALTER SESSION SET NLS_DATE_FORMAT="DD.MM.YYYY HH24:MI:SS""; RUN { ALLOCATE CHANNEL ch11 TYPE DISK MAXPIECESIZE 5G; ALLOCATE CHANNEL ch12 TYPE DISK MAXPIECESIZE 5G; BACKUP AS COMPRESSED BACKUPSET FULL DATABASE FORMAT '/efs/rman_backup/FSCM/%d_%T_%s_%p_FULL' ; SQL "ALTER SYSTEM ARCHIVE LOG CURRENT"; BACKUP FORMAT '/efs/rman_backup/FSCM/%d_%T_%s_%p_ARCHIVE' ARCHIVELOG ALL DELETE ALL INPUT ; BACKUP CURRENT CONTROLFILE FORMAT '/efs/rman_backup/FSCM/%d_%T_%s_%p_CONTROL'; } EXIT; EOF
DBA

运行备份脚本。

要运行RMAN备份脚本,请以 Oracle 主用户身份登录并运行该脚本。

$ chmod a+x rman_backup.sh $ ./rman_backup.sh &
DBA

检查是否存在错误,并记下备份文件的名称。

检查RMAN日志文件中是否有错误。如果一切正常,请运行以下命令列出控制文件的备份。

RMAN> list backup of controlfile; using target database control file instead of recovery catalog

记下输出文件的名称。

List of Backup Sets =================== BS Key Type LV Size Device Type Elapsed Time Completion Time ------- ---- -- ---------- ----------- ------------ --------------- 12 Full 21.58M DISK 00:00:01 13-JUL-22 BP Key: 12 Status: AVAILABLE Compressed: NO Tag: TAG20220713T150155 Piece Name: /efs/rman_backup/FSCM/FSDMO92_20220713_12_1_CONTROL Control File Included: Ckp SCN: 16559159985898 Ckp time: 13-JUL-22

在 Amazon Custo RDS m 上恢复数据库/efs/rman_backup/FSCM/FSDMO92_20220713_12_1_CONTROL时,您将使用备份控制文件。

DBA
任务描述所需技能

关闭应用程序。

若要关闭源应用程序层,请使用 psadmin 实用程序或 psadmin 命令行实用程序。

  1. 若要关闭 Web 服务器,请运行以下命令。

    psadmin -w shutdown -d "webserver domain name"
  2. 若要关闭应用程序服务器,请运行以下命令。

    psadmin -c shutdown -d "application server domain name"
  3. 若要关闭进程调度程序,请运行以下命令。

    psadmin -p stop -d "process scheduler domain name"
DBA, PeopleSoft 管理员

关闭源应用程序层

任务描述所需技能

关闭应用程序。

若要关闭源应用程序层,请使用 psadmin 实用程序或 psadmin 命令行实用程序。

  1. 若要关闭 Web 服务器,请运行以下命令。

    psadmin -w shutdown -d "webserver domain name"
  2. 若要关闭应用程序服务器,请运行以下命令。

    psadmin -c shutdown -d "application server domain name"
  3. 若要关闭进程调度程序,请运行以下命令。

    psadmin -p stop -d "process scheduler domain name"
DBA, PeopleSoft 管理员
任务描述所需技能

安装 nfs-utils rpm 包。

要安装 nfs-utils rpm 程序包,请运行以下命令。

$ yum install -y nfs-utils
DBA

安装存EFS储。

从亚马逊EFS控制台页面获取 Amazon EFS 挂载命令。使用网络EFS文件系统 (NFS) 客户端在 Amazon RDS 实例上挂载文件系统。

sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-xxxxxxxxxx.efs.eu-west-1.amazonaws.com:/ /efs sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-xxxxxxxxxx.efs.eu-west-1.amazonaws.com:/ /efs
DBA

配置目标 Amazon RDS 自定义数据库

任务描述所需技能

安装 nfs-utils rpm 包。

要安装 nfs-utils rpm 程序包,请运行以下命令。

$ yum install -y nfs-utils
DBA

安装存EFS储。

从亚马逊EFS控制台页面获取 Amazon EFS 挂载命令。使用网络EFS文件系统 (NFS) 客户端在 Amazon RDS 实例上挂载文件系统。

sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-xxxxxxxxxx.efs.eu-west-1.amazonaws.com:/ /efs sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-xxxxxxxxxx.efs.eu-west-1.amazonaws.com:/ /efs
DBA
任务描述所需技能

暂停自动化模式。

在继续执行后续步骤之前,您必须暂停 Amazon C RDS ustom 数据库实例的自动化模式,以确保自动化不会干扰RMAN恢复活动。

您可以使用AWS控制台或AWS命令行界面 (AWSCLI) 命令来暂停自动化(请确保已配置AWSCLI第一个命令)。

aws rds modify-db-instance \ --db-instance-identifier peoplesoft-fscm-92 \ --automation-mode all-paused \ --resume-full-automation-mode-minute 360 \ --region eu-west-1

指定暂停时间时,请确保留出足够的时间进行RMAN恢复。这取决于源数据库的大小,因此请相应地修改 360 值。

另外,请确保暂停自动化的总时间不与数据库的备份或维护时段重叠。

DBA

创建和修改的参数文件 PeopleSoft

要创建和修改的 pfile PeopleSoft,请使用使用 Amazon RDS 自定义数据库实例创建的标准 pfile。添加你需要的参数 PeopleSoft。

  1. 运行以下命令切换到 rds user rdsdb

    $ sudo su - rdsdb
  2. 在起始数据库上登录到 SQL *Plus,然后运行以下命令创建 pfile。

    SQL> create pfile from spfile;

    这将在 $ORACLE_HOME/dbs 中创建 pfile。

  3. 备份此 pfile。

  4. 编辑 pfile 以添加或更新 PeopleSoft参数。

    *._gby_hash_aggregation_enabled=false *._unnest_subquery=false *.nls_language='AMERICAN' *.nls_length_semantics='CHAR' *.nls_territory='AMERICA' *.open_cursors=1000 *.db_files=1200 *.undo_tablespace='UNDOTBS1'

    PeopleSoft 相关参数可以在 Oracle Supp ort Note 1100831.1 中找到。

  5. 删除 pfile 中的 spfile 引用。

    *.spfile='/rdsdbbin/oracle/dbs/spfileFSDMO92.ora'
DBA

删除起始数据库。

要删除现有的 Amazon RDS Custom 数据库,请使用以下代码。

$ sqlplus / as sysdba SQL> shutdown immediate; SQL> startup mount exclusive restrict; SQL> drop database; SQL> exit

从备份中恢复 Amazon RDS 自定义数据库。

使用以下脚本恢复数据库。该脚本将首先恢复控制文件,然后从存储在EFS装载上的备份片段恢复整个数据库。

#!/bin/bash Dt=`date +'%Y%m%d-%H%M'` BACKUP_LOG="rman-${ORACLE_SID}-$Dt" export TAGDATE=`date +%Y%m%d%H%M`; LOGPATH=/rdsdbdata/scripts/logs rman target / >> $LOGPATH/rman-${ORACLE_SID}-$Dt << EOF restore controlfile from "/efs/rman_backup/FSCM/FSDMO92_20220713_12_1_CONTROL"; alter database mount; run { set newname for database to '/rdsdbdata/db/FSDMO92_A/datafile/%f_%b'; SET NEWNAME FOR TEMPFILE 1 TO '/rdsdbdata/db/FSDMO92_A/datafile/%f_%b'; RESTORE DATABASE; SWITCH DATAFILE ALL; SWITCH TEMPFILE ALL; RECOVER DATABASE; } EOF sqlplus / as sysdba >> $LOGPATH/rman-${ORACLE_SID}-$Dt<<-EOF ALTER DATABASE RENAME FILE '/u01/psoft/db/oradata/FSDMO92/redo01.log' TO '/rdsdbdata/db/FSDMO92_A/onlinelog/redo01.log'; ALTER DATABASE RENAME FILE '/u01/psoft/db/oradata/FSDMO92/redo02.log' TO '/rdsdbdata/db/FSDMO92_A/onlinelog/redo02.log'; ALTER DATABASE RENAME FILE '/u01/psoft/db/oradata/FSDMO92/redo03.log' TO '/rdsdbdata/db/FSDMO92_A/onlinelog/redo03.log'; alter database clear unarchived logfile group 1; alter database clear unarchived logfile group 2; alter database clear unarchived logfile group 3; alter database open resetlogs; EXIT EOF
DBA

删除起始数据库并创建用于存储数据库文件的目录

任务描述所需技能

暂停自动化模式。

在继续执行后续步骤之前,您必须暂停 Amazon C RDS ustom 数据库实例的自动化模式,以确保自动化不会干扰RMAN恢复活动。

您可以使用AWS控制台或AWS命令行界面 (AWSCLI) 命令来暂停自动化(请确保已配置AWSCLI第一个命令)。

aws rds modify-db-instance \ --db-instance-identifier peoplesoft-fscm-92 \ --automation-mode all-paused \ --resume-full-automation-mode-minute 360 \ --region eu-west-1

指定暂停时间时,请确保留出足够的时间进行RMAN恢复。这取决于源数据库的大小,因此请相应地修改 360 值。

另外,请确保暂停自动化的总时间不与数据库的备份或维护时段重叠。

DBA

创建和修改的参数文件 PeopleSoft

要创建和修改的 pfile PeopleSoft,请使用使用 Amazon RDS 自定义数据库实例创建的标准 pfile。添加你需要的参数 PeopleSoft。

  1. 运行以下命令切换到 rds user rdsdb

    $ sudo su - rdsdb
  2. 在起始数据库上登录到 SQL *Plus,然后运行以下命令创建 pfile。

    SQL> create pfile from spfile;

    这将在 $ORACLE_HOME/dbs 中创建 pfile。

  3. 备份此 pfile。

  4. 编辑 pfile 以添加或更新 PeopleSoft参数。

    *._gby_hash_aggregation_enabled=false *._unnest_subquery=false *.nls_language='AMERICAN' *.nls_length_semantics='CHAR' *.nls_territory='AMERICA' *.open_cursors=1000 *.db_files=1200 *.undo_tablespace='UNDOTBS1'

    PeopleSoft 相关参数可以在 Oracle Supp ort Note 1100831.1 中找到。

  5. 删除 pfile 中的 spfile 引用。

    *.spfile='/rdsdbbin/oracle/dbs/spfileFSDMO92.ora'
DBA

删除起始数据库。

要删除现有的 Amazon RDS Custom 数据库,请使用以下代码。

$ sqlplus / as sysdba SQL> shutdown immediate; SQL> startup mount exclusive restrict; SQL> drop database; SQL> exit

从备份中恢复 Amazon RDS 自定义数据库。

使用以下脚本恢复数据库。该脚本将首先恢复控制文件,然后从存储在EFS装载上的备份片段恢复整个数据库。

#!/bin/bash Dt=`date +'%Y%m%d-%H%M'` BACKUP_LOG="rman-${ORACLE_SID}-$Dt" export TAGDATE=`date +%Y%m%d%H%M`; LOGPATH=/rdsdbdata/scripts/logs rman target / >> $LOGPATH/rman-${ORACLE_SID}-$Dt << EOF restore controlfile from "/efs/rman_backup/FSCM/FSDMO92_20220713_12_1_CONTROL"; alter database mount; run { set newname for database to '/rdsdbdata/db/FSDMO92_A/datafile/%f_%b'; SET NEWNAME FOR TEMPFILE 1 TO '/rdsdbdata/db/FSDMO92_A/datafile/%f_%b'; RESTORE DATABASE; SWITCH DATAFILE ALL; SWITCH TEMPFILE ALL; RECOVER DATABASE; } EOF sqlplus / as sysdba >> $LOGPATH/rman-${ORACLE_SID}-$Dt<<-EOF ALTER DATABASE RENAME FILE '/u01/psoft/db/oradata/FSDMO92/redo01.log' TO '/rdsdbdata/db/FSDMO92_A/onlinelog/redo01.log'; ALTER DATABASE RENAME FILE '/u01/psoft/db/oradata/FSDMO92/redo02.log' TO '/rdsdbdata/db/FSDMO92_A/onlinelog/redo02.log'; ALTER DATABASE RENAME FILE '/u01/psoft/db/oradata/FSDMO92/redo03.log' TO '/rdsdbdata/db/FSDMO92_A/onlinelog/redo03.log'; alter database clear unarchived logfile group 1; alter database clear unarchived logfile group 2; alter database clear unarchived logfile group 3; alter database open resetlogs; EXIT EOF
DBA
任务描述所需技能

从 Secrets Manager 中检索密码。

您可以使用AWS控制台或. 来执行此步骤AWSCLI。以下步骤显示了控制台的说明。

  1. 登录AWS管理控制台并打开 Amazon RDS 控制台。

  2. 在导航窗格中,选择 “数据库”,然后选择 Amazon RDS 数据库。

  3. 选择配置并记下实例的资源 ID。这将采用 db-<ID> 形式(例如,db-73GJNHLGDNZNDOXNWXSECUW6LE)。

  4. 打开 Secrets Manager 控制台。

  5. 选择与 do-not-delete-custom-<resource_id> 同名的密钥,其中 resource-id 是指您在步骤 3 中记下的资源 ID。

  6. 选择 Retrieve secret value (检索密钥值)

    此密码对于 syssystemrdsadminadmin 用户相同。

DBA

创建 RDSADMIN 用户。

RDSADMIN是用于监控和编排 Amazon RDS 自定义数据库实例的数据库用户。由于启动数据库已删除,目标数据库是使用从源数据库还原的RMAN,因此您必须在还原操作后重新创建此用户,以确保 Amazon C RDS ustom 监控按预期运行。您还必须为 RDSADMIN 用户创建单独的配置文件和表空间。

  1. 在SQL提示符下输入以下命令。

    SQL> set echo on feedback on serverout on SQL> @?/rdbms/admin/utlpwdmg.sql SQL> ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED PASSWORD_LIFE_TIME UNLIMITED PASSWORD_VERIFY_FUNCTION NULL;
  2. 创建配置文件 RDSADMIN

    SQL> set echo on feedback on serverout on SQL> alter session set "_oracle_script"=true; SQL> CREATE PROFILE RDSADMIN LIMIT COMPOSITE_LIMIT UNLIMITED SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED IDLE_TIME UNLIMITED CONNECT_TIME UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME UNLIMITED PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_VERIFY_FUNCTION NULL PASSWORD_LOCK_TIME 86400/86400 PASSWORD_GRACE_TIME 604800/86400;
  3. 创建 RDSADMIN 表空间。

    SQL> CREATE BIGFILE TABLESPACE rdsadmin '/rdsdbdata/db/FSDMO92_A/datafile/rdsadmin.dbf' DATAFILE SIZE 7M AUTOEXTEND ON NEXT 1m LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULT NOCOMPRESS SEGMENT SPACE MANAGEMENT AUTO;
  4. 创建 RDSADMIN 用户。将 RDSADMIN 密码替换为您之前从 Secrets Manager 获取的密码。

    SQL> CREATE USER rdsadmin IDENTIFIED BY xxxxxxxxxx DEFAULT TABLESPACE rdsadmin TEMPORARY TABLESPACE TEMP profile rdsadmin ;
  5. 授予权限RDSADMIN。

    SQL> GRANT "CONNECT" TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT "RESOURCE" TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT "DBA" TO RDSADMIN; SQL> GRANT "SELECT_CATALOG_ROLE" TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT ALTER SYSTEM TO RDSADMIN; SQL> GRANT UNLIMITED TABLESPACE TO RDSADMIN; SQL> GRANT SELECT ANY TABLE TO RDSADMIN; SQL> GRANT ALTER DATABASE TO RDSADMIN; SQL> GRANT ADMINISTER DATABASE TRIGGER TO RDSADMIN; SQL> GRANT ANY OBJECT PRIVILEGE TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT INHERIT ANY PRIVILEGES TO RDSADMIN; SQL> ALTER USER RDSADMIN DEFAULT ROLE ALL;
  6. Set the SYS, SYSTEM, and DBSNMP user profiles to RDSADMIN.

    SQL> set echo on feedback on serverout on SQL> alter user SYS profile RDSADMIN; SQL> alter user SYSTEM profile RDSADMIN; SQL> alter user DBSNMP profile RDSADMIN;
DBA

创建主用户。

由于启动数据库已删除,目标数据库已通过使用从源数据库恢复RMAN,因此必须重新创建主用户。在此示例中,主用户名为 admin

SQL> create user admin identified by <password>; SQL> grant dba to admin
DBA

更改系统密码。

使用您从 Secrets Manager 中检索到的密码更改系统密码。

SQL> alter user sys identified by xxxxxxxxxxx; SQL> alter user system identified by xxxxxxxxxx;

如果您不更改这些密码,Amazon C RDS ustom 会显示错误消息:“数据库监控用户或用户证书已更改”。

DBA

从 Secrets Manager 中检索密码,创建用户和更改密码

任务描述所需技能

从 Secrets Manager 中检索密码。

您可以使用AWS控制台或. 来执行此步骤AWSCLI。以下步骤显示了控制台的说明。

  1. 登录AWS管理控制台并打开 Amazon RDS 控制台。

  2. 在导航窗格中,选择 “数据库”,然后选择 Amazon RDS 数据库。

  3. 选择配置并记下实例的资源 ID。这将采用 db-<ID> 形式(例如,db-73GJNHLGDNZNDOXNWXSECUW6LE)。

  4. 打开 Secrets Manager 控制台。

  5. 选择与 do-not-delete-custom-<resource_id> 同名的密钥,其中 resource-id 是指您在步骤 3 中记下的资源 ID。

  6. 选择 Retrieve secret value (检索密钥值)

    此密码对于 syssystemrdsadminadmin 用户相同。

DBA

创建 RDSADMIN 用户。

RDSADMIN是用于监控和编排 Amazon RDS 自定义数据库实例的数据库用户。由于启动数据库已删除,目标数据库是使用从源数据库还原的RMAN,因此您必须在还原操作后重新创建此用户,以确保 Amazon C RDS ustom 监控按预期运行。您还必须为 RDSADMIN 用户创建单独的配置文件和表空间。

  1. 在SQL提示符下输入以下命令。

    SQL> set echo on feedback on serverout on SQL> @?/rdbms/admin/utlpwdmg.sql SQL> ALTER PROFILE DEFAULT LIMIT FAILED_LOGIN_ATTEMPTS UNLIMITED PASSWORD_LIFE_TIME UNLIMITED PASSWORD_VERIFY_FUNCTION NULL;
  2. 创建配置文件 RDSADMIN

    SQL> set echo on feedback on serverout on SQL> alter session set "_oracle_script"=true; SQL> CREATE PROFILE RDSADMIN LIMIT COMPOSITE_LIMIT UNLIMITED SESSIONS_PER_USER UNLIMITED CPU_PER_SESSION UNLIMITED CPU_PER_CALL UNLIMITED LOGICAL_READS_PER_SESSION UNLIMITED LOGICAL_READS_PER_CALL UNLIMITED IDLE_TIME UNLIMITED CONNECT_TIME UNLIMITED PRIVATE_SGA UNLIMITED FAILED_LOGIN_ATTEMPTS 10 PASSWORD_LIFE_TIME UNLIMITED PASSWORD_REUSE_TIME UNLIMITED PASSWORD_REUSE_MAX UNLIMITED PASSWORD_VERIFY_FUNCTION NULL PASSWORD_LOCK_TIME 86400/86400 PASSWORD_GRACE_TIME 604800/86400;
  3. 创建 RDSADMIN 表空间。

    SQL> CREATE BIGFILE TABLESPACE rdsadmin '/rdsdbdata/db/FSDMO92_A/datafile/rdsadmin.dbf' DATAFILE SIZE 7M AUTOEXTEND ON NEXT 1m LOGGING ONLINE PERMANENT BLOCKSIZE 8192 EXTENT MANAGEMENT LOCAL AUTOALLOCATE DEFAULT NOCOMPRESS SEGMENT SPACE MANAGEMENT AUTO;
  4. 创建 RDSADMIN 用户。将 RDSADMIN 密码替换为您之前从 Secrets Manager 获取的密码。

    SQL> CREATE USER rdsadmin IDENTIFIED BY xxxxxxxxxx DEFAULT TABLESPACE rdsadmin TEMPORARY TABLESPACE TEMP profile rdsadmin ;
  5. 授予权限RDSADMIN。

    SQL> GRANT "CONNECT" TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT "RESOURCE" TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT "DBA" TO RDSADMIN; SQL> GRANT "SELECT_CATALOG_ROLE" TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT ALTER SYSTEM TO RDSADMIN; SQL> GRANT UNLIMITED TABLESPACE TO RDSADMIN; SQL> GRANT SELECT ANY TABLE TO RDSADMIN; SQL> GRANT ALTER DATABASE TO RDSADMIN; SQL> GRANT ADMINISTER DATABASE TRIGGER TO RDSADMIN; SQL> GRANT ANY OBJECT PRIVILEGE TO RDSADMIN WITH ADMIN OPTION; SQL> GRANT INHERIT ANY PRIVILEGES TO RDSADMIN; SQL> ALTER USER RDSADMIN DEFAULT ROLE ALL;
  6. Set the SYS, SYSTEM, and DBSNMP user profiles to RDSADMIN.

    SQL> set echo on feedback on serverout on SQL> alter user SYS profile RDSADMIN; SQL> alter user SYSTEM profile RDSADMIN; SQL> alter user DBSNMP profile RDSADMIN;
DBA

创建主用户。

由于启动数据库已删除,目标数据库已通过使用从源数据库恢复RMAN,因此必须重新创建主用户。在此示例中,主用户名为 admin

SQL> create user admin identified by <password>; SQL> grant dba to admin
DBA

更改系统密码。

使用您从 Secrets Manager 中检索到的密码更改系统密码。

SQL> alter user sys identified by xxxxxxxxxxx; SQL> alter user system identified by xxxxxxxxxx;

如果您不更改这些密码,Amazon C RDS ustom 会显示错误消息:“数据库监控用户或用户证书已更改”。

DBA
任务描述所需技能

配置 tnsnames 文件。

若要从应用程序层连接到数据库,请配置 tnsnames.ora 文件,以便您可以从应用程序层连接到数据库。在以下示例中,您可以看到有一个指向 tnsnames.ora 文件的软链接,但该文件默认为空。 

$ cd /rdsdbbin/oracle/network/admin $ ls -ltr -rw-r--r-- 1 rdsdb database 1536 Feb 14 2018 shrept.lst lrwxrwxrwx 1 rdsdb database 30 Apr 5 13:19 listener.ora -> /rdsdbdata/config/listener.ora lrwxrwxrwx 1 rdsdb database 28 Apr 5 13:19 sqlnet.ora -> /rdsdbdata/config/sqlnet.ora lrwxrwxrwx 1 rdsdb database 30 Apr 5 13:19 tnsnames.ora -> /rdsdbdata/config/tnsnames.ora
  1. 创建 tsnames.ora 条目。由于 Amazon RDS 自动解析文件的方式,您必须确保条目中不包含任何空格、注释或多余的行。否则,在使用其中一些(例如 create-db-instance-read-replic aAPIs)时可能会遇到问题。

  2. 根据您的 PeopleSoft 数据库要求更换端口、主机和SID。使用以下代码作为示例。

    $ vi tnsnames.ora FSDMO92=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = x.x.x.x)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SID = FSDMO92)))
  3. 要确认可以 PeopleSoft 访问数据库,请运行以下命令。

    $ tnsping FSDMO92 TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 14-JUL-2022 10:16:45 Copyright (c) 1997, 2021, Oracle. All rights reserved. Used parameter files: /rdsdbbin/oracle/network/admin/sqlnet.ora Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = x.x.x.x)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SID = FSDMO92))) OK (0 msec)
DBA

为 Amazon C RDS ustom 配置TNS条目和 PeopleSoft

任务描述所需技能

配置 tnsnames 文件。

若要从应用程序层连接到数据库,请配置 tnsnames.ora 文件,以便您可以从应用程序层连接到数据库。在以下示例中,您可以看到有一个指向 tnsnames.ora 文件的软链接,但该文件默认为空。 

$ cd /rdsdbbin/oracle/network/admin $ ls -ltr -rw-r--r-- 1 rdsdb database 1536 Feb 14 2018 shrept.lst lrwxrwxrwx 1 rdsdb database 30 Apr 5 13:19 listener.ora -> /rdsdbdata/config/listener.ora lrwxrwxrwx 1 rdsdb database 28 Apr 5 13:19 sqlnet.ora -> /rdsdbdata/config/sqlnet.ora lrwxrwxrwx 1 rdsdb database 30 Apr 5 13:19 tnsnames.ora -> /rdsdbdata/config/tnsnames.ora
  1. 创建 tsnames.ora 条目。由于 Amazon RDS 自动解析文件的方式,您必须确保条目中不包含任何空格、注释或多余的行。否则,在使用其中一些(例如 create-db-instance-read-replic aAPIs)时可能会遇到问题。

  2. 根据您的 PeopleSoft 数据库要求更换端口、主机和SID。使用以下代码作为示例。

    $ vi tnsnames.ora FSDMO92=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = x.x.x.x)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SID = FSDMO92)))
  3. 要确认可以 PeopleSoft 访问数据库,请运行以下命令。

    $ tnsping FSDMO92 TNS Ping Utility for Linux: Version 19.0.0.0.0 - Production on 14-JUL-2022 10:16:45 Copyright (c) 1997, 2021, Oracle. All rights reserved. Used parameter files: /rdsdbbin/oracle/network/admin/sqlnet.ora Used TNSNAMES adapter to resolve the alias Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = x.x.x.x)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SID = FSDMO92))) OK (0 msec)
DBA
任务描述所需技能

创建 spfile 软链接。

  1. 若要在位置 /rdsdbdata/admin/FSDMO92/pfile 中创建 spfile,请运行以下命令。

    SQL> create spfile='/rdsdbdata/admin/FSDMO92/pfile/spfileFSDMO92.ora' from pfile;
  2. 导航到 $ORACLE_HOME/dbs,然后为 spfile 创建软链接。

    ln -s '/rdsdbdata/admin/FSDMO92/pfile/spfileFSDMO92.ora' spfileFSDMO92.ora
  3. 创建此文件后,您可以使用 spfile 关闭和启动数据库。

DBA

创建 spfile 软链接

任务描述所需技能

创建 spfile 软链接。

  1. 若要在位置 /rdsdbdata/admin/FSDMO92/pfile 中创建 spfile,请运行以下命令。

    SQL> create spfile='/rdsdbdata/admin/FSDMO92/pfile/spfileFSDMO92.ora' from pfile;
  2. 导航到 $ORACLE_HOME/dbs,然后为 spfile 创建软链接。

    ln -s '/rdsdbdata/admin/FSDMO92/pfile/spfileFSDMO92.ora' spfileFSDMO92.ora
  3. 创建此文件后,您可以使用 spfile 关闭和启动数据库。

DBA
任务描述所需技能

验证架构、连接和维护任务。

若要完成迁移,请执行以下任务。

  • 收集架构统计信息。 

  • 确保 PeopleSoft 应用程序层可以连接到新的 Amazon C RDS ustom 数据库。

  • 设置备份和维护计划。

DBA

执行迁移后步骤

任务描述所需技能

验证架构、连接和维护任务。

若要完成迁移,请执行以下任务。

  • 收集架构统计信息。 

  • 确保 PeopleSoft 应用程序层可以连接到新的 Amazon C RDS ustom 数据库。

  • 设置备份和维护计划。

DBA

相关资源

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。