导入数据时的注意事项
在笔记 2 中,可能在执行导入时会报错,那是因为还需要将 mysql-connector-java-xxx.jar
放入 solr-xxx/server/lib
文件夹下;
自动增量更新
- 将
solr-dataimport-scheduler.jar
放入 solr-xxx/server/solr-webapp/webapp/WEB-INF/lib
文件夹下;
- 在 ``solr-xxx/server/solr-webapp/webapp/WEB-INF/web.xml` 中配置监听;
<listener><listener-class> org.apache.solr.handler.dataimport.scheduler.ApplicationListenerlistener-class>
listener>
- 在
solr-xxx/server/solr/
下新建文件夹 conf
&#xff0c;注意不是 solr-xxx/server/solr/weibo/
中的 conf
&#xff1b;
- 从
solr-data-importscheduler.jar
中提取出 dataimport.properties
放入上一步创建的 conf
文件夹中&#xff0c;并根据自己的需要进行修改&#xff1b;比如我的配置如下&#xff1b;
# dataimport.properties example
#
# From this example, copy everything bellow "dataimport scheduler properties" to your
# dataimport.properties file and then change params to fit your needs
#
# IMPORTANT:
# Regardless of whether you have single or multiple-core Solr,
# use dataimport.properties located in your solr.home/conf (NOT solr.home/core/conf)
# For more info and context see here:
# http://wiki.apache.org/solr/DataImportHandler#dataimport.properties_example#Tue Jul 21 12:10:50 CEST 2010
# metadataObject.last_index_time&#61;2010-09-20 11\:12\:47
# last_index_time&#61;2010-09-20 11\:12\:47#################################################
# #
# dataimport scheduler properties #
# #
################################################## to sync or not to sync
# 1 - active; anything else - inactive
syncEnabled&#61;1# which cores to schedule
# in a multi-core environment you can decide which cores you want syncronized
# leave empty or comment it out if using single-core deployment
syncCores&#61;weibo# solr server name or IP address
# [defaults to localhost if empty]
server&#61;localhost# solr server port
# [defaults to 80 if empty]
port&#61;8983# application name/context
# [defaults to current ServletContextListener&#39;s context (app) name]
webapp&#61;solr# URL params [mandatory]
# remainder of URL
params&#61;/dataimport?command&#61;delta-import&clean&#61;false&commit&#61;true# schedule interval
# number of minutes between two runs
# [defaults to 30 if empty]
# 自动增量更新时间间隔&#xff0c;单位为 min&#xff0c;默认为 30 min
interval&#61;5# 重做索引时间间隔&#xff0c;单位 min&#xff0c;默认 7200&#xff0c;即 5 天
reBuildIndexInterval &#61; 7200# 重做索引的参数
reBuildIndexParams&#61;/dataimport?command&#61;full-import&clean&#61;true&commit&#61;true# 重做索引时间间隔的开始时间
reBuildIndexBeginTime&#61;1:30:00
总结
到此&#xff0c;我们就可以实现数据库自动增量导入了&#xff1b;