这个命令是死命令,会一直卡在这,但是后台其实归档日志已经在同步了,除非人为的关闭 否则 一直是这样的。ALTER DATABASE OPEN; --备库不是必须处于OPEN状态,启动归档被应用即可,这个命令可以不用执行。2.4 check查看归档是否及时应用
先检查备库的归档日志同步情况SQL> SELECT NAME,applied FROM v$archived_log;......NAME--------------------------------------------------------------------------------APPLIED---------/data/oracle/oradgdata/standby_archive/1_20866_821708334.dbfYES/data/oracle/oradgdata/standby_archive/1_20867_821708334.dbfYES/data/oracle/oradgdata/standby_archive/1_20868_821708334.dbfYESNAME--------------------------------------------------------------------------------APPLIED---------/data/oracle/oradgdata/standby_archive/1_20869_821708334.dbfYES2800 rows selected.如果发现全部都是YES,证明归档日志已经在同步。在主库执行check:SQL> archive log list;Database log mode Archive ModeAutomatic archival EnabledArchive destination /oracle/app/oracle/flash_recovery_area/archivelogOldest online log sequence 20869Next log sequence to archive 20871Current log sequence 20871在备库执行checkSQL> archive log list;Database log mode Archive ModeAutomatic archival EnabledArchive destination /data/oracle/oradgdata/standby_archiveOldest online log sequence 20869Next log sequence to archive 0Current log sequence 20871看到主库备库当前的Current log sequence都是20871,备库上面最新的归档日志applied都是YES,就表明主库备库数据同步一致了。dataguard重启算是彻底完成了。到这里强行关闭执行2.3的那个sql命令窗口。下次再执行到2.3这一步骤,就可以在后面加上disconnect from session,就是执行完这个命令后断开这个回话,就是我们所能接受的,可以接着用这个连接执行其他命令了。