有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java使用命令行配置启动solr服务器

我需要用命令行启动solr server来索引我的数据库。。但是数据库是可变的。。 我能够索引一些数据库:

我配置了一些数据库数据配置。xml文件,我使用该文件导入数据:

<dataSource type="JdbcDataSource" 
         name="dsDB"
         driver="com.mysql.jdbc.Driver"
         url="jdbc:mysql://localhost/testmm_3"
         user="xxxx"
         password="xxxx" /> 
<document>
    <entity name="entity1" dataSource="dsDB" query="select DocID as 'id', DocName  from table1 ;">
        <field column="id" name="id" />
        <field column="DocName" name="DocName" />
        <entity name="entity2" dataSource="dsDB"  query="select * from table2 where table1_DocID=${entity1.id}">
        </entity>           
    </entity>

我在模式中添加了相同的字段。xml文件

我用这个命令行启动solr服务器

/xxx/xx > java -jar -Dsolr.data.dir="ouputIndexedData_Folder\data" start.jar

现在我需要启动solr服务器,但需要连接到另一个数据库。。我是说这条线

<dataSource type="JdbcDataSource"
 ...
 url="jdbc:mysql://localhost/testmm_3"

我不需要手动修改这一行。 我该怎么做? 谢谢大家!


共 (2) 个答案

  1. # 1 楼答案

    要使用配置文件设置launch solr服务器,我使用以下命令

    >Xxx\Xxx\Solr\example>java  -Dsolr.allow.unsafe.resourceloading=true -jar start.jar -config="XXX\XXXX\db-data-config.xml"
    

    这个命令很有效

  2. # 2 楼答案

    您可以始终提供不同的-confdir作为命令行参数

    这意味着您有defaultdb-data-config.xml配置,运行时会读取该配置:

    java -jar -Dsolr.data.dir="ouputIndexedData_Folder\data" start.jar

    对于另一种情况,你可以这样做:

    java -jar -Dsolr.data.dir="ouputIndexedData_Folder\data" start.jar -configdir "path-to-alternative-config\db-datat-config.xml"

    建议您尝试一下,但是文档在配置Solr启动时非常好:solr-command-line-opts

    祝你好运:)