dg部署问题 oracle_oracle dg 部署 - CSDN
精华内容
参与话题
  • Oracle 11gR2 DG部署(RMAN方式)

    千次阅读 2018-12-04 09:47:16
    Oracle DG部署(RMAN方式) Oracle DG部署(RMAN方式) 1.环境介绍 2.DG部署 2.1.建立主库orcl 2.2.主库开启归档 2.3.主库添加Standby Redo Log 2.4.从主库创建pfile文件 2.5.设置主库初始化参数 2.6.设置备库...

    Oracle DG部署(RMAN方式)

    1.环境介绍

    hostname ip db_name db_unique_name net service name
    db11 172.16.8.11 orcl orcl11 orcl11
    db12 172.16.8.12 orcl orcl12 orcl12

    2.DG部署

    2.1.建立主库orcl

    DBCA建立主库,修改online redo 大小为500M

    2.2.主库开启归档

    主库开启归档并设置强制日志 force logging

    --干净的关闭数据库
    SQL> shutdown immediate
    --以mount模式启动
    SQL> startup mount
    --切换到归档模式
    SQL> alter database archivelog;
    --开启强制日志
    SQL> alter database force logging;
    --打开数据库
    SQL> alter database open;
    --查看归档
    SQL> archive log list;
    --查看是否为强制日志
    SQL> select force_logging from v$database;
    

    2.3.主库添加Standby Redo Log

    --查看Redo和Standby Redo
    SQL> select * from v$logfile;											
    --仅仅显示Online Redo,不显示Standby Redo
    SQL> select * from v$log;												
    --新增一组大小为500M的Standby Redo,这里的group号不得与Online redo重复
    SQL> alter database add standby logfile group 21 '/u01/app/oracle/oradata/orcl/standby21.log' size 500M;
    SQL> alter database add standby logfile group 22 '/u01/app/oracle/oradata/orcl/standby22.log' size 500M;
    SQL> alter database add standby logfile group 23 '/u01/app/oracle/oradata/orcl/standby23.log' size 500M;
    SQL> alter database add standby logfile group 24 '/u01/app/oracle/oradata/orcl/standby24.log' size 500M;
    

    2.4.从主库创建pfile文件

    创建pfile文件, 默认路径为$ORACLE_HOME/dbs,此处为/u01/app/oracle/product/11.2.0/dbhome_1/dbs/,在sqlplus里执行以下命令

    SQL> create pfile from spfile;
    

    将主库的pfile复制到备库/u01/app/oracle/product/11.2.0/dbhome_1/dbs/下

    cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/
    scp initorcl.ora db12:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/
    

    2.5.设置主库初始化参数

    编辑/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora文件,追加

    cat >> /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora << "EOF"
    *.db_unique_name='orcl11'
    *.fal_server='orcl12'
    *.log_archive_config='dg_config=(orcl11,orcl12)'
    *.log_archive_dest_1='location=use_db_recovery_file_dest valid_for=(all_logfiles, all_roles) db_unique_name=orcl11'
    *.log_archive_dest_2='service=orcl12 lgwr async valid_for=(online_logfile,primary_role) db_unique_name=orcl12'
    *.log_archive_dest_state_1=ENABLE
    *.log_archive_dest_state_2=ENABLE
    *.standby_file_management='AUTO'
    *.db_file_name_convert='/u01/app/oracle/oradata/orcl','/u01/app/oracle/oradata/orcl'
    *.log_file_name_convert='/u01/app/oracle/oradata/orcl','/u01/app/oracle/oradata/orcl'
    EOF
    

    创建新的主库spfile文件,并重新启动主库

    SQL> shutdown immediate
    SQL> create spfile from pfile;
    SQL> startup
    

    2.6.设置备库初始化参数

    编辑/u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora文件,修改备库初始化参数

    cat >> /u01/app/oracle/product/11.2.0/dbhome_1/dbs/initorcl.ora << "EOF"
    *.db_unique_name='orcl12'
    *.fal_server='orcl11'
    *.log_archive_config='dg_config=(orcl11,orcl12)'
    *.log_archive_dest_1='location=use_db_recovery_file_dest valid_for=(all_logfiles, all_roles) db_unique_name=orcl12'
    *.log_archive_dest_2='service=orcl11 lgwr async valid_for=(online_logfile,primary_role) db_unique_name=orcl11'
    *.log_archive_dest_state_1=ENABLE
    *.log_archive_dest_state_2=ENABLE
    *.standby_file_management='AUTO'
    *.db_file_name_convert='/u01/app/oracle/oradata/orcl','/u01/app/oracle/oradata/orcl'
    *.log_file_name_convert='/u01/app/oracle/oradata/orcl','/u01/app/oracle/oradata/orcl'
    EOF
    

    2.7.复制主库的密码文件到备库

    将密码文件orapworcl复制到备库的/u01/app/oracle/product/11.2.0/dbhome_1/dbs/下

    cd /u01/app/oracle/product/11.2.0/dbhome_1/dbs/
    scp orapworcl db12:/u01/app/oracle/product/11.2.0/dbhome_1/dbs/
    

    2.8.创建备库相应的目录结构

    使用oracle用户创建以下目录,避免权限问题

    mkdir -p /u01/app/oracle/oradata/orcl/
    mkdir -p /u01/app/oracle/admin/orcl/adump/
    mkdir -p /u01/app/oracle/fast_recovery_area/orcl/
    

    2.9.配置主库和备库的监听

    使用图形界面配置,采用静态监听

    netmgr
    

    2.10.配置主库和备库的网络服务名

    使用图形界面配置,在主备库上均需配置orcl11、orcl12两个服务名

    netmgr
    

    2.11.创建备库并启动

    创建备库的spfile文件,启动备库到nomount模式

    SQL> create spfile from pfile;
    SQL> startup nomount
    

    2.12.RMAN复制主库到备库

    首先RMAN连接到目标数据库和辅助数据库

    rman target sys/password@orcl11 auxiliary sys/password@orcl12
    

    使用RMAN的duplicate命令进行复制,两边目录结构相同,需要添加nofilenamecheck参数

    RMAN> duplicate target database for standby from active database nofilenamecheck;
    

    复制成功后,备库自动被加载为mount模式,进入sqlplus查看

    SQL> select status from v$instance;
    

    2.13.在备库开启实时日志应用

    SQL> alter database recover managed standby database using current logfile disconnect from session;
    

    2.14.主备库角色状态查询

    SQL> select switchover_status,database_role from v$database;
    --主库显示:TO STANDBY/PRIMARY,如果显示SESSION ACTIVE表示还有活动的会话,需要关闭活动的会话再检查
    --备库显示:NOT ALLOWED/PHYSICAL STANDBY
    

    3.测试DG

    3.1.执行日志切换测试

    在主库端切换归档,在备库检查是否也发生了切换

    主库上执行日志切换

    SQL> archive log list;
    SQL> alter system switch logfile;
    SQL> archive log list;
    

    备库上查看,日志的sequence号也跟着变了

    SQL> archive log list;
    

    3.2.查看备库启动的DG进程

    SQL> select process,client_process,sequence#,status from v$managed_standby;
    PROCESS   CLIENT_P  SEQUENCE# STATUS  
    --------- -------- ---------- ------------  
    ARCH      ARCH             23 CLOSING  
    ARCH      ARCH              0 CONNECTED            //归档进程  
    ARCH      ARCH             21 CLOSING  
    ARCH      ARCH              0 CONNECTED  
    RFS       ARCH              0 IDLE  
    RFS       UNKNOWN           0 IDLE  
    RFS       LGWR             24 IDLE               //归档传输进程  
    RFS       UNKNOWN           0 IDLE  
    MRP0      N/A              24 APPLYING_LOG      //日志应用进程  
      
    9 rows selected.  
    

    3.3.查看数据库的保护模式

    SQL> select database_role,protection_mode,protection_level,open_mode from v$database;
    DATABASE_ROLE    PROTECTION_MODE      PROTECTION_LEVEL     OPEN_MODE  
    ---------------- -------------------- -------------------- --------------------  
    PRIMARY          MAXIMUM PERFORMANCE  MAXIMUM PERFORMANCE  READ WRITE  
    

    3.4.查看DG的日志信息

    SQL> select * from v$dataguard_status;
    

    3.5.Open Read Only Standby数据库

    以只读方式打开备库,并开启实时日志应用

    SQL> shutdown immediate
    SQL> startup
    SQL> select database_role,protection_mode,protection_level,open_mode from v$database;
    SQL> select process,client_process,sequence#,status from v$managed_standby;
    SQL> alter database recover managed standby database using current logfile disconnect from session;
    

    3.6.解锁scott用户并添加数据,验证是否同步

    在主库解锁scott用户并创建测试表,插入10000行数据。

    操作如下

    SQL> set line 200
    SQL> select username,default_tablespace,account_status from dba_users where username='SCOTT';
    SQL> alter user scott account unlock;
    SQL> conn scott/tiger;
    SQL> show user
    SQL> create table test001 (id number(10),name varchar2(20));
    SQL> begin
         for i in 1..10000 loop
         insert into test001 values (1,'ww');
         end loop;
         end;
         /
    SQL> commit;
    

    standby端查询scott用户是否解锁,以及test001表是否创建并且插入了10000行数据

    SQL> conn scott/tiger;
    SQL> select * from tab;
    SQL> select count(*) from test001;
    

    4.DG三种模式

    4.1.最大性能模式max performance-默认

    这种保护模式(默认)提供了可能的最高级别的数据保护,而不影响主数据库的性能。这是通过允许事务在恢复该事务所需重做数据在写到本地联机重做日志后立即提交而实现的。主数据库的重做数据流也写到至少一个备数据库,但是那个重做流相对于创建重做数据的事务是异步写的。

    当所用的网络连接有足够的带宽,这种模式提供了近似于最大可用性模式的数据保护级别,并且对主数据库性能的影响最小。

    4.2.最大可用性模式max availability

    这种保护模式提供了可能的最高级别的数据保护,而不用与主数据库的可用性相折衷。与最大保护模式相同,在恢复事务所需的重做写到本地联机重做日志和至少一个事务一致性备数据库上的备重做日志之前,事务将不会提交。与最大保护模式不同的是,如果故障导致主数据库无法写重做流到异地备重做日志时,主数据库不会关闭。替代地,主数据库以最大性能模式运行直到故障消除,并且解决所有重做日志文件中的中断。当所有中断解决之后,主数据库自动继续以最大可用性模式运行。

    这种模式确保如果主数据库故障,但是只有当第二次故障没有阻止完整的重做数据集从主数据库发送到至少一个备数据库时,不发生数据丢失。

    4.3.最大保护模式max protection

    这种保护模式确保如果主数据库故障不会发生数据丢失。要提供这种级别的保护,恢复每个事务所需的重做数据必须在事务提交之前同时写到本地联机重做日志和至少一个备数据库上的备重做日志。要确保不发生数据丢失,如果故障导致主数据库无法写重做流到至少一个事务一致性备数据库的备重做日志时,主数据库会关闭。

    4.4.查询当前模式

    SQL> select protection_mode,protection_level from v$database;
    

    5.DG切换测试

    5.1.DG switchover 切换测试

    db11-orcl:主库------>备库

    db12-orcl:备库------>主库

    主备库角色状态查询

    SQL> select switchover_status,database_role,open_mode from v$database;
    --db11-orcl显示:TO STANDBY/PRIMARY,如果显示SESSION ACTIVE表示还有活动的会话,需要关闭会话再检查
    --db12-orcl显示:NOT ALLOWED/PHYSICAL STANDBY
    

    db11-orcl切换到备库

    SQL> alter database commit to switchover to physical standby;
    SQL> alter database commit to switchover to physical standby with session shutdown;
    --如果状态显示SESSION ACTIVE,在切换的时候可以指定with session shutdown 子句强制关闭活动的会话。
    SQL> shutdown immediate
    SQL> startup mount
    

    db12-orcl切换到主库

    SQL> alter database commit to switchover to primary;
    SQL> alter database open;
    

    db11-orcl执行APPLY LOG命令

    --启用mount状态下的APPLY LOG
    SQL> alter database recover managed standby database disconnect from session;
    --启用open状态(READ ONLY WITH APPLY)下的APPLY LOG
    SQL> alter database recover managed standby database cancel;
    SQL> alter database open;
    SQL> alter database recover managed standby database disconnect from session;
    SQL> select switchover_status,database_role,open_mode from v$database;
    

    5.2.DG failover 切换测试

    db11-orcl:主库------>崩溃

    db12-orcl:备库------>主库

    主备库角色状态查询

    SQL> select switchover_status,database_role,open_mode from v$database;
    

    db11-orcl通过shutdown abort方式人工模拟主库崩溃,直接关闭

    SQL> select open_mode from v$database;
    SQL> shutdown abort
    SQL> startup mount
    SQL> alter system flush redo to 'orcl12';
    

    db12-orcl执行如下操作切换为主库

    SQL> select thread#, low_sequence#, high_sequence# from v$archive_gap;
    --如果没有发现明显的gap现象,说明此次的failover不会有数据损失情况。在备库,要进行关闭apply和结束应用动作。
    SQL> alter database recover managed standby database cancel;
    SQL> alter database recover managed standby database finish;
    SQL> alter database commit to switchover to primary;
    SQL> alter database open;
    SQL> select open_mode, switchover_status from v$database;
    

    5.3.DG failover后重建DG

    db11-orcl:崩溃------>备库

    db12-orcl:主库------>主库(保持主库状态不变)

    db12-orcl主库角色状态查询

    SQL> select switchover_status,database_role,open_mode from v$database;
    

    db12-orcl主库创建备库控制文件

    mkdir -p /u01/bak/
    
    SQL> alter database create standby controlfile as '/u01/bak/control01.ctl';
    

    将备库控制文件拷贝至db11

    scp ezdb12:/u01/bak/control01.ctl /u01/app/oracle/oradata/orcl/control01.ctl
    cp /u01/app/oracle/oradata/orcl/control01.ctl /u01/app/oracle/fast_recovery_area/orcl/
    mv /u01/app/oracle/fast_recovery_area/orcl/control01.ctl /u01/app/oracle/fast_recovery_area/orcl/control02.ctl
    

    恢复对应数据文件至db11,并启动db11-orcl到mount状态,应用APPLY模式

    SQL> startup mount;
    SQL> alter database recover managed standby database disconnect from session;
    

    启动db11-orcl至OPEN状态,并应用APPLY REDO模式

    SQL> alter database recover managed standby database cancel;
    SQL> alter database open;
    SQL> alter database recover managed standby database disconnect from session;
    

    6.开启和关闭DataGuard的流程

    6.1.关闭

    关闭主库

    SQL> shutdown immediate
    

    关闭主库监听

    lsnrctl stop
    

    查询备库是否正在执行重做应用或实时应用。如果MRP0或MRP进程存在,则备库正在应用重做。

    SQL> select process, status from v$managed_standby;
    

    如果重做应用程序正在运行,停止备库的Redo日志的应用

    SQL> alter database recover managed standby database cancel;
    

    关闭备库

    SQL> shutdown immediate
    

    关闭备库监听

    lsnrctl stop
    

    6.2.开启

    启动备库监听

    lsnrctl start
    

    启动备库到mount状态

    SQL> startup mount;
    

    开启备库的Redo日志应用

    SQL> alter database recover managed standby database using current logfile disconnect from session;
    

    启动主库监听

    lsnrctl start
    

    启动主库

    SQL> startup;
    

    检查日志情况的SQL语句

    select al.thrd "Thread", almax "Last Seq Received", lhmax "Last Seq Applied"
     from (select thread# thrd, max(sequence#) almax
           from v$archived_log
           where resetlogs_change#=(select resetlogs_change# from v$database)
           group by thread#) al,
          (select thread# thrd, max(sequence#) lhmax
           from v$log_history
           where first_time=(select max(first_time) from v$log_history)
           group by thread#) lh
     where al.thrd = lh.thrd;
    
    展开全文
  • 虚拟机上安装linux6操作系统,部署oracle 11g,在本机上手动添加的TNS,在连接数据库时出现“TNS-12535: TNS: 操作超时” ,以下是解决步骤 1.ping 虚拟机ip 没问题 2.tnsping 虚拟机数据库的tns名称,出现操作...

    虚拟机上安装linux6操作系统,部署了oracle 11g,在本机上手动添加的TNS,在连接数据库时出现“TNS-12535: TNS: 操作超时” ,以下是解决步骤

    1.ping 虚拟机ip 没问题

    2.tnsping 虚拟机数据库的tns名称,出现操作超时错误


    3.检查虚拟机的防火墙设置、关闭防火墙、查看状态


    4.可以成功连接;


    展开全文
  • oracle DG模式搭建详解

    千次阅读 2018-08-13 10:00:50
    oracle DG搭建 安装环境  在主机1上安装数据库软件,并建监听和实例,在主机2上安装数据库软件,并建监听,但不建实例,dg搭建之后数据会同步过去。    数据库参数优化(也可在spfile文件统一修改) 注:scope=...

    oracle DG搭建

    安装环境

        在主机1上安装数据库软件,并建监听和实例,在主机2上安装数据库软件,并建监听,但不建实例,dg搭建之后数据会同步过去。

     

     数据库参数优化(也可在spfile文件统一修改)

    注:scope=spfile表示更改spfile文件的值,重启数据库后才能生效

    sga,pga配置

    sga:(内存大小*80%)*80% = 128G * 80% * 80% = 82G;

    pga:(内存大小*80%)*20% = 128G * 80% * 80% = 20G;

    alter system set sga_max_size=82000m scope=spfile;

    alter system set sga_target=82000m scope=spfile;

    alter system set pga_aggregate_target=20000m scope=spfile;

    JOB_QUEUE_PROCESSES参数

    JOB_QUEUE_PROCESSES参数是job的进程个数,默认是0;

    ALTER SYSTEM SET JOB_QUEUE_PROCESSES=20;

    共享池大小

    Shared pool是SGA中最关键的内存片段,共享池主要由库缓存(共享SQL区和PL/SQL区)和数据字典缓存组成。其中库缓存的作用是存放频繁使用的sql,pl/sql代码以及执行计划。数据字段缓存用于缓存数据字典。在内存空间有限的容量下,数据库系统根据一定的算法决定何时释放共享池中的sql,pl/sql代码以及数据字典信息。所以shared_pool_size不能太小,否则执行效率会很低。

    alter system set shared_pool_size=15000m scope = spfile;

     数据库最大连接数

    数据库的最大可支持的连接数,根据公司逻辑库的实际情况1500足够了

    alter system set processes=1500 scope = spfile;

     数据文件个数

    db_files参数限制了数据库数据文件总的个数,datafiles数目达到db_files指定后数据库不能添加新的数据文件

    alter system set db_files=1000 scope=spfile;

     游标参数

    OPEN_CURSORS 指定一个会话一次最多可以拥有的游标数,不够无法使用游标,过大不会增加系统开销

    alter system set open_cursors=2000 scope=both;

    alter system set session_cached_cursors=500 scope=spfile;

    默认密码期限

    Oracle数据库密码期限是180,把它改成无限制

    ALTER  PROFILE  DEFAULT  LIMIT  PASSWORD_LIFE_TIME  UNLIMITED;

     数据库连接超时时间

    默认是60秒,60秒没连接,会报错,把它设置成0

    LSNRCTL> set inbound_connect_timeout 0

    LSNRCTL> set save_config_on_stop on 生效

    关闭审计

    oracle 11g推出了审计功能,这个功能会针对很多操作都产生审计文件.aud,日积月累下来这些文件也很多,考虑到实际情况,将审计功能关闭

    alter system set audit_trail=none scope = spfile;

    重启数据库

    上述修改都需重启数据库生效

    SQL>shutdown immediate

    SQL>startup;

    主数据库配置(192.168.8.173)

     开启归档与强制LOGGING

    Oracle dg模式需要保证主从库一致,需要传输archive log和redo log到从库,如果不是归档模式无法保证主从库的数据一致。

    SQL> select log_mode,force_logging from v$database;

     LOG_MODE     FOR 

     ------------     --- 

     ARCHIVELOG     NO 

    SQL> ALTER DATABASE FORCE LOGGING; 

     创建redo和standy redo日志

        根据公司平台情况创建6个redo日志组,每个大小1G,创建standby日志组的个数是原日志组个数+1再与thread的积,size不能小于原日志文件的大小,所以这里创建7个standby redo。

    redo log创建和删除

    1:select * from v$log; 查看redo日志状态

    2:alter system switch logfile; 将当前redo日志切到下一个执行

    3:alter database add logfile group 6 ('/oracle/oradata/dbxxx/redo06.log') size 1024m reuse;

    添加新的redo日志

    4: alter database drop logfile group 1; 删除redo日志组(慎用)

    standby redo log 的创建只是在logfile前加一个standby

        1.alter database add standby logfile group 7('/oracle/oradata/dbxxx/standyredo01.log') size 1024m reuse;

    创建主库密码文件

    Data Guard 配置中所有数据库必须都拥有独立的密码文件,并且必须保证同一个 Data Guard 配置中所有数据库服务器的 SYS 用户拥有相同密码以保证redo 数据的顺利传输,因为 redo 传输服务通过认证的网络会话来传输redo 数据,而会话使用包含在密码文件中的SYS 用户密码来认证。

    orapwd file=$ORACLE_HOME/dbs/orapw$ORACLE_SID password=xxxx entries=1 force=y

    SPFILE文件配置(128G内存数据库)

    注:数据库启动时加载spfile文件,需对参数进行调整,以及主备配置

    SQL> create pfile='/oracle/product/11.2/dbs/initdbxxx.ora' from spfile;

    vi /oracle/product/11.2/dbs/initdbxxx.ora

    dbxxx.__db_cache_size=66035122176

    dbxxx.__java_pool_size=536870912

    dbxxx.__large_pool_size=536870912

    dbxxx.__oracle_base='/oracle'#ORACLE_BASE set from environment

    dbxxx.__pga_aggregate_target=21474836480

    dbxxx.__sga_target=83751862272

    dbxxx.__shared_io_pool_size=0

    dbxxx.__shared_pool_size=15569256448

    dbxxx.__streams_pool_size=536870912

    *.audit_file_dest='/oracle/admin/dbxxx/adump'

    *.audit_trail='db'

    *.compatible='11.2.0.0.0'

    *.control_files='/oracle/oradata/dbxxx/control01.ctl','/oracle/flash_recovery_area/dbxxx/control02.ctl'

    *.db_block_size=8192

    *.db_domain=''

    *.db_files=1000

    *.db_name='dbxxx'

    *.db_recovery_file_dest='/oracle/flash_recovery_area'

    *.db_recovery_file_dest_size=20971520000

    *.DB_UNIQUE_NAME='dbxxxpr'    *.diagnostic_dest='/oracle'

    *.dispatchers='(PROTOCOL=TCP) (SERVICE=dbxxxXDB)'

    *.FAL_CLIENT='dbxxxpr'  

    *.FAL_SERVER='dbxxxdg'  

    *.LOG_ARCHIVE_CONFIG='DG_CONFIG=(dbxxxpr,dbxxxdg)'

    *.log_archive_dest_1='location=/oracle/oradata/dbxxx/archivelog'

    *.log_archive_dest_2='SERVICE=dbxxxdg LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=dbxxxdg'   

    *.LOG_ARCHIVE_DEST_STATE_2='ENABLE'    

    *.LOG_ARCHIVE_FORMAT='log%t_%s_%r.arc'

    *.nls_language='SIMPLIFIED CHINESE'

    *.nls_territory='CHINA'

    *.open_cursors=1000

    *.pga_aggregate_target=20971520000

    *.processes=1500

    *.remote_login_passwordfile='EXCLUSIVE'

    *.session_cached_cursors=500

    *.sessions=1655

    *.sga_target=83751862272

    *.STANDBY_FILE_MANAGEMENT='AUTO'

    *.undo_tablespace='UNDOTBS1'

    SPFILE文件替换

    spfiledbxxx.ora复制initdbxxx.ora

    rm $ORACLE_HOME/dbs/spfiledbxxx.ora

    SQL> create spfile from pfile='/oracle/product/11.2.0/dbs/initdbxxx.ora';

    tns文件配置

    vi $ORACLE_HOME/network/admin/tnsnames.ora ,配置如下:

    dbxxxpr =

      (DESCRIPTION =

        (ADDRESS = (PROTOCOL = TCP)(HOST = server173)(PORT = 1521))

        (CONNECT_DATA =

          (SERVER = DEDICATED)

          (SERVICE_NAME = dbxxx)

        )

      )

     

    dbxxxdg =

      (DESCRIPTION =

        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.174)(PORT = 1521))

        (CONNECT_DATA =

          (SERVER = DEDICATED)

          (SERVICE_NAME = dbxxx)  

        )

      )

     

    listener文件配置

    vi $ORACLE_HOME/network/admin/tnsnames.ora ,配置如下:

     

    LISTENER =

      (DESCRIPTION_LIST =

        (DESCRIPTION =

          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

          (ADDRESS = (PROTOCOL = TCP)(HOST = server173)(PORT = 1521))

        )

      )

    ADR_BASE_LISTENER = /oracle

    SAVE_CONFIG_ON_STOP_LISTENER = ON

    INBOUND_CONNECT_TIMEOUT_LISTENER = 0

     

    备数据库配置(192.168.8.174)

    文件复制

    将主数据库/oracle/product/10.2/network/admin下的网络配置文件(tnsnames.ora,listener.ora),和/oracle/product/10.2/dbs下的密码文件orapwdbxxx和initdbxxx.ora拷贝scp到备数据库相同目录下,scp不行的话用sz下载,rz上传。

    initdbxxx.ora参数配置

    注:主备切换对应的名称正好相反,其他配置一样

    修改initdbxxx.ora文件:

    dbxxx.__db_cache_size=66035122176

    dbxxx.__java_pool_size=536870912

    dbxxx.__large_pool_size=536870912

    dbxxx.__oracle_base='/oracle'#ORACLE_BASE set from environment

    dbxxx.__pga_aggregate_target=21474836480

    dbxxx.__sga_target=83751862272

    dbxxx.__shared_io_pool_size=0

    dbxxx.__shared_pool_size=15569256448

    dbxxx.__streams_pool_size=536870912

    *.audit_file_dest='/oracle/admin/dbxxx/adump'

    *.audit_trail='db'

    *.compatible='11.2.0.0.0'

    *.control_files='/oracle/oradata/dbxxx/control01.ctl','/oracle/flash_recovery_area/dbxxx/control02.ctl'

    *.db_block_size=8192

    *.db_domain=''

    *.db_files=1000

    *.db_name='dbxxx'

    *.db_recovery_file_dest='/oracle/flash_recovery_area'

    *.db_recovery_file_dest_size=20971520000

    *.DB_UNIQUE_NAME='dbxxxdg'

    *.diagnostic_dest='/oracle'

    *.dispatchers='(PROTOCOL=TCP) (SERVICE=dbxxxXDB)'

    *.FAL_CLIENT='dbxxxdg'

    *.FAL_SERVER='dbxxxpr'

    *.local_listener='for_db'

    *.LOG_ARCHIVE_CONFIG='DG_CONFIG=(dbxxxpr,dbxxxdg)'

    *.log_archive_dest_1='location=/oracle/oradata/dbxxx/archivelog'

    *.log_archive_dest_2='SERVICE=dbxxxpr LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=dbxxxpr'

    *.LOG_ARCHIVE_DEST_STATE_2='ENABLE'

    *.LOG_ARCHIVE_FORMAT='log%t_%s_%r.arc'

    *.nls_language='SIMPLIFIED CHINESE'

    *.nls_territory='CHINA'

    *.open_cursors=1000

    *.pga_aggregate_target=20971520000

    *.processes=1500

    *.remote_login_passwordfile='EXCLUSIVE'

    *.session_cached_cursors=500

    *.sessions=1655

    *.sga_target=83751862272

    *.STANDBY_FILE_MANAGEMENT='AUTO'

    *.undo_tablespace='UNDOTBS1'


    创建相关目录

    mkdir -p /oracle/fast_recovery_area/dbxxx

    mkdir -p /oracle/admin/dbxxx

    cd /oracle/admin/dbxxx

    mkdir -p adump  dpdump  pfile

    mkdir -p /oracle/oradata/dbxxx/

    mkdir -p /oracle/oradata/dbxxx/archivelog

    tns文件配置

    修改/oracle/product/10.2/network/admin目录下的tnsnames.ora文件,配置如下:

    dbxxxdg =

      (DESCRIPTION =

        (ADDRESS = (PROTOCOL = TCP)(HOST = server174)(PORT = 1521))

        (CONNECT_DATA =

          (SERVER = DEDICATED)

          (SERVICE_NAME = dbxxx)

        )

      )

     

    dbxxxpr =

      (DESCRIPTION =

        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.8.173)(PORT = 1521))

        (CONNECT_DATA =

          (SERVER = DEDICATED)

          (SERVICE_NAME = dbxxx)  

        )

      )

    listener文件配置

    vi $ORACLE_HOME/network/admin/tnsnames.ora ,配置如下:

    SID_LIST_LISTENER =  

      (SID_LIST =  

        (SID_DESC =  

          (GLOBAL_DBNAME = dbxxx)  

          (ORACLE_HOME = /oracle/product/10.2)  

          (SID_NAME = dbxxx)  

        )  

      )

     

    LISTENER =

      (DESCRIPTION_LIST =

        (DESCRIPTION =

          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

          (ADDRESS = (PROTOCOL = TCP)(HOST = server174)(PORT = 1521))

        )

      )

     

    ADR_BASE_LISTENER = /oracle

     

    启动备库到nomount

    SQL> conn /as sysdba

    SQL> create spfile from pfile='/oracle/product/11.2.0/dbs/initgdqxt.ora';

    SQL> startup nomount

     

    备数据库还原

    [oracle@server174 ~]$ rman target sys/****@dbxxxpr auxiliary sys/****@dbxxxdg

    RMAN> duplicate target database for standby nofilenamecheck from active database;

     

    切换到同步模式

    SQL> alter database open;

    SQL> alter database recover managed standby database using current logfile disconnect from session;

     

    展开全文
  • dg和ogg的区别--oracle数据库

    万次阅读 2018-12-04 15:42:21
    ADG和OGG的新特性,目前越来越多的客户重视灾备数据站点的建设,由于存储级灾备和操作系统级灾备的局限性(主要是带宽高及事务完整性不容易保证),因此在选择甲骨文的应用...Oracle DataGuard 11g的新特性 ~~~~~~ ...

    ADG和OGG的新特性,目前越来越多的客户重视灾备数据站点的建设,由于存储级灾备和操作系统级灾备的局限性(主要是带宽高及事务完整性不容易保证),因此在选择甲骨文的应用级灾备时,通常考虑的是DataGuard和GoldenGate两款软件的实现,由于这两款软件也在快速的发展和更新,因此我们先来看一下最新版本 ADG和OGG的新特性:

    Oracle DataGuard 11g的新特性 ~~~~~~

    • 物理备库可实时查询
    •  加快备库备份的速度
    •  快照备库
    •  提高Redo Apply的性能
    •  支持的数据类型更多
    •  更快速执行失败切换

    Oracle GoldenGate 11gR2的新特性 ~~~~~~

    •  新增整合捕捉进程,支持多线程,提供旁路顺流模式,不影响生产库性能;
    •   预建立自动冲突检测机制,提供自动解决模块,降低部署成本;
    •   支持数据库对象中文名称,可实现大小写敏感;
    •   支持OEM12c 的Plug-in;
    •    AES128, AES192, and AES256 加密;
    •   优化Pump Trail 模式,降低网络流量;
    •    支持平台,功能等方面的增强。

     

    结合一位兄弟作的对比表格,作了一些完善,对比DG 10g和GoldenGate的大致优缺点:

      Oracle DataGuard Oracle GoldenGate
    原理 复制归档日志或在线日志 抽取在线日志中的数据变化,转换为GGS自定义的数据格式存放在本地队列或远端队列中
    稳定性 作为灾备的稳定性极高 稳定性不如DataGuard
    维护 维护简单,极少出现问题 命令行方式,维护较复杂
    对象支持 完全支持 部分对象需手工创建于维护
    备份端可用性 备份端处于恢复或只读状态,在只读状态下不能同时进行恢复。 两端数据库是活动的,备份端可以提供实时的数据查询及报表业务等,从而提高系统整体的业务处理能力,充分利用备份端的计算能力,提升系统整体业务处理性能。可以实现两端数据的同时写入
    接管时间 数据库工作在mount状态下,接管业务时,数据库要open 可实现立即接管
    复制方式 通过恢复机制实现的,无法实现同步复制 GoldenGate可以提供秒一级的大量数据实时捕捉和投递,异步复制方式,无法实现同步复制
    资源占用 复制通过数据库的LGWR进程或ARCN进程完成,占用数据库少量资源 业务高峰时在数据抽取转换时消耗系统资源较多,低峰时占用较小
    异构数据库支持 单一数据库解决方案,仅运行在Oracle数据库上,源端和目标端操作系统必须相同,版本号可以不同 可以在不同类型和版本的数据库之间进行数据复制。如ORACLE,DB2,SYBASE,SQL SERVER,INFORMIX、Teradata等。
    适用于不同操作系统如windows、linux、unix、aix等
    带宽占用 使用Oracle Net传输日志,可通过高级压缩选项进行压缩,压缩比在2-3倍 利用TCP/IP传输数据变化,集成数据压缩,提供理论可达到9:1压缩比的数据压缩特性
    拓扑结构 可以实现一对多模式 可以实现一对一、一对多、多对一、双向复制等多种拓扑结构

     

    11g的ADG当然又作了很多新的改进,ADG最大的特点还是能做到同步复制,而OGG的数据复制在亚秒级,还是只能算作异步哦。

    展开全文
  • 本人新手,资源有限,希望能得到大神指点。想利用虚拟机搭建一个Oracle 11grac集群,方便以后的学习!
  • Oracle 18c rac+dg+13.3的emcc部署配置

    千人学习 2019-11-27 16:29:13
    1、CentOS 7.3的安装及其基本配置 2、18c的rac+单实例的dg部署 3、13.3的EMCC的安装及其使用 4、配置DG环境中的无缝切换(同一个TNS当主库挂掉的时候自动切换到备库)
  • 数据库管理员-DBA-高级

    千次阅读 2019-03-17 21:27:36
    目前DBA运维团队15人,管理170套oracle和mysql数据库,岗位有初、中、高级。 具体待遇根据技术能力可谈。10K-25K不等。 工作职责: 1、负责银行全行170套oracle和mysql数据库运维 2、数据库运维巡检、安装部署。 3、...
  • Oracle 单实例DG搭建详解

    万次阅读 2017-06-06 14:50:41
    oracle DG datagrad switchover failover failover恢复
  • ORACLE 之间的OGG配置

    千次阅读 2018-07-07 08:34:17
    OGG source和target环境:soucesource端:操作系统版本:Linux 2.6.9-89.EL x86_64hostname:dg1数据库版本:10.2.0.1 64bitogg版本:fbo_ggs_Linux_x64_ora10g_64bit.tarrac数据库名:WENDINGIP:192.168.1.1target...
  • 1.GoldenGate Director简介 以前我们在实施DG后,虽然实施简单,但是后期维护却苦于没有直观的工具,每次查看状态都必须通过命令完成,...Oracle GoldenGate Director是部署Oracle的中间件Weblogic Server上的Web
  • 企业级RAC+DG架构部署

    千次阅读 2017-05-26 16:34:54
    Application Clusters,中文译为“实时应用集群”,是ORACLE甲骨文公司提供的在低成本服务器上构建高可用性数据库系统的解决方案,部署自由,无需购买额外部件,就可以实现多节点的负载均衡和故障转移功能,满足7*...
  • Data Guard 是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,包括软件的版本,目录存储结构,以及...
  • 在搭建DG时 连接rman进行standby文件创建时输入rman target sys/123456@orcl auxiliary sys/123456@orcls,提示 error from auxiliary database: ORA-12528: TNS:listener: all appropriate instances are blocking ...
  • Oracle DG主备切换VIP

    千次阅读 2018-02-05 13:04:26
    在做DG主备切换时,为使应用端在不修改连接配置的情况下,正常连接DG数据库,方法有几种; 一是,应用端连接主机为主机名,可以通过域名解析调整实现; 二是,应用端连接主机为IP, 通过设置VIP(手动配置或者f5等...
  • 一键DG脚本(静默安装创建实例创建DG)

    千次阅读 热门讨论 2017-07-17 16:49:50
    首先,这只是为了练习shell而写大神们不屑请别看 不懂shell的可以看看,做个参考,把一些功能当做魔板 我知道红黑联盟,linux公社等会盗转,所以提前问候你们全家了脚本大致步骤是: ...2.解析config.conf文件,获取...
  • Oracle 12C DG 搭建(RAC-RAC/RAC-单机)

    千次阅读 2017-02-07 11:28:56
    主库上操作 1.开启RAC的 force logging SQL> alter database force logging;...SQL> alter system set log_archive_config='DG_CONFIG=(eisoo,eisoos)'; SQL> alter system set log_archive_dest_2
  • Oracle 12c RAC 到单机实例 DATAGUARD搭建

    千次阅读 2016-10-15 10:32:03
    第二章:环境信息 2.1 系统平台 2.1.1 主机平台与版本 主机系统 ● HP-UX Itanium 11.31 主机数据库 ● 12.1.0.2 RAC 2.1.2 备机平台与版本 备机系统 ● HP-UX Itanium 11.31 备机数据库 ● 12.1.0.2 Single ...
  • Oracle主备库数据同步使用DataGuard。Data Guard 是Oracle的远程复制技术,它有物理和逻辑之分,但是总的来说,它需要在异地有一套独立的系统,这是两套硬件配置可以不同的系统,但是这两套系统的软件结构保持一致,...
  • Oracle GoldenGate 详解

    万次阅读 2019-06-21 10:18:42
    一、Oracle GoldenGate介绍  GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递,实现源数据库与目标数据库的数据同步,保持亚秒级的数据延迟。 1、...
  • oracle11g ocm考试总结

    千次阅读 2015-10-21 15:18:03
    oracle11g ocm考试总结   2015年9月28,29是一个难忘的日子,在这两天里参加了oracle 11g ocm考试,感觉比当年高考还累,第一天累的手都不听使唤了,第二天还好一点,现在已经知道考试结果,还是满意的,现在做...
1 2 3 4 5 ... 20
收藏数 1,549
精华内容 619
关键字:

dg部署问题 oracle