主服务器不需要配置 replication就可以直接在core的data目录下生成数据的备份: 想要从服务器隔断时间就去查询主服务器是否更新数据进行备份,就需要配置从服务器的solrconfig.xml文件,添加replication的handler:
<!--备份-->
<requestHandler name="/replication" class="solr.ReplicationHandler" >
<lst name="slave">
<str name="masterUrl">http://192.168.10.165:8080/solr/jsonlocal</str>
<str name="pollInterval">00:00:20</str>
</lst>
</requestHandler>
masterUrl:主服务器的core地址pollInterval:轮训去查询数据备份的时间,这里是20秒
设置好从服务器的配置文件后,启动两个solr服务,直接在浏览器地址栏输入从服务器的执行地址:http://127.0.0.1:8080/solr/jsonlocal/replication?command=backup可以在从服务的core下生成主服务器的数据备份以及一些参数文件:在solr的admin页面也可以查到主服务器的数据:关于这一块的详细说明可以参照官方文档:https://cwiki.apache.org/confluence/display/solr/Index+Replication想要恢复数据直接把从服务器的index下面的数据文件复制回去就行了。