重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2265|回复: 1
打印 上一主题 下一主题

12c搭建dg使用duplicate复制数据库打开备库报错

[复制链接]
跳转到指定楼层
楼主
发表于 2017-8-28 16:19:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用duplicate复制主库到备库,以read only模式打开备库的pdb提示如下:
SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         4 ORCLPDB                        MOUNTED
SQL> alter pluggable database orclpdb open read only;
alter pluggable database orclpdb open read only
*
ERROR at line 1:
ORA-65085: cannot open pluggable database in read-only mode

进一步查看orclpdb的状态
SQL> select pdb_name,status from dba_pdbs;

PDB_NAME                                                                                                                         STATUS
-------------------------------------------------------------------------------------------------------------------------------- ----------
PDB$SEED                                                                                                                         NORMAL
ORCLPDB                                                                                                                          NEW


关于pdb状态为new的说明:
NEW - The PDB has never been opened since it was created.
It must be opened in READ WRITE mode for Oracle to perform processing needed to complete the integration of the PDB into the CDB and mark it NORMAL.
An error will be thrown if an attempt is made to open the PDB read only.



原因分析:
主库的orclpdb为手工新建的,创建后一直没open过,导致复制到备库无法open.

解决办法:在主库打开该pdb,然后关闭。之后重新duplicate到备库。
再次在备库open,成功,如下:
SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         4 ORCLPDB                        MOUNTED
SQL> alter pluggable database orclpdb open;

Pluggable database altered.

SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         4 ORCLPDB                        READ ONLY  NO
SQL>





如果主库的pdb为read write模式,duplicate到备库后,open数据库会提示错误,如下:
SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       MOUNTED
         4 ORCLPDB                        MOUNTED
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-10458: standby database requires recovery
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1:
'/u01/app/oracle/oradata/DG_STANDBY/datafile/o1_mf_system_dt7l4dx3_.dbf'

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

沙发
 楼主| 发表于 2017-8-29 09:21:34 | 只看该作者
正确的做法应该是主库open一次pdb,然后切一次日志。备库就可以open pdb了。不需要重新复制数据库到备库。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-9-29 06:24 , Processed in 0.084949 second(s), 18 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表