ITPub博客

首页 > 数据库 > Oracle > SharePlex 环境部署

SharePlex 环境部署

原创 Oracle 作者:Ryan_Bai 时间:2019-11-29 15:29:46 0 删除 编辑

目标在 Linux 系统下安装 Oracle;利用 SharePlex 实现数据同步;可复制 DML 和 DDL 操作

一、环境描述

源端 目标端
操作系统 linux 7.6 linux 7.6
IP 192.168.66.111 192.168.66.112
数据库版本 19.3.0.0.0 19.3.0.0.0

二、数据库准备

  1. 创建shareplex专用表空间

    create tablespace splex_tbs datafile '/oradata/datafile/splex_tbs01.dbf' size 1G;
  2. 数据库开归档

  3. 开启补充日志

    alter database add supplemental log data (primary key, unique index) columns;

二、SharePlex 安装(源 & 目标)

  1. 解压安装
    使用oracle用户解压,安装。

    node1-orcl[oracle]/home/oracle>./SharePlex-9.2.1-b39-ONEOFF-rhel-amd64-m64.tpm
    Unpacking ..................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ..........................................................................
      ................................
    SharePlex installation program:
        SharePlex Version: 9.2.1
        Build platform: rhel-amd64
        Target platform: lin-amd64
    Please enter the product directory location? /home/oracle/splex/soft
    Please enter the variable data directory location? /home/oracle/splex/data
    Please specify the SharePlex Admin group (select a number):
    1. [oinstall]
    2. dgdba
    3. kmdba
    4. backupdba
    5. dba
    6. oper
    ?  5
    Please enter the TCP/IP port number for SharePlex communications? [2100] 
    Preparing to install SharePlex v.9.2.1:
        User:                     oracle
        Admin Group:              dba
        Product Directory:        /home/oracle/splex/soft
        Variable Data Directory:  /home/oracle/splex/data
    Proceed with installation? [yes] 
    Installing ................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      ...............................
    Setting file ownerships ...................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      ............................................
    Setting file permissions ..................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .........................................................................
      .............................................
    Do you have a valid SharePlex v. 9.2.1 license? [yes] 
    Please enter the License key? 序列号
    Please enter the customer name associated with this license key? CHINA MINISTRY OF RAILWAY
    SharePlex v. 9.2.1 license validation successful:
        Customer Name:      CHINA MINISTRY OF RAILWAY
        License Key:        序列号
        Product Name:       SharePlex for Oracle - RAC
        License Key Type:   "Perpetual Key"
    NOTE: You can upgrade this license key or add license keys for additional machines
          by executing utility /home/oracle/splex/soft/install/splex_add_key.
    Installation log saved to: /home/oracle/.shareplex/INSTALL-SharePlex-9.2.1-1911290513.log
    SharePlex v.9.2.1 installation successful.
  2. ora_setup配置
    配置shareplex,配置时如果需要自定义复制的源与目标端的ORACLE_SID,则需要配置tnsnames.ora别名,且/etc/oratab中必须有对应于自定义的tnsnames别名的ORACLE_SID。

    node1-orcl[oracle]/home/oracle/splex/soft/bin>./ora_setup
    Welcome to the Oracle SharePlex setup process for port 2100.
    This process creates tables and user accounts needed to run
    Oracle SharePlex replication.
    Will the SharePlex install be using a BEQUEATH connection? (Entering 'n' implies a SQL*net connection)  [y] : 
    Please note the following:
    ** In response to prompts, a carriage return will choose the default
       given in brackets.  If there is no default, a reply must be entered.
    ** To exit the program while the program is waiting for input, use the
       CTRL-C key sequence.
       This sequences can be entered by holding down the CONTROL key and
       pressing the C key.
    Enter the Oracle SID for which SharePlex should be installed [orcl] : 
    In order to create the SharePlex tables and user account, we must
    connect to the database as a DBA user
    Enter a DBA user for orcl  : system
    Enter password for the DBA account, which will not echo : 
    connecting--This may take a few seconds.
    validating user name and password. . . This may take a few seconds.
    SharePlex objects will need to be created under a special
    account.  You can pick an existing user or create a new one.
    Would you like to create a new SharePlex user ? [y] : 
    Enter username for new user [splex/splex] : 
    Warning:  This user is now being granted unlimited tablespace.
    This privilege will remain in effect until it is explicitly changed.
    Granting select on sys.user$ to splex
    SPLEX_ROLE_BOTH  already exists; continuing setup . . .
    Do you want to enable replication of tables with TDE? [n] : 
    To enable replication of tables with TDE in the future, please rerun ora_setup.
    Setup will now install SharePlex objects.
    These are the existing tablespaces.
    SYSTEM SYSAUX UNDOTBS1 TEMP USERS SPLEX_TBS 
    Enter the default tablespace for use by SharePlex [USERS] : SPLEX_TBS
    Enter the temporary tablespace for use by SharePlex [TEMP] : 
    Enter the index tablespace for use by SharePlex [ ] : SPLEX_TBS
    Creating SharePlex objects [Installation type: Fresh]. . .
    Creating SharePlex Oracle-timezone-region map . . . Done.
    Creating Conflict Resolution Package . . . Done.
    Creating SharePlex Dataequator package . . . 
    Loading Compare Package from "/home/oracle/splex/soft/util/sp_deq_pkg.plb"...Done.
    Note: The SharePlex object that supports replication of SDO_GEOMETRY cannot be installed
          because the Oracle Spatial and Graph feature is not installed.
    Do you want to continue with the setup without support for SDO_GEOMETRY? [n] : y
    Will the current setup for sid: [orcl] be used as source (including cases as source for failover or master-master setups)?  [y] : 
    Setup of SharePlex objects successful . . .
    Changing SharePlex connection database . . .
    Setup of orcl completed successfully
    -- The datasource identifier in the SharePlex configuration is 'o.orcl' --
  3. sp_cop -u 2300 & 启动
    可以使用该参数指定 shareplex 启动到指定的 IP 上,可以使用 netstat -an | grep <port_number>
    启动 -u可以启动shareplex实例到指定端口,可以复制多个库。

    node1-orcl[oracle]/home/oracle/splex/soft/bin>./sp_cop &
    [1] 2672
    node1-orcl[oracle]/home/oracle/splex/soft/bin>
    *******************************************************
    * SharePlex for Oracle Startup 
    * Copyright 2018 Quest Software Inc.
    * ALL RIGHTS RESERVED.
    * Protected by U.S. Patents: 7,461,103 and 7,065,538
    * Version: 9.2.1.39-m64-ONEOFF-SPO17172-SPO17624C-SPO17384-SPO17377-oracle
    * VarDir : /home/oracle/splex/data
    * Port   : 2100
    *
    * IMPORTANT SECURITY NOTICE:
    *
    * YOU HAVE NOT YET SELECTED THE NETWORK SECURITY MODEL.
    * PLEASE RUN:
    *
    *     sp_security --setup
    *
    * TO SELECT YOUR NETWORK SECURITY MODEL.
    *******************************************************
  4. 状态验证

    node1-orcl[oracle]/home/oracle/splex/soft/bin>./sp_ctrl
    *******************************************************
    * SharePlex Command Utility
    * Copyright 2018 Quest Software Inc.
    * ALL RIGHTS RESERVED.
    * Protected by U.S. Patents: 7,461,103 and 7,065,538
    *******************************************************
    sp_ctrl (node1:2100)> status
    Brief Status for node1
    Process          State                             PID     Running   Since     
    ---------------  ------------------------------  --------  --------------------
    Cop              Running                             2672  29-Nov-19 05:18:20  
    Cmd & Ctrl       Running                             2696  29-Nov-19 05:18:34  
    There are no active configuration files

