提取码:mudk 解压,进入 bin 目录
输入一下命令启动:
logstash -e 'input { stdin { } } output { stdout {} }'
启动后,控制台输入字符,随后就有日志输出
stdin ,表示输入流,指从键盘输入 stdout ,表示输出流,指从显示器输出 命令行参数 : -e 执行 --config 或 -f 配置文件,后跟参数类型可以是一个字符串的配置或全路径文件名或全路径 路径( 如: /etc/logstash.d/ , logstash 会自动读取 /etc/logstash.d/ 目录下所有 *.conf 的文 本文件,然后在自己内存里拼接成一个完整的大配置文件再去执行) 2、MySQL数据导入Elasticsearch ( 1 )在 logstash-5.6.8 安装目录下创建文件夹 mysqletc (名称随意) (2)文件夹下创建mysql.conf (名称随意) mysql.conf 内容如下:
input { jdbc { # mysql jdbc connection string to our backup databse jdbc_connection_string => "jdbc:mysql://192.168.63.131:3306/tensquare_article?characterEncoding=UTF8" # the user we wish to excute our statement as jdbc_user => "root" jdbc_password => "root" # the path to our downloaded jdbc driver jdbc_driver_library => "D:logstash-5.6.8mysqletcmysql-connector-java-5.1.46.jar" # the name of the driver class for mysql jdbc_driver_class => "com.mysql.jdbc.Driver" jdbc_paging_enabled => "true" jdbc_page_size => "50" #以下对应着要执行的sql的绝对路径。 #statement_filepath => "" statement => "SELECt id,title,content,state from tb_article" #定时字段 各字段含义(由左至右)分、时、天、月、年,全部为*默认含义为每分钟都更新(测试结果,不同的话请留言指出) schedule => "* * * * *" #一分钟更新 } } output { elasticsearch { #ESIP地址与端口 hosts => "127.0.0.1:9200" #ES索引名称(自己定义的) index => "zhao588_article" #自增ID编号 document_id => "%{id}" document_type => "article" } stdout { #以JSON格式输出 codec => json_lines } }(3)将 mysql 驱动包 mysql-connector-java-5.1.46.jar 拷贝至 D:/logstash- 5.6.8/mysqletc/ 下 。 D:/logstash-5.6.8 是你的安装目录 链接:https://pan.baidu.com/s/1sDP_giwwye_8CvR3V5jLEQ
提取码:mhem (4)命令行下执行
logstash -f ../mysqletc/mysql.conf
一分钟后,MySQLElasticsearch同步到同步成功
再次刷新elasticsearch-head的数据显示,看是否也更新了数据。 已成功!!!
继下篇文章:分布式搜索引Elasticsearch 之Docker环境下安装(六)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)