Php 如何将mysql数据库自动索引到solr
我已经在EC2实例中安装了solr,运行良好。但现在我需要使用cronjob自动将mysql数据库索引到solr。我尝试了一些使用cron job的方法 这是我试过的东西Php 如何将mysql数据库自动索引到solr,php,mysql,solr,amazon-ec2,Php,Mysql,Solr,Amazon Ec2,我已经在EC2实例中安装了solr,运行良好。但现在我需要使用cronjob自动将mysql数据库索引到solr。我尝试了一些使用cron job的方法 这是我试过的东西 */2 * * * * cd /var/www/html/cronjob && /var/www/html/cronjob/update-solr.sh 但是这个命令在EC2实例中给出了pattern not found错误 这是我的solr配置 <dataConfig> <da
*/2 * * * * cd /var/www/html/cronjob && /var/www/html/cronjob/update-solr.sh
但是这个命令在EC2实例中给出了pattern not found错误
这是我的solr配置
<dataConfig>
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/testing" user="root" password="123"
batchSize="1" />
<document name="content">
<entity name="mainsearch"
query="select @curRow := @curRow + 1,a.* from ( select jb_title,Companyname,job_id from `jobs`
where jb_approve_status='1' AND
jobs.is_deleted = '0'
) as a JOIN (SELECT @curRow := 0) r;
">
<field column="@curRow := @curRow + 1" name="uniqueid" />
<field column="Companyname" name="COMPANY_NAME" />
<field column="jb_title" name="JOB_TITLE" />
<field column="job_id" name="id" />
</entity>
</document>
</dataConfig>
请检查我在选择实体mainsearch后手动单击执行按钮的屏幕截图。
因此,尝试使用stackoverflow中提供的其他解决方案,如下所示
0,30 * * * * /usr/bin/wget http://<solr_host>:8983/solr/<core_name>/dataimport?command=full-import
0,30****/usr/bin/wget http://:8983/solr//dataimport?命令=完全导入
上述解决方案没有索引mainsearch实体数据,因此如何使用cronjob索引entity=mainsearch数据。提前感谢。请记住,任何脚本的前缀都应该是
#/bin/bash
或类似工具提供解释器-当通过cron执行解释器时,它将没有用于解析的现有shell。如果从命令行手动执行,触发数据导入是否有效?我正在使用此命令#/bin/bash wgetProgram=wget urlCmd=''statusCmd=''outputDir=$wgetProgram-O$outputDir/check_status_update_index.txt${statusCmd}2>/dev/null status=fgrep idle$outputDir/check_status_update_index.txt
如果[${status}==idle]],那么$wgetProgram-O$outputDir/status_update_index.txt${urlCmd 2>/dev/null firember任何脚本都应该以为前缀/bin/bash
或类似工具提供解释器-当通过cron执行解释器时,它将没有用于解析的现有shell。如果从命令行手动执行,触发数据导入是否有效?我正在使用此命令#/bin/bash wgetProgram=wget urlCmd=''statusCmd=''outputDir=$wgetProgram-O$outputDir/check_status\u update_index.txt${statusCmd}2>/dev/null status=fgrep idle$outputDir/check_status\u update_index.txt
如果[${status}==idle]],那么$wgetProgram-O$outputDir/status\u update_index.txt${urlCmd 2>/dev/null-fi