数据导入导出

    EMQX Broker 为数据导入导出功能提供了命令行接口、以及 Dashboard 的可视化界面(企业版)。目前支持导入导出的数据如下:

    • 规则引擎配置数据(资源、规则)
    • 规则引擎编解码配置数据(企业版)
    • 黑名单数据
    • Application 数据
    • Dashboard 用户数据
    • 通过 emqx-auth-mnesia 插件添加的 MQTT 用户数据和 ACL 数据
    • 通过 emqx-auth-username 插件添加的 MQTT 用户数据和 ACL 数据
    • 编解码 Schema
    1. 导出数据,导出文件的文件名格式为 emqx-export-YYYY-MM-DD-HH-mm-SS.json,默认导出路径为 data 目录(请参见 目录结构

    2. 保存导出文件,这里将导出文件保存到 tmp 目录

      1. $ cp /var/lib/emqx/emqx-export-2020-5-15-17-39-0.json /tmp
    3. 导入数据,导入的文件名必须以绝对路径形式指定

      1. $ ./emqx_ctl data import /tmp/emqx-export-2020-5-15-17-39-0.json

    HTTP API

    1. 导出数据

      1. $ curl -i --basic -u admin:public -X POST "http://localhost:8081/api/v4/data/export"
    2. 下载数据文件

    3. 导入数据

      1. $ curl -i --basic -u admin:public -X POST "http://localhost:8081/api/v4/data/import" -d @/tmp/emqx-export-2020-9-4-10-24-16.json
      2. {"code":0}

      第 2、3 步适用于在不同机器上迁移 emqx