当前环境:
12cR1 RAC 生产数据库 -> 比如说 PROD
12cR1 单实例物理备用(Active Data Guard)-> 假设 DR1
规划环境:
12cR1 RAC 生产数据库 -> PROD(来自当前环境)
12cR1 单实例物理备用 (Active Data Guard) -> DR1(来自当前环境)
12cR1 RAC 物理备用 -> 比如说 DR2(新环境)
12cR1 单实例物理备用 -> 假设 DR3(级联备用到 DR2)(新环境)
重要提示:不会使用数据保护代理。该过程将手动完成。
设想:
我们想切换到新的物理机。
物理机和操作系统(OEL 8.7)安装已完成。(新环境)
Oracle 19c 网格软件和Oracle 12cR1 数据库软件安装已完成。(新环境)
这里的目标是迁移到新的物理机并迁移到更新的操作系统版本。切换到新环境后,将计划从12cR1升级到19c。
迁移前几天,新环境中的Data Guard安装将完成。(命名为DR2)
同时,与DR2级联的DR3 Data Guard的安装将在迁移前几天完成。(DR3)
因此,在迁移时,PROD 将有 2 个不同的数据保护(DR1 和 DR2)。同时DR3与DR2级联。
我们这样做的目的是以最短的停机时间完成迁移。从PROD切换到DR2后,我们将DR3从级联备用转换为物理备用(主动数据保护)。
问题:
我有两个不同的问题。
1-) 这种情况可能吗?虽然 PROD 有 2 个不同的数据保护(DR1 和 DR2),但如何使用命令确定是否专门针对 DR2 执行切换(而不损坏 DR1)?实际上,DR1 在迁移过程中并不重要,或者我应该在切换之前从数据防护配置中删除 DR1?(通过从 dg_config、fal_server、fal_client、log_archive_dest 等参数中删除 DR1)
2-) 在切换到 DR2 之前,是否需要在 DR3 中执行任何操作?因为它会一直作为级联备用工作,直到切换的那一刻。还是应该在从PROD切换到DR2之前删除DR3的级联备用配置,并在切换后将其配置为新PROD(旧DR2)的物理备用?切换后,DR2 将成为新的 PROD,DR3 将成为新的 DR2(主动数据保护)?
是的,这是可能的,已经做过数百次了。切换目标不是随机选择的。如果没有代理,作为切换步骤的一部分,您可以手动转换并打开要作为主数据库打开的数据库。对于代理,您可以在切换命令中指定切换目标。使用经纪人。比手动编辑参数和停止/转换/启动数据库舒服得多。
忘掉级联备用吧,它只会让你的生活变得更加困难。只需配置 2 个新的备用数据库而不进行级联,这样总共就有 3 个。再次使用代理进行切换。它将处理所有配置。