Elasticsearch7.15.2 mysql8.0.26 logstash-input-jdbc 数据全量索引构建
生活随笔
收集整理的這篇文章主要介紹了
Elasticsearch7.15.2 mysql8.0.26 logstash-input-jdbc 数据全量索引构建
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
文章目錄
- 一、基礎軟件安裝
- 1. 安裝mysql
- 2. Elasticsearch7.15.2 安裝部署
- 3. kibana 安裝部署
- 4. logstash-input-jdbc 安裝部署
- 二、數(shù)據(jù)庫準備
- 2.1. 創(chuàng)建數(shù)據(jù)庫
- 2.2. 表結(jié)構(gòu)初始化
- 2.3. 數(shù)據(jù)初始化
- 三、logstash 配置mysql
- 3.1. 創(chuàng)建目錄
- 3.2. 上傳mysql驅(qū)動
- 3.3. 創(chuàng)建jdbc.conf
- 3.4. 創(chuàng)建jdbc.sql
- 3.5. 賦予權(quán)限
- 四、啟動中間件
- 4.1. 啟動mysql
- 4.2. 啟動es7
- 4.3. 啟動kibana
- 4.4. 點評搜索索引定義
- 4.5. 啟動logstash
- 4.6. 驗證索引
一、基礎軟件安裝
1. 安裝mysql
Mysql 8.0 安裝教程 Linux Centos7
2. Elasticsearch7.15.2 安裝部署
Elasticsearch7.15.2 安裝、部署(linux環(huán)境)
3. kibana 安裝部署
kibana 一分鐘下載、安裝、部署linux
4. logstash-input-jdbc 安裝部署
logstash-input-jdbc 下載安裝 linux
二、數(shù)據(jù)庫準備
2.1. 創(chuàng)建數(shù)據(jù)庫
創(chuàng)建dianpingdb數(shù)據(jù)庫
2.2. 表結(jié)構(gòu)初始化
表結(jié)構(gòu)sql
2.3. 數(shù)據(jù)初始化
數(shù)據(jù)初始化
三、logstash 配置mysql
3.1. 創(chuàng)建目錄
cd /app/logstash-7.15.2/bin mkdir mysql3.2. 上傳mysql驅(qū)動
將mysql驅(qū)動上傳到mysql目錄下面
3.3. 創(chuàng)建jdbc.conf
vim jdbc.conf添加內(nèi)容:
input {jdbc {# mysql 數(shù)據(jù)庫連接,dianpingdb為數(shù)據(jù)庫名稱jdbc_connection_string => "jdbc:mysql://localhost:3306/dianpingdb?useUnicode=true&characterEncoding=UTF8&autoReconnect=true"# 用戶名和密碼jdbc_user => "root"jdbc_password => "123456"# 驅(qū)動jdbc_driver_library => "/app/logstash-7.15.2/bin/mysql/mysql-connector-java-8.0.27.jar"# 驅(qū)動類名jdbc_driver_class => "com.mysql.cj.jdbc.Driver"jdbc_page_size => "50000"# 執(zhí)行的sql 文件路徑+名稱statement_filepath => "/app/logstash-7.15.2/bin/mysql/jdbc.sql"# 設置監(jiān)聽間隔 字段含義(由左至右)分、時、天、月、年 全部* 默認每分鐘實時更新schedule => "* * * * *"} }output {elasticsearch {# ES 的IP地址及端口hosts => ["localhost:9200"]# 索引名稱index => "shop"document_type => "_doc"# 自增ID 需要關聯(lián)數(shù)據(jù)庫中有一個id字段,對應索引的id號document_id => "%{id}"}stdout {# JSON格式輸出codec => json_lines} }3.4. 創(chuàng)建jdbc.sql
vim jdbc.conf添加內(nèi)容:
SELECT a.id,a.name,a.tags,CONCAT(a.latitude,',',a.longitude) AS location,a.remark_score,a.price_per_man,a.category_id,b.`name` as category_name,a.seller_id,c.remark_score as seller_remark_score,c.disabled_flag as seller_disabled_flag FROM shop a INNER JOIN category b on a.category_id =b.id INNER JOIN seller c on c.id = a.seller_id格式化后:
SELECTa.id,a.NAME,a.tags,CONCAT( a.latitude, ',', a.longitude ) AS location,a.remark_score,a.price_per_man,a.category_id,b.`name` AS category_name,a.seller_id,c.remark_score AS seller_remark_score,c.disabled_flag AS seller_disabled_flag FROMshop aINNER JOIN category b ON a.category_id = b.idINNER JOIN seller c ON c.id = a.seller_id3.5. 賦予權(quán)限
操作ELK均使用es用戶,在安裝es7是此用戶已經(jīng)創(chuàng)建,企業(yè)中不允許使用root和軟件限制root用戶操作;因此,這樣可以做到權(quán)限分明
chown es.es /app/logstash-7.15.2/ -R四、啟動中間件
4.1. 啟動mysql
linux7.x
systemctl start mysql systemctl status mysqllinux6.x
service mysql start service mysql status4.2. 啟動es7
su - es cd /app/elasticsearch-7.15.2/ bin/elasticsearch -d4.3. 啟動kibana
啟動方式任選一種
su - es cd /app/kibana-7.15.2-linux-x86_64/- 前臺啟動
- 后臺啟動
注意,由于kibana是前臺啟動因此,此命令窗口不能關閉
4.4. 點評搜索索引定義
4.5. 啟動logstash
su - es cd /app/logstash-7.15.2/bin ./logstash -f mysql/jdbc.conf控制臺日志:紅色部分是咱們的sql,藍色部分是同步的數(shù)據(jù)
4.6. 驗證索引
# 搜索shop文檔索引 GET /shop/_search總結(jié)
以上是生活随笔為你收集整理的Elasticsearch7.15.2 mysql8.0.26 logstash-input-jdbc 数据全量索引构建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 测试取色模板
- 下一篇: layui 单选项 点击显示与隐藏 很实