一,DG搭建实例--主库配置

  one : 归档配置

    01,查看归档

     1 select log_mode,force_logging from v$database;

     02,开启归档

      关闭数据库重新启动到mount阶段    

shutdown immediate

startup mount

      03,改成归档模式和强制 logging

SQL> alter database archivelog;

Database altered.

SQL> alter database force logging;

Database altered.

          再次查看:

      04,改变归档目录 

!mkdir /u01/app/oracle/oradata/oracle01/archivelog

!ls /u01/app/oracle/oradata/oracle01/

alter system set log_archive_dest_1='location=/u01/app/oracle/oradata/oracle01/archivelog';

alter database open;

    05,创建pfile文件 

1 create pfile from spfile;
2
3 alter database create standby controlfile as '/u01/oracle/standby.ctl';

  two.设置闪回-flashback

    01,查看是否开启:

SQL> select flashback_on from v$database;

FLASHBACK_ON
------------------
NO -----如果为YES可以忽略这一步

    02, 设置闪回路径

SQL> altersystem set db_recovery_file_dest='/u01/app/oracle';

    03,设置闪回大小

SQL> altersystem set db_recovery_file_dest_size='5G';

    04,关闭数据库重新启动

SQL> shutdown immediate; ----关闭数据库

SQL> alter database flashback on;  ----开启闪回

SQL> alter database open;   ------open数据库

     05,验证数据

    

  three.添加standby日志

     01,查看主库在线日志大小和主数

SQL> select group#,bytes/1024/1024 from v$log;
GROUP# BYTES/1024/1024
---------- ---------------

1      50

2      50

3      50

      02,查看备库在线日志大小和主数

SQL>  select group#,bytes/1024/1024 from v$standby_log;

      默认显示

         no rows selected

     03,创建

 SQL> alter database add standby logfile group 11 '/data/CEBPM/onlinelog/redo11_stb01.log' size 50M;
SQL> alter database add standby logfile group 12 '/data/CEBPM/onlinelog/redo12_stb01.log' size 50M;
SQL> alter database add standby logfile group 13 '/data/CEBPM/onlinelog/redo13_stb01.log' size 50M;
SQL> alter database add standby logfile group 14 '/data/CEBPM/onlinelog/redo14_stb01.log' size 50M;

      04,再次查看备库的时候发现:

       

   four.主库修改参数文件

SQL> select group#,bytes/1024/1024 from v$standby_log;

SQL> alter database add standby logfile group 14 '/u01/oracle/redo14_stb01.log' size 50M;

SQL> alter system set log_archive_config='DG_CONFIG=(oracle01,standby)';

SQL> alter system set log_archive_dest_2='SERVICE=standby VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=standby' scope=spfile;

SQL> alter system set log_archive_dest_state_1='enable';

SQL> alter system set log_archive_dest_state_2='enable'

SQL> alter system set db_file_name_convert='/u01/oracle/datafile','/u01/oracle/datafile'scope=spfile;

SQL> alter system set log_file_name_convert='/u01/oracle/onlinelog','/u01/oracle/onlinelog'scope=spfile;

SQL> alter system set fal_server='standby';

SQL> alter system set fal_client='oracle01';

SQL> alter system set standby_file_management='AUTO';

全部执行输出显示为:
  System altered. 修改完成后重启数据库
  
SQL> shutdown immediate
SQL> startup

  five.修改配置文件

      01, listener.ora

[root@oracle01 ~]# cat /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = oracle01)
(SID_NAME = oracle01)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
) ADR_BASE_LISTENER = /u01/app/oracle

       02, tnsnames.ora

[root@oracle01 ~]# cat /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools. ORACLE01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracle01)
)
) STANDBY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.16)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = standby)
)
)

     03,重启监听

      [oracle@oracle01 ~]#lsnrctl stop

      [oracle@oracle01 ~]#lsnrctl start

  six.文件传输

SQL> create pfile='/tmp/initoracle01.ora' fromspfile;

生成参数文件

拷贝参数文件与密码文件

scp orapworacle01 192.168.1.143:/u01/app/oracle/product/11.2.0/db_1/dbs/

scp /tmp/initoracle01.ora 192.168.1.143:/u01/app/oracle/product/11.2.0/db_1/dbs/

二,DG搭建实例--从库配置

  one.配置文件修改

    01,配置文件重命名

    

      重命名文件

[root@standby dbs]# mv initoracle01.ora initstandby.ora
[root@standby dbs]# mv orapworacle01 orapwstandby

    02,改配置文件

 [root@standby dbs]# pwd
/u01/app/oracle/product/11.2.0/db_1/dbs
[root@standby dbs]# cat initstandby.ora
*.audit_file_dest='/u01/app/oracle/admin/standby/adump'
*.audit_trail='db'
*.compatible='11.2.0.4.0'
*.control_files='/u01/oracle/standby.ctl'
*.db_block_size=8192
*.db_domain='localdomain'
*.db_file_name_convert='/u01/oracle/datafile','/u01/oracle/datafile'
*.db_name='oracle01'
*.db_recovery_file_dest='/u01/oracle'
*.db_recovery_file_dest_size=5368709120
*.db_unique_name='standby'
*.diagnostic_dest='/u01/app/oracle'
*.dispatchers='(PROTOCOL=TCP) (SERVICE=oracle01XDB)'
*.fal_server='oracle01'
*.fal_client='standby'
*.log_archive_config='DG_CONFIG=(oracle01,standby)'
*.log_archive_dest_1='location=/u01/oracle/archivelog'
*.log_archive_dest_2='SERVICE=oracle01 VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=oracle01'
*.log_archive_dest_state_1='enable'
*.log_archive_dest_state_2='enable'
*.log_file_name_convert='/u01/oracle/onlinelog','/u01/oracle/onlinelog'
*.open_cursors=300
*.pga_aggregate_target=836763648
*.processes=150
*.remote_login_passwordfile='EXCLUSIVE'
*.sga_target=2510290944
*.standby_file_management='AUTO'
*.undo_tablespace='UNDOTBS1'

    03,创建必要的目录

    mkdir -p /u01/app/oracle/admin/standby/adump

    mkdir -p /u01/oracle/onlinelog/

    mkdir -p /u01/oracle/datafile

    mkdir -p  /u01/oracle/archivelog

    mkdir -p  /u01/oracle/controlfile

   two.从库配置文件更新

    01, listener.ora

 [root@standby ~]# cat /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = standby) (ORACLE_HOME = /u01/app/oracle/product/11.2.0/db_1) (SID_NAME = standby) ) )
STENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.16)(PORT = 1521)) ) )
ADR_BASE_LISTENER = /u01/app/oracle

    02,   tnsnames.ora

 [root@standby ~]# cat /u01/app/oracle/product/11.2.0/db_1/network/admin/
listener.ora samples/ shrept.lst tnsnames.ora tnsnames.ora.bak
[root@standby ~]# cat /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools. ORACLE01 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = oracle01)
)
) STANDBY =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.16)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = standby)
)
)

    03, 重启监听服务器

        [oracle@standby ~]$lsnrctl stop

        [oracle@standby ~]$lsnrctl start 

    04,启动从库为nomount

        SQL> shutdown immediate;

        SQL> startup nomount pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initstandby.ora';

        SQL> create spfile from pfile;

  three.验证监听

      01.两端的数据库都需要执行

sqlplus sys/123456@oracle01 as sysdba

sqlplus sys/123456@standby as sysdba

主库执行结果

 [oracle@oracle01 ~]$ sqlplus sys/123456@standby as sysdba

 SQL*Plus: Release 11.2.0.4.0 Production on Thu Feb 21 11:43:14 2019

 Copyright (c) 1982, 2013, Oracle.  All rights reserved.

 Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options [oracle@oracle01 ~]$ sqlplus sys/123456@oracle01 as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Thu Feb 21 13:04:26 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

