将 mysql 数据导入 elasticsearch

mysql 数据导入 elasticsearch


我们此次用的导入方法是使用JDBC工具进行导入

全部为真实环境操作,数据也是真实的。

首先你要先安装了elasticsearch

安装elasticsearch方法

这个是2.4.3的版本的安装方法,之前用的是5.0.0版本的,但是JDBC支持不到5.0.0,然后我就将es降版本。就成功的导入了数据

首先要先进入你下载的下载目录,然后将工具下载下来

cd /var/zk
wget http://xbib.org/repository/org/xbib/elasticsearch/importer/elasticsearch-jdbc/2.3.4.1/elasticsearch-jdbc-2.3.4.1-dist.zip

此次用的JDBC版本为2.3.4.1,如果你想用其他版本,就要到github上找到和es的对应关系,看能不能支持。

然后解压zip包

unzip elasticsearch-jdbc-2.3.4.1-dist.zip

将解压出来的工具放到你平时放第三方工具的地方

mv elasticsearch-jdbc-2.3.4.1 /usr/

进入JDBC的bin目录下,然后创建一个.sh的文件

cd /usr/elasticsearch-2.3.4.1/bin
vi import.sh
然后将下面的内容粘贴进去,进行修改,就可以了

#!/bin/sh
JDBC_IMPORTER_HOME=/usr/elasticsearch-jdbc-2.3.4.1
bin=$JDBC_IMPORTER_HOME/bin
lib=$JDBC_IMPORTER_HOME/lib
echo '{
"type" : "jdbc",
"jdbc": {
"elasticsearch.autodiscover":true,
"url":"jdbc:mysql://10.1.3.11:3306/mysql数据库名", #10.1.3.11:3306是mysql所在的服务器地址以及mysql的端口号。
"user":"root", # mysql用户名
"password":"xxxxxxxx", # mysql密码
"sql":"select * from mysql表名",
"elasticsearch" : {
  "cluster" : "esjiqun",# es的集群名字
  "host" : "127.0.0.1",# 绑定的ip地址
  "port" : 9300  # 交换数据用的端口号,es默认为9300
},
"index" : "index",#你想放进哪个索引里,就写哪个
"type" : "user" #你要放进哪个type,es里没有这个type的话,自动创建,不可不填
}
}'| java \
  -cp "${lib}/*" \
  -Dlog4j.configurationFile=${bin}/log4j2.xml \
  org.xbib.tools.Runner \
  org.xbib.tools.JDBCImporter

写完之后,保存退出。

然后执行

sh ./import.sh

然后等程序执行完之后,就可以到es里查一下数据。看有 没有成功导入




  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值