跳到主要内容
版本:3.x

Oracle

安装 Agent 后,您需要在 Tapdata Cloud 平台为 Agent 和 Oracle 数据库建立连接,完成操作后即可在数据复制/开发任务中使用该数据源。本文介绍建立连接前的准备工作(如授权账号等)。

支持版本

Oracle 9i、10g、11g、12c、19c

注意事项

  • 如设置了 connect_time(自动断开超时会话),可能导致实时同步异常,可通过下述命令检查该参数的设置。

    select resource_name, limit from dba_profiles where profile=( select profile from dba_users where username = '<username>');
  • 您需要为归档日志预留足够的存储空间,避免存储占满影响数据库运行。

作为源库

  1. 以具有 DBA 权限的用户身份登录 Oracle 数据库。

  2. 开启数据库归档模式(ARCHIVELOG)。

    提示

    您也可以执行 select log_mode from v$database; 命令来查看是否已开启该功能,返回结果为 ARCHIVELOG 表示已开启,可跳过本步骤。

    1. 执行下述命令,关闭数据库,请务必在业务低峰期操作,以免影响业务运行。

      shutdown immediate;
    2. 执行下述命令,启动并挂载数据库。

      startup mount;
    3. 执行下述命令,开启存档并打开数据。

      alter database archivelog;
      alter database open;
  3. 开启补充日志(Supplemental Logging)。

ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
  1. 开启标识键日志(identification key)。

    提示

    当使用 12c 的 PDB 时,推荐为容器的表开启日志,您可以执行先执行命令 ALTER SESSION SET CONTAINER=<pdb>;,将更改应用于容器。

    • 为单个表开启

      ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
      ALTER TABLE <schema name>.<table name> ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
    • 为所有表开启

      ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
  2. 开启全补充日志(full supplemental logging)。

    • 为单个表开启

      ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
      ALTER TABLE <schema name>.<table name> ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
    • 为所有表开启

      ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
  3. 提交更改。

    ALTER SYSTEM SWITCH LOGFILE;
  4. 创建用于数据同步/开发任务的账号。

CREATE USER username IDENTIFIED BY password;
GRANT create session, alter session, execute_catalog_role, select any dictionary, select any transaction, select any table, create any table, create any index, unlimited tablespace to user name;

作为目标库

  1. 以具有 DBA 权限的用户身份登录 Oracle 数据库。

  2. 创建用于数据同步/开发任务的账号,该账号拥有 schema 的 owner权限。

    具体操作,见 CREATE USERGRANT

下一步

连接 Oracle 数据库