Linux上搭建Elasticsearch服务器并同步数据库

1.准备工作 

 

下载Elasticsearch版本号2.3.4 https://www.elastic.co/downloads/past-releases/elasticsearch-2-3-4 ,

下载同步数据库所需要的包  https://codeload.github.com/jprante/elasticsearch-jdbc/tar.gz/2.3.4.0 ,

下载ik中文分词 https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v1.9.4/elasticsearch-analysis-ik-1.9.4.zip

2.运行Elasticsearch

 

解压

tar vxf elasticsearch-2.3.4.tar

Elasticsearch已经准备就绪,执行以下命令可在前台启动:

./bin/elasticsearch

如果想在后台以守护进程模式运行,添加 -d  参数

./bin/elasticsearch -d

打开另一个终端进行测试:

curl -XGET "http://127.0.0.1:9200/?pretty"

你能看到以下返回信息:

{
   "name": "Nico Minoru",
   "cluster_name": "elasticsearch",
   "version": {
      "number": "2.3.4",
      "build_hash": "e455fd0c13dceca8dbbdbb1665d068ae55dabe3f",
      "build_timestamp": "2016-06-30T11:24:31Z",
      "build_snapshot": false,
      "lucene_version": "5.5.0"
   },
   "tagline": "You Know, for Search"
}

这说明你的ELasticsearch集群已经启动并且正常运行.

3.添加ik中文分词

在elasticsearch/plugins/下创建文件夹ik ,将elasticsearch-analysis-ik.zip 解压到下面

4.创建 索引mapping同步数据库

 

编写脚本.sh

 

#删除索引
curl -XDELETE ‘http://127.0.0.1:9200/gsdata‘

#创建Mapping
curl -XPUT "http://127.0.0.1:9200/gsdata" -d‘
{
      "mappings":{
        "egov_basc_jbxx":{
            "_all": {
                    "analyzer": "ik_max_word",
                    "search_analyzer": "ik_max_word",
                    "term_vector": "no",
                    "store": "false"
                },
          "dynamic":false,
          "properties": {
            "id":{
              "type":"string"
            },
            "entname":{
              "type":"string",
              "analyzer":"ik_smart"
            },
            "lerep":{
              "type":"string",
              "analyzer":"ik_max_word"
            },
            "poscope":{
              "type":"string",
              "analyzer":"ik_smart"
            },
            "econat":{
              "type":"string",
              "analyzer":"ik_smart"
            },
            "esdate":{
              "type":"date"
            },
             "regcap":{
              "type":"integer"
            },
            "state":{
              "type":"string"
            }
          }
        }
      }
    }‘

#同步数据
DIR=/home/search/elasticsearch-jdbc-2.3.4.0
bin=${DIR}/bin
lib=${DIR}/lib
JAVA_HOME=/home/search/jdk1.8.0_111

echo ‘
{
    "type" : "jdbc",
    "jdbc" : {
        "url" : "jdbc:oracle:thin:@//127.0.0.1:1521/ORCL",
        "user" : "intgdata",
        "password" : "intgdata",
        "sql" : "SELECT ID as  \"id\" , ENTNAME as \"entname\" , LEREP as \"lerep\", OPSCOPE as \"poscope\", ECONAT as \"econat\", ESTDATE as \"esdate\" ,REGCAP as \"regcap\" ,STATE as \"state\" FROM EGOV_BASC_JBXX ",
        "treat_binary_as_string" : true,
        "index" : "gsdata",
        "type": "egov_basc_jbxx",
        "elasticsearch" : {
            "cluster" : "elasticsearch",
            "host" : "127.0.0.1",
            "port" : 9300
        }
    }
}
‘ | ${JAVA_HOME}/bin/java \
    -cp "${lib}/*"     -Dlog4j.configurationFile=${bin}/log4j2.xml     org.xbib.tools.Runner     org.xbib.tools.JDBCImporter

备注:因为这个版本elasticsearch-jdbc必须要1.8以上的版本,所以可以指定jdk去运行

5.运行脚本.sh

 

6.查看数据是否录入

curl -XPOST ‘http://localhost:9200/_search‘
时间: 2024-11-08 01:14:55

Linux上搭建Elasticsearch服务器并同步数据库的相关文章

在Linux上搭建Samba服务器,用于与Windows之间的跨平台文件共享