从库执行结果

 [oracle@standby ~]$ sqlplus sys/123456@oracle01 as sysdba

 SQL*Plus: Release 11.2.0.4.0 Production on Thu Feb 21 13:06:18 2019

 Copyright (c) 1982, 2013, Oracle.  All rights reserved.

 Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@standby ~]$
[oracle@standby ~]$ sqlplus sys/123456@standby as sysdba SQL*Plus: Release 11.2.0.4.0 Production on Thu Feb 21 13:06:24 2019 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
[oracle@standby ~]$

三,rman数据备份与恢复

   one.主库备份数据

      rman target /

      RMAN> configure channel device type disk format '/oradata/backup/%U_%d';

      RMAN> backup as compressed backupset database;

      RMAN> backup current controlfile for standby format '/oradata/backup/standby.ctl';

      ##RMAN> backup full format='/u01/app/oracle/ORACLE01/backupset/db_%U' database include current controlfile for standby;

      等生成后最后的输出上会显示目录

   

      把文件全部发送到从库

     scp -r /u01/app/oracle/ORACLE01/backupset/* 192.168.0.16:/u01/backupset/

   two.从库数据恢复

      01,注册恢复地址

      RAMN> restore standby contolfile from '/u01/app/oracle/ORACLE01/backupset/db_%U' (根据各自名字确定)

      RMAN> catalog start with '/u01/backupset/2019_02_21'; 

 RMAN> catalog start with '/u01/backupset/2019_02_21';

 searching for all files that match the pattern /u01/backupset/2019_02_21

 List of Files Unknown to the Database
=====================================
File Name: /u01/backupset/2019_02_21/o1_mf_annnn_TAG20190221T112927_g6w6rq89_.bkp
File Name: /u01/backupset/2019_02_21/o1_mf_nnndf_TAG20190221T112928_g6w6rrhr_.bkp
File Name: /u01/backupset/2019_02_21/o1_mf_ncsnf_TAG20190221T112928_g6w6s8r5_.bkp
File Name: /u01/backupset/2019_02_21/o1_mf_annnn_TAG20190221T112945_g6w6s9tt_.bkp Do you really want to catalog the above files (enter YES or NO)? yes
cataloging files...
cataloging done List of Cataloged Files
=======================
File Name: /u01/backupset/2019_02_21/o1_mf_annnn_TAG20190221T112927_g6w6rq89_.bkp
File Name: /u01/backupset/2019_02_21/o1_mf_nnndf_TAG20190221T112928_g6w6rrhr_.bkp
File Name: /u01/backupset/2019_02_21/o1_mf_ncsnf_TAG20190221T112928_g6w6s8r5_.bkp
File Name: /u01/backupset/2019_02_21/o1_mf_annnn_TAG20190221T112945_g6w6s9tt_.bkp

      02,数据恢复 

       RMAN> restore database;

 RMAN> restore database;

 Starting restore at 21-FEB-19
using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/oracle01/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/oracle01/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/oracle01/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/oracle01/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/oracle01/example01.dbf
channel ORA_DISK_1: reading from backup piece /u01/backupset/2019_02_21/o1_mf_nnndf_TAG20190221T112928_g6w6rrhr_.bkp
channel ORA_DISK_1: ORA-19870: error while restoring backup piece /u01/backupset/2019_02_21/o1_mf_nnndf_TAG20190221T112928_g6w6rrhr_.bkp
ORA-19504: failed to create file "/u01/app/oracle/oradata/oracle01/system01.dbf"
ORA-27040: file create error, unable to create file
Linux-x86_64 Error: 2: No such file or directory
Additional information: 1 failover to previous backup RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of restore command at 02/21/2019 11:52:24
RMAN-06026: some targets not found - aborting restore
RMAN-06023: no backup or copy of datafile 5 found to restore
RMAN-06023: no backup or copy of datafile 4 found to restore
RMAN-06023: no backup or copy of datafile 3 found to restore
RMAN-06023: no backup or copy of datafile 2 found to restore
RMAN-06023: no backup or copy of datafile 1 found to restore RMAN> restore database ; Starting restore at 21-FEB-19
using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/oracle01/system01.dbf
channel ORA_DISK_1: restoring datafile 00002 to /u01/app/oracle/oradata/oracle01/sysaux01.dbf
channel ORA_DISK_1: restoring datafile 00003 to /u01/app/oracle/oradata/oracle01/undotbs01.dbf
channel ORA_DISK_1: restoring datafile 00004 to /u01/app/oracle/oradata/oracle01/users01.dbf
channel ORA_DISK_1: restoring datafile 00005 to /u01/app/oracle/oradata/oracle01/example01.dbf
channel ORA_DISK_1: reading from backup piece /u01/backupset/2019_02_21/o1_mf_nnndf_TAG20190221T112928_g6w6rrhr_.bkp
channel ORA_DISK_1: piece handle=/u01/backupset/2019_02_21/o1_mf_nnndf_TAG20190221T112928_g6w6rrhr_.bkp tag=TAG20190221T112928
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:07
Finished restore at 21-FEB-19

      03,数据库状态

    

四,DG 测试

    01,测试一

 SQL> col dest_name format a30
SQL> col error format a20
SQL> select dest_name,error from v$archive_dest; DEST_NAME ERROR
------------------------------ --------------------
LOG_ARCHIVE_DEST_1
LOG_ARCHIVE_DEST_2
LOG_ARCHIVE_DEST_3
LOG_ARCHIVE_DEST_4
LOG_ARCHIVE_DEST_5
LOG_ARCHIVE_DEST_6
LOG_ARCHIVE_DEST_7
LOG_ARCHIVE_DEST_8
LOG_ARCHIVE_DEST_9
LOG_ARCHIVE_DEST_10
LOG_ARCHIVE_DEST_11 DEST_NAME ERROR
------------------------------ --------------------
LOG_ARCHIVE_DEST_12
LOG_ARCHIVE_DEST_13
LOG_ARCHIVE_DEST_14
LOG_ARCHIVE_DEST_15
LOG_ARCHIVE_DEST_16
LOG_ARCHIVE_DEST_17
LOG_ARCHIVE_DEST_18
LOG_ARCHIVE_DEST_19
LOG_ARCHIVE_DEST_20
LOG_ARCHIVE_DEST_21
LOG_ARCHIVE_DEST_22 DEST_NAME ERROR
------------------------------ --------------------
LOG_ARCHIVE_DEST_23
LOG_ARCHIVE_DEST_24
LOG_ARCHIVE_DEST_25
LOG_ARCHIVE_DEST_26
LOG_ARCHIVE_DEST_27
LOG_ARCHIVE_DEST_28
LOG_ARCHIVE_DEST_29
LOG_ARCHIVE_DEST_30
LOG_ARCHIVE_DEST_31
STANDBY_ARCHIVE_DEST 32 rows selected.

    测试,主库查看最大归档序号

      主SQL> select max(sequence#) from v$archived_log;

      MAX(SEQUENCE#)
      --------------
            13
      从SQL> select max(sequence#) from v$archived_log;

       MAX(SEQUENCE#)
       --------------
              13
      
      主库日志切换:

      alter system archive log current;   

      再次查看主从库一样则成功

      

   two.测试2

      主库操作   

[oracle@oracle01 ~]$ sqlplus / as sysdba
1 SQL> create table dg(id number); Table created. SQL> insert into dg values(1); 1 row created. SQL> commit; Commit complete. SQL> select * from dg; ID
----------
1

     从库操作

[oracle@standby ~]$ sqlplus / as sysdba
SQL> select * from dg; ID
----------
1

     测试成功

      

 

   

oracle 单实例DG(配置篇二)的更多相关文章

  1. oracle 单实例DG(搭建篇一)

    一,介绍 lodding... 二,安装前环境配置 01,依赖包的安装: yum install binutils-* yum install compat-libstdc++-* yum insta ...

  2. oracle 单实例DG(切换篇三)

    一,开篇 此篇操作承接上文,必须完成DG实例搭建完成方可有执行以下内容的实例 二,切换物理备库 one. oracle01库命令 select switchover_status from v$dat ...

  3. oracle 单实例DG(闪回技术四)

    一,flashback Oracle Flashback技术是一组数据库特性,它可以让你查看数据库对象的过去状态,或者将数据库对象返回到以前的状态,而无需使用基于时间点的介质恢复.根据数据库的变化,闪 ...

  4. Oracle - 给rac创建单实例dg,并做主从切换

    一.概述 本文将介绍如何给rac搭建单节点的dg,以及如何对其进行角色转换.预先具备的知识(rac搭建,单实例-单实例dg搭建) 二.实验环境介绍 主库rac(已安装rac,并已有数据库orcl)ra ...

  5. Oracle_lhr_CentOS 7.3 ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置

    Oracle_lhr_CentOS 7.3  ECS上搭建RAC 18c+单实例DG+EMCC+DG的FSFO快速故障转移配置 [大型连续免费公开课]Oracle 18c rac+dg+13.3的em ...

  6. oracle rac切换到单实例DG后OGG的处理

    在RAC切换到单实例DG后,将OGG目录复制过去,在使用alter extract ext_name,begin now的时候报错 2016-04-10 11:27:03 WARNING OGG-01 ...

  7. Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0

    Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0 系统环境: 操作系统:RedHat EL6(64位) Oracle:    Oracle 11gR2 ...

  8. Oracle 单实例数据库安装和real application clusters数据库安装的区别

    在想了解Oracle单实例数据可和RAC数据库前,请确保你已经知道了数据库和实例的关系,如果不了解,请参考Oracle 数据库实例和数据库. 单实例数据库模式 单实例模式下,一个数据库只能通过一个实例 ...

  9. Oracle单实例情况下的library cache pin的问题模拟与问题分析

    Oracle单实例情况下的library cache pin的问题模拟与问题分析 參考自: WAITEVENT: "library cache pin" Reference Not ...

随机推荐

  1. The Difference Between @Helpers and @Functions In WebMatrix

    from: http://www.mikesdotnetting.com/article/173/the-difference-between-helpers-and-functions-in-web ...

  2. .net在线HTML编辑器

    //在线网页编辑器, <script> var editor2 = new baidu.editor.ui.Editor({//实例化编辑器 initialContent: '', min ...

  3. C#操作excel打印

    using System; using System.Data; using System.IO; using System.Runtime.InteropServices; using System ...

  4. Task ContinueWith

    前正无生意,且记Task.ContinueWith之用法. using System; using System.Collections.Generic; using System.Diagnosti ...

  5. react-native自定义原生组件

    此文已由作者王翔授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 使用react-native的时候能够看到不少函数调用式的组件,像LinkIOS用来呼起url请求  Link ...

  6. Day3作业 .

    ,))::])]): :-])# 3,使用while和for循环分别打印字符串s=’asdfer’中每个元素. # 4,实现一个整数加法计算器:# 如:content = input(‘请输入内容:’ ...

  7. shell-脚本-作用是发现前10个最占用磁盘空间的文件

    #!/bin/bash## 这个脚本的作用是发现前10个最占用磁盘空间的文件################定义这个脚本的全区变量##################################C ...

  8. 【bzoj4804】欧拉心算 莫比乌斯反演+莫比乌斯函数性质+线性筛

    Description 给出一个数字N 求\(\sum_{i=1}^{n}\sum_{j=1}^{n}\varphi(gcd(i,j))\) Input 第一行为一个正整数T,表示数据组数. 接下来T ...

  9. Java面向对象之关键字super 入门实例

    一.基础概念 (一)super关键字 super关键字的用法和this相似.this代表的是当前对象.super代表的是父类中内存空间. 子父类中是不会出现同名属性的情况. (二)继承中.成员变量问题 ...

  10. 滴滴插件化方案 VirtualApk 源码解析

    那么其中的难点很明显是对四大组件支持,因为大家都清楚,四大组件都是需要在AndroidManifest中注册的,而插件apk中的组件是不可能预先知晓名字,提前注册中宿主apk中的,所以现在基本都采用一 ...