三、同步配置

  1. 创建配置文件(源数据库)

    1. sp_ctrl控制台
      SharePlex日常操作都在sp_ctrl控制台中进行,启动命令为:/<prodir>/bin/sp_ctrl,一般启动之后首先进入控制台执行sp_ctrl > stop post,停止。

      sp_ctrl (node2:2100)> stop post
    2. config 配置文件
      Config配置文件为复制链路需要复制对象以及链路映射文件。

      1. 列出config文件

        sp_ctrl (node1:2100)> list config   # 列出config文件
        File   Name                                         State       Datasource     
        --------------------------------------------------  ----------  ---------------
        ORA_config                                          Inactive    o.SOURCE_SID   
        Last Modified At: 26-Nov-19 09:13    Size: 151
      2. 复制修改配置文件

        sp_ctrl (node1:2100)> copy config ORA_config to test_config # 复制config文件
        sp_ctrl (node1:2100)> edit config test_config # 修改config文件
        datasource:o.orcl
        #source tables      target tables           routing map
        #splex.demo_src      splex.demo_dest            target_system:进程名@o.target_sid
        expand hr.%                hr.%                    192.168.66.112:splex_hr@o.orcl
        • splex.demo_src --源库的用户名.表名,可以使用%通配符,全匹配半匹配等。priv%not(table_name)排除表。

        • splex.demo_dest --目标库的用户名.表名

        • target_system@o.target_sid --目标库的IP或hosts文件中映射名@为目标端的sid或别名。

        • hr.test hr.test 192.168.204.151:scott_tab@o.honor1 --IP或主机名后加冒号,可以为该表复制单独起一个队列。

        • mary.cust2!key(c1,c2) mary.cust2 proda@o.sid --自定义pk

      3. config 生效

        sp_ctrl (node1:2100)> activate config test_config
      4. 验证Capture、Read和Export进程是否被创建

        sp_ctrl (node1:2100)> show 
        Process    Source                               Target                 State                   PID
        ---------- ------------------------------------ ---------------------- -------------------- ------
        Capture    o.orcl                                                      Running               60407
        Read       o.orcl                                                      Running               60423
        Export     node1                                node2                  Running               60438
        sp_ctrl (node1:2100)> show capture detail
        Host: node1     System time: 28-Nov-19 10:17:58
                                   Operations
        Source     Status            Captured Since
        ---------- --------------- ---------- ------------------
        o.orcl     Running                  0 28-Nov-19 09:34:52
           Oracle current redo log          : 25
           Capture current redo log         : 25
           Capture log offset               : 10206852
           Last change processed:           
                Operation on SHAREPLEX internal table at 11/28/19 10:17:55
           Capture state                    : Processing
           Activation id                    : 2
           Error count                      : 0
           Operations captured              : 0
           Transactions captured            : 0
           Concurrent sessions              : 0
           HWM concurrent sessions          : 2
           Checkpoints performed            : 23
           Total operations processed       : 3948
           Total transactions completed     : 3948
           Total Kbytes read                : 0
           Redo records in progress         : 0
           Redo records processed           : 18556
           Redo records ignored             : 14608
           Redo records - last HRID         : N/A
        sp_ctrl (node1:2100)> show export
        Host   : node1
        Queue  : node1
                                   Kbytes
        Target     Status          Exported     Since              Total       Backlog
        ---------- --------------- ------------ ------------------ ---------- ----------
        node2      Running                   12 28-Nov-19 09:34:56          0          0
        sp_ctrl (node1:2100)>
    3. 同步数据

    4. 开启同步(目标端)

      1. 设置恢复的起点(源端需要有数据流入)

        sp_ctrl (node2:2100)> reconcile queue splex_hr for o.orcl-o.orcl scn 1573836
      2. 开启同步

        sp_ctrl (node2:2100)> start post

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31490526/viewspace-2666242/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
Oracle ACE Associate; OCMU 用户组成员; Oracle 10g OCE、OCA、OCP; Oracle 11g OCP、OCM; MySQL 5.6 OCP; Oracle 11g OCP讲师; PostgreSQL 中国首批 PGCA 获得者;

注册时间:2017-09-18

  • 博文量
    173
  • 访问量
    162611