繁体   English   中英

solr 8.5.1 无法加载驱动程序:com.mysql.Z84BEFFD3A0D49636A58ZCE60C70

[英]solr 8.5.1 Could not load driver: com.mysql.jdbc.Driver

我知道这个问题已经被问过了,但无论如何都无法解决这个问题。 On solr 8.5.1, i try to setup mysql to solr and configured everything like that: add theses lines to my solrconfig.xml

     <lib dir="${solr.install.dir:../../../..}/contrib/dataimporthandler-extras/lib" regex=".*\.jar" />
     <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-\d.*\.jar" />

我的数据配置在这里:/var/solr/data/testcollection/conf 和 Solr 安装在这里:/opt/solr-8.5.1

当我启动导入时,没有任何错误,但只有:请求:0,获取:0,跳过:0,已处理:0(我的 sql 请求很好)。

日志告诉我这个:

           Full Import failed:java.lang.RuntimeException: java.lang.RuntimeException: org.apache.solr.handler.dataimport.DataImportHandlerException: Could not load driver: com.mysql.jdbc.Driver Processing Document # 1
at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:271)
at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:424)
at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:483)
at org.apache.solr.handler.dataimport.DataImporter.lambda$runAsync$0(DataImporter.java:466)
at java.lang.Thread.run(Thread.java:748)
      Caused by: java.lang.RuntimeException: 
     org.apache.solr.handler.dataimport.DataImportHandlerException: Could not load driver: 
    com.mysql.jdbc.Driver Processing Document # 1
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:417)
at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:330)
at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:233)
... 4 more
  Caused by: org.apache.solr.handler.dataimport.DataImportHandlerException: Could not load driver: com.mysql.jdbc.Driver Processing Document # 1
at org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:69)
at org.apache.solr.handler.dataimport.JdbcDataSource.createConnectionFactory(JdbcDataSource.java:159)
at org.apache.solr.handler.dataimport.JdbcDataSource.init(JdbcDataSource.java:80)
at org.apache.solr.handler.dataimport.DataImporter.getDataSourceInstance(DataImporter.java:397)
at org.apache.solr.handler.dataimport.ContextImpl.getDataSource(ContextImpl.java:100)
at org.apache.solr.handler.dataimport.SqlEntityProcessor.init(SqlEntityProcessor.java:53)
at org.apache.solr.handler.dataimport.EntityProcessorWrapper.init(EntityProcessorWrapper.java:77)
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:434)
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:415)
... 6 more
   Caused by: java.lang.ClassNotFoundException: Unable to load com.mysql.jdbc.Driver or org.apache.solr.handler.dataimport.com.mysql.jdbc.Driver
at org.apache.solr.handler.dataimport.DocBuilder.loadClass(DocBuilder.java:935)
at org.apache.solr.handler.dataimport.JdbcDataSource.createConnectionFactory(JdbcDataSource.java:157)
... 13 more
    Caused by: org.apache.solr.common.SolrException: Error loading class 'com.mysql.jdbc.Driver'
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:570)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:501)
at org.apache.solr.handler.dataimport.DocBuilder.loadClass(DocBuilder.java:926)
... 14 more
    Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
at java.net.FactoryURLClassLoader.loadClass(URLClassLoader.java:817)
at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.solr.core.SolrResourceLoader.findClass(SolrResourceLoader.java:554)
... 16 more

所以基本上我理解了这个问题,但不知道如何解决它,因为我通过更改目录尝试了几种解决方案。 有什么帮助吗? 谢谢

solr.install.dir中创建一个文件夹“lib”

下载 jdbc 驱动程序: https://dev.mysql.com/downloads/connector/j/

将 jar 文件放入 lib 文件夹中

将此添加到您的 solrconfig.xml

<lib dir="${solr.install.dir:../../../..}/lib" regex=".*\.jar" />

在文件 solrconfig.xml 中查看此配置

 <lib dir="${solr.install.dir:../../../..}/dist/" regex="mysql-connector-java-.*\.jar" />

According to "Caused by: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver", you need a jar of mysql-connector at the folder.

确保有这样的 jar 并重新启动您的 solr。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM