Oracle 18c新特性之Switching Over a Refreshable Clone PDB

作者简介:苏清泰,现就任于北京海天起点技术服务股份有限公司天津办事处,担任数据库工程师,持有11g OCP证书,主要服务于政府部门及银行,具有丰富的一线工作经验。

简介

PDB refresh是Oracle在12c的版本中的新特性,它支持了可插拔数据库中pdb级别的数据同步、备份、容灾等策略。但是在12c的当前版本暂不支持pdb refresh的Switchover,及主库PDB只能做为主库使用,备库PDB只能做备库使用。在oracle 18c中该功能得到了完善,能够支持pdb级别的Switchover(Switching Over a Refreshable Clone PDB),主库和备库可以互换角色。Switchover功能的引入使得PDB refresh的应用更加灵活能够适应更多的场景去应用部署。

背景环境

主机环境

主机

IP

Hostname

CDB_name

PDB_name

归档模式

主库

192.168.0.200

18c01

beijing

chaoyang

Archive

备库

192.168.0.201

18c02

shanghai

pudong

Archive

数据库版本

18.3.0.0.0

测试流程:

主库PDB(chaoyang)通过refresh的方式将数据刷新至备库PDB(pudong)中,该数据同步过程需要DBA手工干预,可以根据需求布置定时任务,定时refresh数据。在refresh完成后备库PDB可以以read only的方式打开,对外提供查询服务。

在需要进行主备库角色互换的场景中,可以通过switchover的方式将PDB(chaoyang)转换成备库,PDB(pudong)转换为主库。主库PDB(pudong)对外提供完整的数据库服务,同时备库PDB(chaoyang)可以以refresh的方式更新主库数据,以read only的方式打开,对外提供查询服务。

配置过程

配置TNSNAME

在主库、备库修改tnsnames.ora如下:

oracle用户执行命令确保tnsname能ping通

创建公有用户

在主库、备库的CDB中执行如下命令,创建相同的共有用户及密码。

创建database link

在备库CDB中执行:

主库PDB导入测试数据

在PDB创建测试表空间:

PDB chaoyang中创建数据泵DIRECTORY:

执行导入:

验证导入数据:

备库创建可手动刷新的PDB pudong

创建数据文件目录:

备库CDB执行命令创建PDB数据库:

查询并启动PDB

数据已经同步过来。

更新主库PDB数据REFRESH备库查看数据同步状态

更新主库数据:

REFRESH备库PDB:

数据REFRESH成功。

配置SWITCHOVER

(1)主库创建database link

CDB beijng执行:

(2)SWITCHOVER

CDB beijng执行:

当前PDB状态:

SWITCHOVE完成后PUDONG(原备库)直接转至READ WRITE,CHAOYANG(原主库)转为MOUNTED。

(3)验证数据

CHAOYANG(原主库):

PUDONG(原备库):

SWITCHOVER后数据正常。

REFRESH验证数据

PUDONG修改数据:

验证数据:

数据同步正常,至此18c PDB级别的 refresh及SWITCHOVER测试完毕。


未经允许不得转载:Oracle一体机用户组 » Oracle 18c新特性之Switching Over a Refreshable Clone PDB

相关推荐