## es 7.8.1 系列 (将mysql数据库同步到es) 安装在win 10 上
准备工作:
安装
1.elasticsearch-7.8.1
2.elasticsearch-head-5.0.0 (可视化工具,方便查看es数据结构)
3.kibana-7.8.1-windows-x86_64(可是化工具,方便查看es数据结构,带图形)
4.logstash-7.8.1(同步mysql数据到es插件)mysql-connector-java-5.1.49.jar
启动
1.es启动:bin下的elasticsearch.bat,浏览器输入localhost:9200 响应了就启动成功了
2.es_head 启动:需要下载node.js 然后 npm i,npm run start 浏览器输入localhost:9100 响应了就启动成功了
3.kibana启动:先在config下找到kibana.yml文件添加上
server.port: 5601
elasticsearch.hosts: ["http://localhost:9200"]
kibana.index: ".kibana"
然后在bin下的kibana.bat,显示:"Server running at http://localhost:5601",就启动成功了
4.logstash启动:在bin下添加sync-conf文件夹,然后将mysql驱动放入,编写一个自己的业务sql文件,然后还要有一个sync.conf配置文件,在bin目录下执行 logstash.bat -f sync-conf/sync.conf 没有[ERROR]就是启动成功了
配置文件请参考:"https://www.elastic.co/guide/en/logstash/7.x/configuration.html","https://zhuanlan.zhihu.com/p/162903896"
mysql数据如下:
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
`update_time` timestamp(0) NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP(0),
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES (1, 'zhangsan', '2020-09-04 11:21:43');
INSERT INTO `user` VALUES (2, 'lisi', '2020-09-30 11:21:53');
SET FOREIGN_KEY_CHECKS = 1;
遇到的问题
[ERROR][logstash.agent ] Failed to execute action {:action=>LogStash::PipelineAction::Create/pipeline_id:main, :exception=>"LogStash::ConfigurationError", :message=>"Expected one of [ \\t\\r\\n], \"#\", \"input\", \"filter\", \"output\" at line 1, column 1 (byte 1)",
我将自己的配置文件改成utf-8后还是不行,卧槽。。。。我也是服了。然后看了一篇帖子说要改成utf-8 无 BOM 格式编码
然后竟然可以了。。。
帖子地址:"http://doc.primeton.com/pages/viewpage.action?pageId=22257515"
elasticsearch-head连接不上
在elasticsearch的安装目录下找到config文件夹,找到elasticsearch.yml文件,打开编辑它,加上如下这两行配置
http.cors.enabled: true
http.cors.allow-origin: "*"
启动成功后可以在 kibana里查看 dev toos 命令:GET /索引名称/_search
也可以在elasticsearch-head里查看:数据浏览找到对应的索引
这是我遇到的问题,软件地址不知道在哪里的可以私信我