MySQL数据以全量和增量方式,同步到ES搜索引擎
发表于:2024-11-12 作者:千家信息网编辑
千家信息网最后更新 2024年11月12日,本文源码:GitHub·点这里 || GitEE·点这里一、配置详解场景描述:MySQL数据表以全量和增量的方式向ElasticSearch搜索引擎同步。1、下载内容elasticsearch 版本
千家信息网最后更新 2024年11月12日MySQL数据以全量和增量方式,同步到ES搜索引擎
本文源码:GitHub·点这里 || GitEE·点这里
一、配置详解
场景描述:MySQL数据表以全量和增量的方式向ElasticSearch搜索引擎同步。
1、下载内容
- elasticsearch 版本 6.3.2
- logstash 版本 6.3.2
- mysql-connector-java-5.1.13.jar
2、核心配置
- 路径:/usr/local/logstash
- 新建配置目录:sync-config
1)、配置全文
/usr/local/logstash/sync-config/cicadaes.conf
input { stdin {} jdbc { jdbc_connection_string => "jdbc:mysql://127.0.0.1:3306/cicada?characterEncoding=utf8" jdbc_user => "root" jdbc_password => "root123" jdbc_driver_library => "/usr/local/logstash/sync-config/mysql-connector-java-5.1.13.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_paging_enabled => "true" jdbc_page_size => "50000" jdbc_default_timezone => "Asia/Shanghai" statement_filepath => "/usr/local/logstash/sync-config/user_sql.sql" schedule => "* * * * *" type => "User" lowercase_column_names => false record_last_run => true use_column_value => true tracking_column => "updateTime" tracking_column_type => "timestamp" last_run_metadata_path => "/usr/local/logstash/sync-config/user_last_time" clean_run => false } jdbc { jdbc_connection_string => "jdbc:mysql://127.0.0.1:3306/cicada?characterEncoding=utf8" jdbc_user => "root" jdbc_password => "root123" jdbc_driver_library => "/usr/local/logstash/sync-config/mysql-connector-java-5.1.13.jar" jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_paging_enabled => "true" jdbc_page_size => "50000" jdbc_default_timezone => "Asia/Shanghai" statement_filepath => "/usr/local/logstash/sync-config/log_sql.sql" schedule => "* * * * *" type => "Log" lowercase_column_names => false record_last_run => true use_column_value => true tracking_column => "updateTime" tracking_column_type => "timestamp" last_run_metadata_path => "/usr/local/logstash/sync-config/log_last_time" clean_run => false }}filter { json { source => "message" remove_field => ["message"] }}output { if [type] == "User" { elasticsearch { hosts => ["127.0.0.1:9200"] index => "cicada_user_search" document_type => "user_search_index" } } if [type] == "Log" { elasticsearch { hosts => ["127.0.0.1:9200"] index => "cicada_log_search" document_type => "log_search_index" } }}
2)、SQL文件
- user_sql.sql
SELECTid,user_name userName,user_phone userPhone,create_time createTime,update_time updateTimeFROM c_userWHERE update_time > : sql_last_value
- log_sql.sql
SELECTid,param_value paramValue,request_ip requestIp,create_time createTime,update_time updateTimeFROM c_logWHERE update_time > : sql_last_value
3)、配置参数说明
input参数
statement_filepath:读取SQL语句位置schedule :这里配置每分钟执行一次type :类型,写入ES的标识lowercase_column_names :字段是否转小写record_last_run :记录上次执行时间use_column_value :使用列的值tracking_column :根据写入ES的updateTime字段区分增量数据tracking_column_type :区分的字段类型
- output参数
hosts :ES服务地址index :Index名称,类比理解数据库名称document_type :Type名称,类比理解表名称
3、启动进程
/usr/local/logstash/bin/logstash -f /usr/local/logstash/sync-config/cicadaes.conf
二、ES客户端工具
1、下载软件
kibana-6.3.2-windows-x86_64
2、修改配置
kibana-6.3.2-windows-x86_64\config\kibana.yml
添加配置:
elasticsearch.url: "http://127.0.0.1:9200"
3、双击启动
kibana-6.3.2-windows-x86_64\bin\kibana.bat
4、访问地址
http://localhost:5601
三、源代码地址
GitHub·地址https://github.com/cicadasmile/linux-system-baseGitEE·地址https://gitee.com/cicadasmile/linux-system-base
配置
地址
名称
数据
参数
字段
增量
版本
类型
引擎
搜索引擎
方式
同步
搜索
下载软件
位置
全文
内容
场景
客户
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全大赛简称
分布式微服务器推荐
图软件开发面试试题
软件开发属于商业还是服务业
电影预订系统的数据库该怎么建
公交系统查询数据库怎么做
互联网科技创新的股票
上海精益管理软件开发
电力监控系统网络安全 靶场
数据库创建一个学生表图片步骤
美国apt网络安全
探索者网络技术工作室
支持安卓的数据库软件
天域信息网络技术有限公司
没文化学软件开发
找到移动数据库
我的世界服务器做mod
易语言插入mysql数据库
专科学网络技术与新媒体前景好吗
软件开发前端第三年工资
广西定制服务器机箱制造厂
国三网络技术好过吗
大学生软件开发项目报告书
永宁县办公软件开发好不好
诛仙前传天界服务器
oppo手机端云服务器
从哪些方面处理网络安全
如皋软件开发平均工资
招商网络安全系统
网络安全有什么见解