说明

Logical standby 数据库是通过Physical standby数据库转换的。
本Logical standby是通过之前创建的Physical standby转换的。
Physical standby搭建可参考下列链接: http://www.cnblogs.com/zhenxing/p/5260693.html

逻辑DG支持的数据类型

在从物理DG转换为逻辑DG前,先需要确定逻辑DG支持的数据类型和支持哪些DDL操作,可参考下列链接:

http://docs.oracle.com/cd/B28359_01/server.111/b28294/data_support.htm#CHDDCCIG

转换主要需要进行的操作

主库
创建主库作为逻辑备库时的在线日志归档路径(作为备库时生效)
执行构建LogMiner需要的数据字典生成语句 备库:
停止逻辑备库的日志应用
创建作为逻辑备库时的在线日志归档路径(接受主库传送过来的归档日志)
切换数据库成逻辑备库并设置新的db_name
重启数据库到mount模式
以resetlogs方式打开数据库
启用实时日志应用

系统说明

主库:

IP:172.25.21.111
Linux:RHEL6.4
DB:Oracle 11.2.0.4
SID:siebuat


备库:

IP:172.25.21.222
Linux:RHEL6.4
DB:Oracle 11.2.0.4
SID:uatldg

具体步骤

--------------------------------主库--------------------------------

1、创建主库作为逻辑备库时的在线日志归档路径(作为备库时生效)

alter system set log_archive_dest_3='location=/oracle/ldg_archivelog valid_for=(standby_logfiles,standby_role) db_unique_name=siebuat'

--确保存在ldg_archivelog这个目录

2、执行构建LogMiner需要的数据字典生成语句

EXECUTE DBMS_LOGSTDBY.BUILD;
--------------------------------备库--------------------------------

1、停止物理备库的日志应用

ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;

2、创建作为逻辑备库时的在线日志归档路径(接受主库传送过来的归档日志)

alter system set log_archive_dest_3='location=/oracle/ldg_archivelog valid_for=(standby_logfiles,standby_role) db_unique_name=uatldg'--主库的归档日志接收路径
alter system set log_archive_dest_1='location=/oracle/archivelog valid_for=(online_logfiles,all_roles) db_unique_name=uatldg'--本地的归档存放路径

3、查看数据当前状态、角色信息

SELECT SWITCHOVER_STATUS,
DATABASE_ROLE,
OPEN_MODE,
PROTECTION_MODE,
PROTECTION_LEVEL
FROM V$DATABASE;

4、切换数据库成逻辑备库并设置新的db_name

alter database recover to logical standby uatldg; --这里我直接设定新db name为uatldg,转换前和主库一样是siebuat

5、重启数据库到mount模式

SHUTDOWN IMMEDIATE;
STARTUP MOUNT; --再次查看数据库状态,已经转换成了逻辑备库
SELECT SWITCHOVER_STATUS,
DATABASE_ROLE,
OPEN_MODE,
PROTECTION_MODE,
PROTECTION_LEVEL
FROM V$DATABASE;
 

6、以resetlogs方式打开数据库

ALTER DATABASE OPEN RESETLOGS;

7、启用实时日志应用

alter database start logical standby apply immediate;--实时
alter database start logical standby apply;--不实时

alter database stop logical standby apply;--取消日志应用

8、测试数据同步是否成功

1、主库scott用户下新建一个表或修改一条记录

2、查看备库是否同步成功,如果同步不成功,需要查看alert日志和相关视图查看是否配置有问题。

9、注意事项

/*

在测试数据是否正常同步时,不要使用数据库的内部账号
逻辑dg在默认情况下不传输系统用户下,用户自行创建的数据
如,在sys用户下创建一个test表,这个表不会同步到逻辑备库
可以使用下列语句查看哪些用户作为内部用户 */
SELECT OWNER FROM DBA_LOGSTDBY_SKIP WHERE STATEMENT_OPT = 'INTERNAL SCHEMA';

10、参考文档

http://docs.oracle.com/cd/B28359_01/server.111/b28294/create_ls.htm#g105412

http://www.cnblogs.com/zhenxing/p/5260693.html

 

