#共享集群一主多备配置
一主多备的配置是在一主一备部署的基础上,继续添加备集群将其扩展为一主多备部署架构。如用户在安装产品时已规划为一主多备架构,则可以将一主一备部署与本文档结合参考,一次性完成配置。
本文以在一主一备(主集群、备集群1)的基础上在线增加一台备集群(备集群2)为例进行介绍,部署过程中无需重启主集群和备集群1。
# Step1:备集群2准备
同一主一备部署中的备集群准备操作。
# Step2:主备集群参数配置
增加一个备集群所需要配置的参数有:
- 主集群所有节点上增加ARCHIVE_DEST_2,主备数据文件路径不同时还需修改DB_FILE_NAME_CONVERT、REDO_FILE_NAME_CONVERT和DB_BUCKET_NAME_CONVERT。
- 备集群1的所有节点上增加ARCHIVE_DEST_2,主备数据文件路径不同时还需修改DB_FILE_NAME_CONVERT、REDO_FILE_NAME_CONVERT和DB_BUCKET_NAME_CONVERT。
- 备集群2的所有节点上增加LISTEN_ADDR、REPLICATION_ADDR、ARCHIVE_DEST_1、ARCHIVE_DEST_2,主备数据文件路径不同时还需增加DB_FILE_NAME_CONVERT、REDO_FILE_NAME_CONVERT和DB_BUCKET_NAME_CONVERT。
上述参数的含义描述和配置注意事项请参考一主一备部署中的主备集群参数配置。
主集群配置示例(立即生效)
ALTER SYSTEM SET ARCHIVE_DEST_2='SERVICE=192.168.3.2:1689,192.168.3.3:1689' scope=BOTH;
--以下参数当主备集群上路径完全一致时无须配置
-- +DG0/yasdb/YASDB_DATA为主集群路径,+DG0/db1/yashandb/yasdb_data为备集群1路径,+DG0/db2/yashandb/yasdb_data为备集群2路径
ALTER SYSTEM SET DB_FILE_NAME_CONVERT=
'+DG0/db1/yashandb/yasdb_data','+DG0/yasdb/YASDB_DATA','+DG0/db2/yashandb/YASDB_DATA','+DG0/yasdb/YASDB_DATA'
scope=both;
ALTER SYSTEM SET REDO_FILE_NAME_CONVERT=
'+DG0/db1/yashandb/yasdb_data','+DG0/yasdb/YASDB_DATA','+DG0/db2/yashandb/YASDB_DATA','+DG0/yasdb/YASDB_DATA'
scope=both;
ALTER SYSTEM SET DB_BUCKET_NAME_CONVERT=
'+DG0/db1/yashandb/yasdb_data','+DG0/yasdb/YASDB_DATA','+DG0/db2/yashandb/YASDB_DATA','+DG0/yasdb/YASDB_DATA'
scope=both;
备集群1配置示例(立即生效)
ALTER SYSTEM SET ARCHIVE_DEST_2='SERVICE=192.168.3.2:1689,192.168.3.3:1689' scope=BOTH;
--以下参数当主备集群上路径完全一致时无须配置
-- +DG0/yasdb/YASDB_DATA为主集群路径,+DG0/db1/yashandb/yasdb_data为备集群1路径,+DG0/db2/yashandb/yasdb_data为备集群2路径
ALTER SYSTEM SET DB_FILE_NAME_CONVERT=
'+DG0/yasdb/YASDB_DATA','+DG0/db1/yashandb/yasdb_data','+DG0/db2/yashandb/yasdb_data','+DG0/db1/yashandb/yasdb_data'
scope=both;
ALTER SYSTEM SET REDO_FILE_NAME_CONVERT=
'+DG0/yasdb/YASDB_DATA','+DG0/db1/yashandb/yasdb_data','+DG0/db2/yashandb/yasdb_data','+DG0/db1/yashandb/yasdb_data'
scope=both;
ALTER SYSTEM SET DB_BUCKET_NAME_CONVERT=
'+DG0/yasdb/YASDB_DATA','+DG0/db1/yashandb/yasdb_data','+DG0/db2/yashandb/yasdb_data','+DG0/db1/yashandb/yasdb_data'
scope=both;
备集群2配置示例(重启数据库后生效)
--NODE1
ALTER SYSTEM SET LISTEN_ADDR=192.168.3.2:1688 scope=spfile;
ALTER SYSTEM SET REPLICATION_ADDR=192.168.3.2:1689 scope=spfile;
ALTER SYSTEM SET ARCHIVE_DEST_1='SERVICE=192.168.1.2:1689,192.168.1.3:1689' scope=spfile;
ALTER SYSTEM SET ARCHIVE_DEST_2='SERVICE=192.168.2.2:1689,192.168.2.3:1689' scope=spfile;
--NODE2
ALTER SYSTEM SET LISTEN_ADDR=192.168.3.3:1688 scope=spfile;
ALTER SYSTEM SET REPLICATION_ADDR=192.168.3.3:1689 scope=spfile;
ALTER SYSTEM SET ARCHIVE_DEST_1='SERVICE=192.168.1.2:1689,192.168.1.3:1689' scope=spfile;
ALTER SYSTEM SET ARCHIVE_DEST_2='SERVICE=192.168.2.2:1689,192.168.2.3:1689' scope=spfile;
--以下参数当主备集群上路径完全一致时无须配置
-- +DG0/yasdb/YASDB_DATA为主集群路径,+DG0/db1/yashandb/yasdb_data为备集群1路径,+DG0/db2/yashandb/yasdb_data为备集群2路径
ALTER SYSTEM SET DB_FILE_NAME_CONVERT=
'+DG0/yasdb/YASDB_DATA','+DG0/db2/yashandb/yasdb_data','+DG0/db1/yashandb/yasdb_data','+DG0/db2/yashandb/yasdb_data'
scope=spfile;
ALTER SYSTEM SET REDO_FILE_NAME_CONVERT=
'+DG0/yasdb/YASDB_DATA','+DG0/db2/yashandb/yasdb_data','+DG0/db1/yashandb/yasdb_data','+DG0/db2/yashandb/yasdb_data'
scope=spfile;
ALTER SYSTEM SET DB_BUCKET_NAME_CONVERT=
'+DG0/yasdb/YASDB_DATA','+DG0/db2/yashandb/yasdb_data','+DG0/db1/yashandb/yasdb_data','+DG0/db2/yashandb/yasdb_data'
scope=spfile;
# Step3:备集群2初始化
同一主一备部署中的备集群初始化操作。
当同时增加多个备集群时,需要逐一build建立备集群。
# Step4:部署后检查
同一主一备部署中的部署后检查操作。