旁路导入

本页面为您介绍如何通过 OceanBase 控制台开启和关闭旁路导入端口。

概述

OceanBase 数据库支持以旁路导入的方式向数据库中插入数据。此功能可以绕过传统的 SQL 层接口,直接向数据库的文件写入数据,从而提高数据导入的效率。若您希望更深入了解,可以参考 旁路导入概述

前提条件

在开启旁路导入端口时,请您进行如下检查,只有满足下述情况时,才可以进行开启旁路导入端口的操作。

  • 当前集群为运行中状态。

  • 当前租户为运行中状态。

  • 代理版本为 V4.3.0 及以上。

    说明

    若版本不符合要求,请联系 OceanBase 技术支持协助升级。

  • 主地址的私网地址为运行状态。

开启旁路导入

  1. 登录 OceanBase 管理控制台

  2. 在左侧导航栏中,单击 实例列表

  3. 在实例列表中找到目标集群实例,单击集群名称,进入 集群实例工作台

  4. 在左侧导航栏,单击 数据库代理

  5. 在代理地址列表中,您可以单击 开启 为主地址的私网地址开启旁路导入端口。

  6. 在二次确认弹窗上单击 确定

导入数据

  1. 下载最新版本的 OceanBase 导数工具

    OceanBase 导数工具的详情请参见 产品介绍

  2. 查看和设置环境变量。

    1. 查看 Java 和 PATH 相关的环境变量。

      [root@iZbxxxx rpc]# env | grep JAVA
      JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-2.0.3.al8.x86_64
      [root@iZbxxxx rpc]# env | grep PATH
      PATH=/root/ob-loader-dumper-4.3.0-RELEASE/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
    2. 设置 Java 和 PATH 环境变量。

      [root@iZbxxxx rpc]# export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.382.b05-2.0.3.al8.x86_64
      [root@iZbxxxx rpc]# export PATH=/root/ob-loader-dumper-4.3.0-RELEASE/bin/:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:$PATH
  3. 通过旁路导入方式导入数据。

    说明

    导入的文件内容格式需要符合规范,请参考 《准备好您的数据了吗?》 识别文件中的数据格式。

    [root@iZbxxxx rpc]# obloader -h<host> -u<user_name> -p<pass_word> -D <db_name> --table '<table_name>' -f output1 -t <tenant_name> --public-cloud --csv --direct --rpc-port 3307 -P3306

    参数

    描述

    -h

    指定 OceanBase 数据库的主机地址。

    -u

    用于连接 OceanBase 数据库的用户名、租户名和集群名,格式为 <user>@<tenant>#<cluster>。例如,-u user@tenant#cluster

    -p

    指定连接 OceanBase 数据库的用户密码。

    -D

    指定需要导入数据库对象定义和表数据的 OceanBase 数据库的名称。

    --table

    对 OceanBase 数据库中的指定表进行操作。例如,--table 'example'

    -f

    指定待导入文件名的前缀。例如,该条命令表示待导入的数据被保存在以output1为前缀命名的文件中。

    -t

    该参数搭配 --public-cloud 使用,指定连接 OceanBase 数据库的租户名。

    --public-cloud

    用于标识从云数据库 OceanBase 部署的 OceanBase 集群中导入数据库对象或者表数据。

    --csv

    指定待导入的数据文件格式为 CSV。您可以根据待导入数据的实际格式进行指定,例如,--sql--par--orc等。

    --direct

    指定使用旁路导入模式。该参数与 --rpc-port--parallel 搭配使用。

    --parallel

    用于旁路导入时加载数据的并行度。该参数可选,默认值为 1,与 --rpc-port--direct 搭配使用。

    --rpc-port 3307

    用于连接 OBServer RPC 的端口。

    表示虽然连接数据库的端口为 3306(由 -P3306 指定),但是实际的数据导入通过 3307 端口的 RPC 服务完成,以提高导入性能。

    -P 3306

    指定连接 OceanBase 数据库的主机端口。

关闭旁路导入

  1. 登录 OceanBase 管理控制台

  2. 在左侧导航栏中,单击 实例列表

  3. 在实例列表中找到目标集群实例,单击集群名称,进入 集群实例工作台

  4. 在左侧导航栏,单击 数据库代理

  5. 在代理地址列表中,单击 关闭 为主地址的私网地址,关闭旁路导入端口。

  6. 在二次确认弹窗上单击 确定