elasticsearch mysql数据同步

来源:互联网 发布:json格式错误怎么办 编辑:程序博客网 时间:2024/05/22 05:02

elasticsearch安装完之后就该考虑与mysql数据同步了,此处采用elasticsearch-jdbc插件

1、环境

centos+elasticsearch-2.3.3 +elasticsearch-jdbc-2.3.3.0

2、下载地址

jdbc github下载地址
https://github.com/jprante/elasticsearch-jdbc
注:注意版本要对应

3、centos安装

上传到centos服务器上(先用maven进行编译打包)
①解压

unzip elasticsearch-jdbc-2.3.3.0-dist.zip
②配置环境变量

vi /etc/profile

这里写图片描述

四、脚本编写

#!/bin/shbin=/es/elasticsearch-jdbc-2.3.3.0/binlib=/es/elasticsearch-jdbc-2.3.3.0/libpage=$1             #此处采用分页page1=$[$1-1]  page2=$[page1*10000]pageSize=10000          #每页条数echo '{"type" : "jdbc","jdbc": {"elasticsearch.autodiscover":true,"elasticsearch.cluster":"my-application",#elasticsearch集群名字"url":"jdbc:mysql://192.168.*.*:3306/test",#数据库地址"user":"test", #数据库用户名"password":"test",#数据库密码"sql":"select *,gifId as _id from tb_gif_info limit '$page2',10000",  #把主键重命名为_id,elasticsearch以_id为主键,若没有,则elasticsearch自动生成"elasticsearch" : {  "host" : "*.*.*.*",#elasticsearch服务器地址  "port" : 9300      #默认端口号},"index" : "index_name",#等同与数据库名"type" : "type_name"   #等同于数据表,}}'| "/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.111-0.b15.el6_8.x86_64/bin/java" \#jdk路径  -cp "${lib}/*" \  -Dlog4j.configurationFile=${bin}/log4j2.xml \  org.xbib.tools.Runner \  org.xbib.tools.JDBCImporter

注elasticsearch-jdbc以JDK1.8为准
給import_info.sh副执行权限
chmod a+x import_info.sh

五、python
pythonfor循环分页插入数据

import os
a = 0
for i in range(2,200):
a += (i+1);
os.system(‘./import_info.sh ’ +str(i))
print a

0 0
原创粉丝点击