Installing myhightman plugin in MySQL
-
You need a fresh linux machine without mysql installed. You could follow the instructions from
here -
Download myhightman.tar.gz which I already compiled.
myhightman.tar.gz
Extracting…
<br />
-rw-r--r-- 1 root root 377 Jan 12 17:00 bash_profile<br />
drwxr-xr-x 2 1001 wheel 4096 Sep 14 00:30 ft_hightman<br />
-rw-r--r-- 1 1001 wheel 4171 Sep 14 00:25 ft-hightman-M5-0.1.patch<br />
-rw-r--r-- 1 root root 17955 Jan 11 18:52 ft-hightman-M5-0.1.tgz<br />
-rw-r--r-- 1 root root 2051 Jan 12 17:00 install.sh<br />
-rw-r--r-- 1 root root 574 Jan 11 19:19 my.cnf<br />
drwx--x--x 2 root root 4096 Jan 11 19:37 mysql<br />
-rw-r--r-- 1 root root 22265695 Jan 11 18:52 mysql-5.1.11-hi1.tgz<br />
-rw-r--r-- 1 1001 wheel 3450 Sep 14 00:31 README.hightman_parser<br />
-rw-r--r-- 1 root root 0 Jan 11 18:52 stopwords-gbk.txt<br />
-rw-r--r-- 1 root root 3 Jan 11 18:52 stopwords-utf8.txt<br />
-rw-r--r-- 1 root root 1466369 Jan 11 18:52 wordlist-gbk.txt<br />
-rw-r--r-- 1 root root 1907299 Jan 11 18:52 wordlist-utf8.txt<br />
- install.sh:
#!/bin/sh mysql_install_dir="./mysql-5.1.11-hi1" mysql_base_dir="/usr/local/mysql" hightman_patch="./ft-hightman-M5-0.1.patch" stopword="stopwords-utf8.txt" wordlist="wordlist-utf8.txt" data_dir="/data/mysqldata" temp_dir="/data/temp_dir" echo "removing previous installation" rm -rf $mysql_install_dir echo "unpacking $mysql_install_dir" tar -zxvf $mysql_install_dir.tar.gz echo "copying ft_hightman to $mysql_install_dir/plugin" cp -Rf ft_hightman $mysql_install_dir/plugin/ echo "copying $hightman_patch to $mysql_install_dir" cp $hightman_patch $mysql_install_dir/ echo "patching please answer y to all..." cd $mysql_install_dir patch -p1 < $hightman_patch echo "patching again..." patch -p1 < $hightman_patch echo "processing......." echo "aclocal......." aclocal echo "automake......." automake echo "autoconf......." autoconf echo "configuring..." ./configure --prefix=$mysql_base_dir --with-charset=utf8 --with-extra-charsets=all --with-plugins=fthightman echo "make..." make echo "make install..." make install echo "copying wordlist and stoplist to $mysql_base_dir/share/mysql" cd .. cp -Rf $stopword $mysql_base_dir/share/mysql/ cp -Rf $wordlist $mysql_base_dir/share/mysql/ echo "making mysql datadir on $data_dir" rm -rf $data_dir rm -rf $temp_dir mkdir -p $data_dir mkdir -p $temp_dir echo "copying my.cnf default file to /etc" cp -Rf my.cnf /etc/my.cnf echo "copying custom mysql database to $data_dir" cp -Rf mysql $data_dir echo "changing ownership..." useradd mysql useradd -g mysql mysql chown -Rf mysql:mysql $data_dir chown -Rf mysql:mysql $temp_dir echo "linking myhightman.so..." ln -s /usr/local/mysql/lib/mysql/myhightman.so /usr/lib/myhightman.so echo "creating startup scripts..." cp -rf $mysql_base_dir/share/mysql/mysql.server /etc/init.d/mysql chmod +x /etc/init.d/mysql /sbin/chkconfig --add mysql /sbin/chkconfig --level 345 mysql on /etc/init.d/mysql start echo "YOU HAVE SUCCESSFULLY INSTALLED mysql5 with HIGHTMAN. please add this to your path..." echo "export PATH=$PATH:$mysql_base_dir/bin" |
-
CREATE FUNCTION segment RETURNS STRING SONAME ‘myhightman.so’;
-
SET NAMES ‘utf8′;