Samba是著名的开源软件项目之一,它在Linux/UNIX系统中实现了微软的SMB/CIFS网络协议,使得跨平台的文件共享变得更加容易.在部署Windows.Linux/UNIX混合平台的企业环境时,选用Samba可以很好的解决在不同系统之间的文件互访问题. 今天,让我们尝试在Redhat上搭建smaba服务,并且通过Win7作为客户端去使用samba服务的不同功能. 部署Samba服务(匿名共享访问.本地用户访问.虚拟用户访问): )安装软件包: rpm -ivh /mnt/Packages

linux上搭建svn服务器

1.检查当前版本,没有的话用yum安装rpm -qa subversion 2.安装yum install subversion -y 2.建库mkdir -p /home/svn/projectsvnadmin create /home/svn/project 3 cd /home/svn/project/conf进行配置3.1 设置passwd文件配置用户和密码[users]username = password 3.2设置权限authz文件,这里设置为根目录的读写权限[/]username

Linux上部署web服务器并发布web项目

近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以及我对此做的一些总结和个人的一些见解,希望对跟我一样的新手们有些帮助,有误的地方还请大神们指出 ??!(以下操作都是在虚拟机中进行) 1.选用CentOS6 64位作为服务器系统. (原因:redhat要钱,而CentOS免费:CentOS相比于其它linux系统要成熟.稳定一点:CentOS7操作命令和目录结构发生了一些变化所以选用版本6) 2.

详解Linux 6&7上搭建DNS服务器

整个hteret大家庭中连接了数以亿计的服务器个人主机,其中大部分的网站,部件等服务器都使用了域名形式的地址,如www.google.com.mail 163.com 等.很显然这种地址形式要比使月01231317202103 7A 的户地址形式更加直观而且更容易被用户记住. DNS系统在网络中的 作用处是维护着一个地址数现连,其中记录了各种主机城名与户地址的技关系上内便光安户租序现供正向的地址解析服务正向解析根据域名查IP 地址即将指定的域名解析为相对应的P地址,域名的正向解 析是DNS服务器

Linux系统环境搭建SVN服务器环境详解

Linux系统环境搭建SVN服务器环境详解: 本篇文章主要介绍的内容是在Linux系统下如何搭建SVN服务器的,目的是为了很好的实现代码版本控制管理,具体如下所示介绍: 一.安装需要的软件包 #yum install subversion     ---安装SVN服务工具 #yum install httpdmod_dav_svn mod_perl    ---用于支持WEB方式管理SVN服务 #yum install wgetmake unzip perl*       ---必备的软件包 二

利用tinyproxy在Linux上搭建HTTP Proxy Server

之所以需要用到HTTP Proxy Server并不是为了要翻墙,而是为了让没有公网IP地址的内网主机通过有公网IP地址的外网主机访问Internet.举个例子,阿里云ECS在购买时可以不购买公网IP地址,但这种没有公网IP地址的ECS云主机(实例)是没有访问Internet的能力的,也就是说无法在这台实例上下载文件,这在部署应用如部署MySQL时可能遇到无法完成安装问题.解决的办法有两种,一种是在另一台具有公网访问能力的ECS实例上搭建VPN服务,另一种是在另一台具有公网访问能力的ECS实例上

Linux下搭建DHCP服务器

一.DHCP所需软件包dhcp-common-4.1.1-34.Pl.el6.centos.x86_64dhcp-4.1.1-34.pl.el6.centon.x86_64二.编辑主配置文件 vi/etc/dhcp/dhcpd.conf ddns-update-style interim; ignore client-updates; shared-network ifs {        option domain-name     "ifs.com";        option 

Linux(CentOS)搭建SVN服务器全攻略

虽然在windows上搭建SVN很简单,但是效能却不高,这当然是和linux相比了.然而在linux上搭建SVN却非常繁琐,所以今天这篇文章就来一步一步教您如何在Centos上搭建SVN 安装#yum install subversion 1)创建svn用户#groupadd svn#useradd -g sky user//是将user加入到sky組內切换用户#su svn以后代码库的创建维护等,都用这个帐户来操作. 2)创建版本库编辑.bash_profile 加上如下配置SVN_HOME=

Linux下搭建Apache服务器(完整版)

Linux下搭建Apache服务器(完整版) 什么是Apache? Apache Licence是著名的非盈利开源组织Apache采用的协议.该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件).需要满足的条件也和BSD类似 Apache主要特点 1.开放源代码.跨平台应用 2.支持多种网页编程语言 3.模块化设计 .运行稳定.良好的安全性 Apache软件版本 1.X  1.目前最高版本是1.3,运行稳定  2.向下兼容性较好,但缺乏一些较新