首页 > 解决方案 > 如何将数据从elasticsearch导入sql server数据库?

问题描述

我正在尝试将数据从elasticsearch导入到sql server数据库,我已经使用logstash将数据从sqlserver导入到elasticsearch,我颠倒了输入和输出,但它抛出了错误,如第二个屏幕所示:

在此处输入图像描述

在此处输入图像描述

标签: sql-serverelasticsearchlogstashkibana

解决方案


我已经成功完成了。您可以查看我的博客或配置。

博客: Logstash 输出到 SQL 数据库

好的。现在我们需要安装“logstash”输出 JDBC 插件。如果您没有插件,这非常重要。是的!您不需要“输入”插件,因为它是默认设置的。但是你需要输出 JDBC 插件。这真的很重要。

> bin\logstash-plugin.bat install logstash-output-jdbc

配置:

input
{
elasticsearch {
hosts => [“localhost:9200″]
index => “yourindex"
}
}
output {
jdbc{
driver_jar_path => “C:\MSSQLJDBC\sqljdbc_4.2\enu\jre8\sqljdbc42.jar"
connection_string => “jdbc:sqlserver://localhost:1433;databaseName=databasename;user=username;password=userpassword"
statement => [ “INSERT into DB.TMP.samsamt (w, test1, test2, kkk) VALUES(?,?,?,?)", “client_num", “consignee_name", “@timestamp","host" ]
}
}

手术

> bin\logstash.bat -f config\elk.conf

声明将是变换设计部分。您需要在语句中映射所需的列。

(w, test1, test2, kkk)

是结构化表格列的一部分。

“client_num", “consignee_name", “@timestamp","host"

是 Elasticsearch 中的映射列。


推荐阅读