开发者社区> 问答> 正文

第一次全量同步到es应该怎么做

第一次全量同步到es应该怎么做

原提问者GitHub用户jianyun

展开
收起
古拉古拉 2023-05-08 14:17:14 70 0
2 条回答
写回答
取消 提交回答
  • curl http://127.0.0.1:8081/etl/es/mytest_person2.yml -X POST

    wiki上面说了的。

    原回答者GitHub用户JunRzz

    2023-05-09 17:55:25
    赞同 展开评论 打赏
  • 第一次全量同步到Elasticsearch可以按照以下步骤进行:

    1. 确认你已经安装并配置好了Canal和Elasticsearch,并且Canal已经正确订阅了MySQL的binlog。

    2. 在Canal的配置文件中设置 canal.instance.tsdb.enable=truecanal.instance.tsdb.spring.xml=classpath:spring/tsdb/h2-tsdb.xml,这将启用Canal的时间序列数据库(TSDB)并将其配置为使用H2数据库。

    3. 启动Canal,并等待Canal从MySQL中读取所有数据。

    4. 停止Canal,并将H2数据库的数据导出到Elasticsearch。你可以使用Canal提供的 binlog4j-tools 工具来完成这个任务。具体的命令如下:

      java -jar binlog4j-tools.jar export-es -c canal.properties -d /tmp/es-data -s 1 -e 0 -t 0
      

      这个命令会将H2数据库中的所有数据导出到Elasticsearch中。

    5. 启动Canal,并让它正常运行。Canal会继续从MySQL中读取binlog,并将数据同步到Elasticsearch中。

    2023-05-08 16:01:52
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载