e.preventDefault(); // Prevent form submission input.blur(); // remove focus input.value = ""; // optional: clear the input

How to install Solr on Ubuntu with MySQL Data Import?

Apache Solr is an open source enterprise Search platform built in Java. Solr is written in Java and runs as a standalone full-text search server within a Servlet container such as Tomcat. Solr uses the Lucene Java search library at its core for full-text indexing and searching. This article lists all the steps that you need to perform to install the Solr with Tomcat.

Note that we have used Tomcat but you can use any other Servlet container (Jetty?) as well.
Install JDK in your system. ( You can skip this step if already have JDK in your system)
Follow the commands below to install Sun JDK in your system. You can always use Open JDK from Ubuntu software center of you want but it is preferred to use Sun JDK.
for add-apt-repository command to work
sudo apt-get install python-software-properties

it stores repository in your sources.list file
sudo add-apt-repository ppa:webupd8team/java

for updating your software to latest versions
sudo apt-get update

for installing JDK into your system.
sudo apt-get install oracle-java7-installer

After installation you can check if it was successful using command java -version
Install Tomcat.
Use following commands for installing tomcat into your system.

sudo apt-get install tomcat6 tomcat6-admin

It would install tomcat into your system.

To check if it is installed in your system go to

http://<IP_ADDRESS>:8080

OR

http://localhost:8080

It would show It works!….

If not you probably need to set java home in tomcat goto /etc/default/tomcat6
using

vim /etc/default/tomcat6

and add this line that file :

JAVA_HOME=/usr/lib/jvm/java-7-oracle/

 

and restart tomcat server using: /etc/init.d/tomcat6 restart and check again if it is installed or not.

Install Apache Solr with tomcat
Use following commands installing Apache Solr with tomcat. Download Apache Solr by.
wget http://apache.techartifact.com/mirror/lucene/solr/3.6.2/apache-solr-3.6.2.tgz

Now extract files using and change directory.
tar xvfz apache-solr-3.6.2.tgz
cd apache-solr-3.6.2

Now copy solr.war file into webapps folder of tomcat and example application in Tomcat.
cp dist/apache-solr-3.6.2.war /var/lib/tomcat6/webapps/solr.war
cp -fr example/solr /var/lib/tomcat6/

Now change owner of Solr application to Tomcat6 using.
chown -R tomcat6:tomcat6 /var/lib/tomcat6/solr

Now restart tomcat server using,
/etc/init.d/tomcat6 restart

And you have successfully setup Solr using tomcat. You can check your installation by going to
http://localhost:8080/solr/admin/

OR
http://<IP_ADDRESS>/solr/admin/

Till now we have seen how to install and configure Apache Solr, Now it is time to import your MySQL database into Solr for searching and indexing.
Edit solrconfig.xml file
Change directory to solr in tomcat6 using and edit solrconfig.xml
cd /var/lib/tomcat6/solr
vim conf/solrconfig.xml

 

And add following lines after <config> tag
<requestHandler name=”/dataimport” class=”org.apache.solr.handler.dataimport.DataImportHandler”>
<lst name=”defaults”>
<str name=”config”>data-config.xml</str>
</lst>
</requestHandler>

 

Next below in <lib> tags change directory path for apache-solr-dataimporthandler library to dist/ folder in apache-solr-3.6.2 which you downloaded while installation of Apache Solr.
Create data-config.xml file
Create data-config.xml file in conf/ folder and add below code.
<dataConfig>
<dataSource type=”JdbcDataSource” driver=”com.mysql.jdbc.Driver” url=”jdbc:mysql://127.0.0.1/YOUR_DB_NAME” user=”root” password=”YOUR_DB_PASSWORD”/>
<document>
<entity name=”id” query=”select * from students” >
<field column=”id” name=”id” />
<field column=”fullname” name=”fullname” />
<field column=”first_name” name=”first_name” />
<field column=”last_name” name=”last_name” />
</entity>
</document>
</dataConfig>

 

Replace values appropriately with your database credentials and in fields section match column names in your columns in your table.
Edit schema.xml file
Edit schema.xml in conf/ folder and add below lines along with other field tags.
<field name=”id” type=”text_general” indexed=”true” stored=”true”/>
<field name=”fullname” type=”text_general” indexed=”true” stored=”true”/>
<field name=”first_name” type=”text_general” indexed=”true” stored=”true”/>
<field name=”last_name” type=”text_general” indexed=”true” stored=”true”/>
<dynamicField name=”*” type=”ignored” />

There might be a previous field tag with name as “id” which have required property then you can skip the “id” field tag
Copy Mysql Jdbc Driver into lib/ directory

Download Mysql Jdbc Driver from : http://dev.mysql.com/downloads/connector/j/5.0.html and after extracting copy .jar file in /var/lib/tomcat6/solr/lib if lib directory is not present just create it inside solr/.

And restart tomcat server using command
/etc/init.d/tomcat6 restart

 

Import database into Solr
To import the database you have to first reload configuration using.
http://localhost:8080/solr/dataimport?command=reload-config

Now you can import and index your database using
http://localhost:8080/solr/dataimport?command=full-import

If everything goes fine, you can play with the data and various search options at:
http://localhost:8080/solr/admin/

OR
http://<IP_ADDRESS>/solr/admin/

If you get any error then you can check tomcat logs using :
tail -n 500 /var/lib/tomcat/logs/catalina.TODAY’S_DATE.log

If that doesn’t help, please drop us a line here and we can help you out.

Related Posts

Latest Posts

  • All Posts
  • Generative AI
  • manufacturing
  • News
  • Portfolio
    •   Back
    • Android
    • iOS
    • Java
    • PHP
    • MEAN
    • Ruby
    • DotNet
    • IoT
    • Cloud
    • Testing
    • Roku
    • CMS
    • Python

India

Plot No. 11/2, Phase 3, Hinjewadi Rajiv Gandhi Infotech Park, Pune, India – 411057.
info@tudip.com
+91-96-8990-0537

United States

1999 S. Bascom Ave Suite 700, Campbell CA. 95008, USA.
info@tudip.com
+1-408-216-8162

Canada

64 Caracas Road North York, Toronto Ontario M2K 1B1, Canada.
info@tudip.com

Mexico

Calle Amado Nervo #785 Interior B Colonia Ladron De Guevara 44600 Guadalajara, Jalisco, Mexico.
info@tudip.com

Colombia

Cra. 9 # 113-53 Of. 1405 Bogotá D.C., Colombia.
info@tudip.com

UAE

Tudip Information Technologies L.L.C Office No 109, ABU HAIL BUILDING 13, Abu Hail, Dubai, UAE.
info@tudip.com

Nigeria

22 Kumasi Crescent, Wuse 2, Abuja, Nigeria.
info@tudip.com