logstash mysql eror_Logstash安装记录(报错com.mysql.jdbc.Driver not loaded的解决)
Logstash是es官方标配的ELK中的“L”,它们三者的关系是这样:“E”指elasticsearch,用来提供核心的搜索服务;“L”指logstash,用来实现源数据到es索引库的收集、转换、入库;“K”指Kibana,用来通过丰富的图表化界面展示数据。安装这个logstash真的是比较坑,尤其是对于没接触过的人来说,安装过程好多问题都莫名其妙。
1、服务器上我测试的es版本与logstash版本均是7.5。首先安装logstash,去官网下载对应版本的zip包,下载后解压到目录即可:
2、在bin目录下新建一个配置文件sql2es.conf(文件名自定,但是扩展名得是conf),用来指定要从哪个数据库同步数据到es索引库。具体配置可自行百度,需要注意的是红框里的。jdbc_driver_library配置的是logstash要使用的jdbc驱动,你访问mysql就去下载mysql的驱动jar包,访问sqlserver就去下载sqlserver的驱动jar包,下载完毕后这里配置成本地jar包的位置就好。我使用的是mysql-connector-java-8.0.18.jar,对应下面一行的jdbc_driver_class要配置成“com.mysql.cj.jdbc.Driver”,否则会出错。原来老版本配置的是com.mysql.jdbc.Driver,这里要特别注意。我测试的配置是从本地的mysql数据库中的t_owner表同步数据到es索引testdata下,文档类型为owner。
3、cmd进入到logstash的斌目录下,运行一下看看行不行:logstash -f sql2es.conf:-f表示按照指定的配置文件来运行。这么顺利吗?果然还是出错了:报错:com.mysql.jdbc.Driver not loaded. Are you sure you've included the correct jdbc driver in :jdbc_driver_library? 上网一查说是本地logstash-input-jdbc没有安装好,但是要安装这个东东,需要去更新ruby的某些文件,因为logstash使用ruby语言写的。
4、修改logstash根目录下的Gemfile文件,把source改成“https://gems.ruby-china.com/”。这个东东是用来指定ruby源的,国内的源下载安装速度比较快。
5、运行logstash-plugin install logstash-input-jdbc。应该会提示安装成功。再运行一下logstash -f sql2es.conf看看行不行,然并卵,问题依旧。继续上网各种搜各种试,终于发现一篇帖子:https://www.jianshu.com/p/0e893f29ee05,有提到是这个版本有bug,需要升级(心中顿时万马奔腾...)。我本地的默认版本是4.3.16,不好使。
6、去github下载最新版(当前最新版本是4.3.19)zip包,下载后解压并在本地编译生成gem文件并安装。
运行gem build logstash-input-jdbc.gemspec,生成.gem文件:
运行logstash-plugin.bat install logstash-input-jdbc-4.3.19.gem,在本地安装最新版本:
7、再试试,运行logstash -f sql2es.conf。终于不报错了,但是报mysql的timezone时区错误。这个好办,去mysql里设置一下默认时区:
8、再次尝试,成功了!它终于开始干活了。满屏的数据滚动起来罗。
注意,如果本地没有安装ruby的话,前面步骤中的gem命令运行不起来。去官网下载一个最新版安装就好(可能需要重启服务器):https://rubyinstaller.org/downloads/
logstash mysql eror_Logstash安装记录(报错com.mysql.jdbc.Driver not loaded的解决)相关推荐
- LogStash 7.x com.mysql.cj.jdbc.Driver not loaded的解决方法
LogStash 7.x com.mysql.cj.jdbc.Driver not loaded的解决方法 环境 异常 解决方法 问题修复地址 环境 logstash-7.4.2, JDK 1.8: ...
- mysql server安装报错_安装VtigerCRM报错:MySQL Server should be configured with
安装报错提示如下: MySQL Server should be configured with: sql_mode = ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREA ...
- MySQL添加中文记录报错解决方法
insert into user values (null,'张三','123',23,'1993-09-01'); 直接向数据库中插入中文记录会出现错误!!! 解决方法: show variable ...
- python pymysql emoji表情插入mysql数据库异常记录报错 pymysql.err.InternalError
在数据库存储微信小程序用户昵称时候,发现用户昵称使用emoji表情时候就存不了数据库中间报错 pymysql.err.InternalError: (1366, "Incorrect str ...
- linux中mysql的安装及报错解决
本文介绍下Centos7中mysql的安装(Centos7以下版本中有些命令和centos7中有些不同,安时需注意下自己的linux版本) 1.下载并安装yum repository [root@s2 ...
- mysql table plugin_MySQL 启动报错Table 'mysql.plugin' doesn't exis(转载)
安装完成后,按照网上说启动mysql时却报了以下错误: [root@localhost bin]# ./mysqld 2015-10-23 16:54:55 0 [Warning] TIMESTAMP ...
- tomcat 启动报错 registered the JDBC driver [com.mysql.jdbc.Driver] but failed to unregister
在帮朋友改bug时出现下面错误: org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesJdbc The web applic ...
- Kali安装fluxion报错:Aborted, xterm test session failed的解决办法
说说我自己对出现这个问题的看法: 通过多次的尝试 发现 1.由于我的网络问题 我是用的校园网 不太稳定 (建议安装的时候使用流量+热点) 2.安装过程中自行终止(自己按了ctr+c)(所以安装过程 ...
- mysql安装开始报错_MYSQL安装报错 -- 出现Failed to find valid data directory.
运行环境:windows10 数据库版本:mysql.8.0.12 安装方式:rpm包直接安装 问题描述: mysql初始化的时候找不到对应的数据库存储目录 报错代码: 2018-10-13T03:2 ...
最新文章
- SpringBoot conditional注解和自定义conditional注解使用
- jmeter获取时间_time 函数
- 树莓派:和电脑之间的串口编程,以及树莓派的备份
- 理解Java NIO
- 冒泡排序,swich语句,while循环...基础性的一道综合题初学者可以做一个简单的测试...
- 【面试】Java面试常见问题汇总(不含答案)、面试指导学习笔记
- 正确使用cookie中的domain
- 站点CSS样式不起作用,或仅仅有一部分起作用?随手记
- 硬件——nrf51822第二篇,如何设置keil用来下载程序
- java split 正则_java split方法的实现 正则匹配
- Uber开源深度概率编程语言Pyro,AI实验室蛰伏一年首现身
- Educational Codeforces Round 52E(构造,快速幂)
- 《现代体系结构上的UNIX系统:内核程序员的对称多处理和缓存技术(修订版)》——2.3 直接映射高速缓存...
- Android滑动返回上一级界面
- 基于微信小程序的比赛报名系统
- python实现word文档合并
- Unity实现人物移动和镜头跟随
- kill命令详解kill -9、kill -15区别
- postman 搭建mock-server
- unity学习笔记-特效篇