Logical standby database 搭建(配置)的更多相关文章

  1. 10g 11g配置Logical Standby

    1.创建一个物理Standby数据库 详细见11g Physical Standby配置 2.Standby数据库取消managed  recovery ALTER DATABASE RECOVER ...

  2. 【原】Configuring Oracle Data Guard In Physical Standby Database

    作者:david_zhang@sh [转载时请以超链接形式标明文章] http://www.cnblogs.com/david-zhang-index/p/5042640.html参照文档:https ...

  3. [Oracle][DATAGUARD] LOGICAL STANDBY环境里,有些SEQUENCE无法应用,导致Primary和Standby无法同期

    今天遇到了一个客户,问题是这样的,客户构筑了一个RACtoRAC的 LOGICAL STANDBY环境.并用EM在监视同期情况,发现EM页面上55115和55116这两个SEQUENCE一直在应用. ...

  4. Oracle DG故障诊断一则:alter database recover to logical standby new_logical_dbname卡住

    我们在基于物理standby的基础上搭建逻辑备库过程过程中,在运行: alter database recover to logical standby READDB; 卡住不动,而且alert也没有 ...

  5. 聊聊Oracle 11g的Snapshot Standby Database(上)

    Oracle 11g是Data Guard的重要里程碑版本.在11g中,Active DataGuard.Advanced Compression等特性大大丰富了Data Guard的功能和在实践领域 ...

  6. Oracle_Data_Gard Create a physical standby database

    创建之前要对DG的环境有一个总体的规划和了解.                                                   规划 IP 192.168.3.161 192.16 ...

  7. oracle 10g standby database 实时应用 redo 数据

    -------physical standby database: real-time apply 须要配置 standby redo log: 启用实时应用, 日志应用服务会直接应用接收的redo ...

  8. Oracle Dataguard之物理standby的基本配置

    尽管网上有很多Oracle Dataguard的配置教程,但不难发现,很多采用的是rman duplicate这种方法,尽管此种方法较为简便.但在某种程度上,却也误导了初学者,虽说也能配置成功,但只知 ...

  9. Samba服务器搭建配置

    本次环境: 服务端-centos6.8-192.168.2.200 客户端1-centos6.8-192.168.2.201 客户端2-Windows7-192.168.2.104 假设条件如下: 使 ...

随机推荐

  1. HDU - 6321 Problem C. Dynamic Graph Matching (状压dp)

    题意:给定一个N个点的零图,M次操作,添加或删除一条边,每一次操作以后,打印用1,2,...N/2条边构成的匹配数. 分析:因为N的范围很小,所以可以把点的枚举状态用二进制表示集合.用一维数组dp[S ...

  2. 对Java 静态代码块的一些了解

    一 般情况下,如果有些代码必须在项目启动的时候就执行的时候,需要使用静态代码块,这种代码是主动执行的;需要在项目启动的时候就初始化,在不创建对象的情 况下,其他程序来调用的时候,需要使用静态方法,这种 ...

  3. redis 笔记01 简单动态字符串、链表、字典、跳跃表、整数集合、压缩列表

    文中内容摘自<redis设计与实现> 简单动态字符串 1. Redis只会使用C字符串作为字面量,在大多数情况下,Redis使用SDS(Simple Dynamic String,简单动态 ...

  4. ASC转换BCD,ASC2BCD(转)

    int ASC2BCD(const char* szASC,byte* szBDC)   {   int szASCLen=strlen(szASC);   byte * bpBCD = new by ...

  5. Openstack之Nova创建虚机流程分析

    前言        Openstack作为一个虚拟机管理平台,核心功能自然是虚拟机的生命周期的管理,而负责虚机管理的模块就是Nova. 本文就是openstack中Nova模块的分析,所以本文重点是以 ...

  6. 如何评价一个pipeline的好坏

    生物信息NGS相关软件众多. 常用的比对软件:bwa,bowtie: 去pcr重复的软件\:samtools,picard: calling variant:samtools/bcftools,gat ...

  7. kali安装后配置

    0x00.安装Vmware Tools 由于是在VMware Workstation里面安装的,所以需要首先安装VMware tools工具方便我们Ctrl+C和Ctrl+V,步骤如下: 在VMWar ...

  8. Boostnote:适合程序员的笔记软件【转】

    本文转载自:https://blog.csdn.net/u013553529/article/details/70306899 Boostnote:适合程序员的笔记软件 注意: Boostnote正在 ...

  9. java中set集合的常用方法

    因为Set集合也是继承Collection集合 所以这里就不讲继承Collection集合的方法 都是继承Collection集合的方法 https://www.cnblogs.com/xiaostu ...

  10. MongoError: server instance in invalid state undefined 解决办法

    MongoDB关键点集锦(更新中...)  2017-01-20 09:33:48[其它数据库]点击数:15作者:Real_Bird的博客来源: 网络 随机为您推荐的文章:MongDB索引的介绍及使用 ...