|mnoGoSearch 3.4.1 reference manual: Full-featured search engine software|
|Prev||Chapter 7. mnoGoSearch word index formats||Next|
By Anton Zemlyanov
Note: This article is somewhat outdated as mentions an old Oracle version, but should be generally valid for newer versions as well.
In order to install mnoGoSearch with Oracle RDBMS support you must ensure the following requirements are met:
Oracle8 Server must be properly installed on any computer accessible from the site where mnoGoSearch is to be installed. See the documentation provided with your Oracle server.
Oracle client software and libraries must be installed on the site where you plan to install mnoGoSearch.
glibc 2.0 or glibc 2.1. Oracle 8.0.5.X libraries are built for glibc 2.0.
Linux Red Hat 6.1 (2.2.X + glibc 2.0)
Oracle Server may be run on any platform supporting TCP/IP connections. I see no difficulties to port mnoGoSearch Oracle driver to any commercial and freeware UNIX systems, any contribution is appreciated.
Oracle 8.0.5.X and Linux Red Hat 6.1
./configure --with-oracle8=oracle_home_dir make make install
If you have any troubles, try to put CC = i386-glibc20-linux-gcc in the src/Makefile, this is an old version of gcc compiler for glibc 2.0.
Check whether Oracle Server and Oracle Client work properly.
First, try if mnoGoSearch service is accessible
[oracle@ant oracle]$ tnsping mnoGoSearch 3 TNS Ping Utility for Linux: Version 188.8.131.52.0 - Production on 29-FEB-00 09:46:12 (c) Copyright 1997 Oracle Corporation. All rights reserved. Attempting to contact (ADDRESS=(PROTOCOL=TCP)(Host=ant.gpovz.ru)(Port=1521)) OK (10 msec) OK (0 msec) OK (10 msec)
Second, try to connect to Oracle Server with svrmgrl and check whether mnoGoSearch tables were created
[oracle@ant oracle]$ svrmgrl command='connect scott/tiger@mnoGoSearch' Oracle Server Manager Release 184.108.40.206.0 - Production (c) Copyright 1997, Oracle Corporation. All Rights Reserved. Oracle8 Release 220.127.116.11.0 - Production PL/SQL Release 18.104.22.168.0 - Production Connected. SVRMGR> SELECT table_name FROM user_tables; TABLE_NAME ------------------------------ BDICT CACHEDCOPY DICT LINKS QCACHE QINFO QTRACK REDIRECT SERVER SRVINFO URL URLINFO WRDSTAT 13 rows selected.
Check the library paths in /etc/ld.so.conf
[oracle@ant oracle]$ cat /etc/ld.so.conf /usr/X11R6/lib /usr/lib /usr/i486-linux-libc5/lib /usr/lib/qt-2.0.1/lib /usr/lib/qt-1.44/lib /oracle8/app/oracle/product/8.0.5/lib
This file should contain the line oracle_home_path/lib to ensure mnoGoSearch will be able to open libclntsh.so, the shared Oracle Client library
Make the symbolic link:
ln -s /oracle8/app/oracle/product/8.0.5/network/admin/tnsnames.ora /etc
Correct the indexer.conf file
You should specify
DBPass in order for mnoGoSearch to be able to connect to
Oracle Server. DBName is the service name, it should have the same
name that was written to tnsnames.ora file,
DBUSer and DBPass are the Oracle user and his password
correspondingly. You can run the indexer now.
Setting up search.cgi
Copy the file /usr/local/mnoGoSearch/bin/search.cgi to apache_root/cgi-bin/search.cgi. Then add two lines to apache's http.conf file:
SetEnv ORACLE_HOME /oracle8/app/oracle/product/8.0.5
Correct the search.htm to provide DBName, DBUser, DBPass information. search.cgi should work now.