|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!起首必要增加mysql用户组和mysql用户
groupaddmysql
useradd-gmysqlmysql
passwd-umysql
1.装置必要的软件包
yuminstallgccgcc-c++libtoolautoconfautomakeimakelibxml2-develexpat-devel
yuminstallncurses-develmake
yuminstallmake
yuminstallcmakebison
2.下载mysql源码包后解压到指定目次
mkdir/data/
cd/data/#把装置包放进到这个文件夹
tar-zxvfmysql-5.5.17.tar.gz
3.进进解压后的源码包
cdmysql-5.5.17
4.cmake举行编译(起首要创立数据文件夹和装置文件夹,假如路径不存在)
cmake.
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/var/tmp/mysql/
-DMYSQL_UNIX_ADDR=/var/tmp/mysql/mysqld.sock
-DDEFAULT_CHARSET=utf8
-DEXTRA_CHARSETS=all
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_SPHINX_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DENABLED_LOCAL_INFILE=1
-DMYSQL_USER=mysql
5.make
6.makeinstall
7.设置文件
cpsupport-files/my-medium.cnf/etc/my.cnf
cpsupport-files/mysql.server/etc/init.d/mysqld
chmod755/etc/init.d/mysqld
8.初始化数据库
假如呈现这个毛病[ERROR]Fatalerror:Cantopenandlockprivilegetables:Tablemysql.hostdoesntexist
是由于没有指定命据文件地位.
./scripts/mysql_install_db--user=mysql--basedir=/usr/local/mysql/--datadir=/var/tmp/mysql/&
9.受权
chown-Rmysql:mysql/usr/local/mysql/
chown-Rmysql:mysql/var/tmp/mysql/
10.启动数据库
servicemysqldstart
11.设置到情况变量
vi/etc/profile
exportPATH="$PATH:/usr/local/mysql/bin"
/usr/local/mysql/bin/mysqladmin-urootpasswordnew-password
/usr/local/mysql/bin/mysqladmin-uroot-hnamenodepasswordnew-password
12.mysql到此基础告一段落,感谢人人
1.
解压sphinx源码包:
$tarxzvfsphinx-0.9.9.tar.gz
$cdsphinx
2.
运转configure设置步伐:
$./configure[options]
有一些参数能够在设置的时分指定,次要以下:
*–prefix,指定sphinx装置到体系的谁人地位;比方–prefix=/usr/local/sphinx
*–with-mysql,mysql的装置目次,指定假如主动侦察mysql的相干库文件失利后到哪一个目次查找
*–with-pgsql,同上,只是用于pgsql的
完全的设置下令以下:./configure--prefix=/usr/local/sphinx-with-mysql=/usr/local/mysql
3.编译:
$make
在这个步调,大概碰到一个成绩,就是报sphinxundefinedreferenceto‘libiconv’的毛病,办理举措是修正/src/MakeFile(注意是src下的Makefile不是csft下的Makefile),编纂LIBS=-lm-lexpat前面增加-liconv,行将该行该为:
LIBS=-lm-lexpat-liconv-L/usr/local/lib
4.装置
$makeinstall
假如编译中没有发生毛病,这个步调应当不会碰到成绩。假如完成后未准确装置,就要归去找make过程当中碰到的毛病了。
5.运转测试
$cd/usr/local/sphinx/etc
$cpsphinx.conf.distsphinx.conf
$visphinx.conf
这里,sphinx供应了一个复杂的例子,基础步调是先将/sphinx/etc上面的sphinx.conf.dist重定名为sphinx.conf,然后修正sphinx.conf个中的设置,次要是修正你办事器下面的mysql的用户名、暗码、利用的数据库等。修正的地位是sphinx.conf的sourcesrc1上面几行。
$mysql-utest</usr/local/sphinx/etc/example.sql
这里是导进sphinx筹办的测试数据,我们把数据导进到mysql的test数据库中。固然,这里的数据库要和你下面的设置文件(sphinx.conf)中指定的sql_db值不异。注重,运转这个下令的话,假如你的mysql下令没有到场到情况变量中,就必要用完全路径,同时大概必要输出暗码。好比你的mysql装置在/usr/local/mysql目次中,root账户的暗码是******,那末下令应当调剂为:
$/usr/local/mysql/bin/mysql-uroot-p******test</usr/local/sphinx/etc/example.sql
$cd/usr/local/sphinx/etc
$/usr/local/sphinx/bin/indexer--all
毛病:
/usr/local/sphinx/bin/indexer:errorwhileloadingsharedlibraries:libmysqlclient.so.18:cannotopensharedobjectfile:Nosuchfileordirectory
echo"/usr/local/mysql/lib/">>/etc/ld.so.conf
ldconfig
这个下令是创建索引,固然数据基本是方才导进的example.sql的数据,假如这里堕落,最年夜的多是你的sphinx.conf中的数据库设置错了,你必要归去反省并修改。可是,另有大概呈现sphinx必需的库文件没法找到,比方呈现以下两种毛病:
/usr/local/sphinx/bin/indexer:errorwhileloadingsharedlibraries:libmysqlclient.so.15:cannotopensharedobjectfile:Nosuchfileordirectory
/usr/local/sphinx/bin/indexer:errorwhileloadingsharedlibraries:libiconv.so.2:cannotopensharedobjectfile:Nosuchfileordirectory
这次要是由于你装置了一些库后,没有可以设置响应的情况变量。你能够经由过程创建毗连的体例修改这个成绩,运转以下下令:
ln-s/usr/local/mysql/lib/libmysqlclient.so.15/usr/lib/libmysqlclient.so.15
ln-s/usr/local/lib/libiconv.so.2/usr/lib/libiconv.so.2
这里我假定你响应的软件包装置在/usr/local/***目次下,假如你不是装置在响应目次下,你就必要利用你本人的路径。假如你没有装置libiconv软件包,则必要装置下,这个装置对照复杂,就未几说了。
假如还呈现相似毛病,照下面的***修改。
$cd/usr/local/sphinx/etc
$/usr/local/sphinx/bin/searchtest
下面的下令是搜刮测试,测试的关头词就是test了,假如乐成的话,你应当看到搜到的了局,呈现字串“index‘test1′:query‘test‘:returned3matchesof3totalin0.000sec”,前面跟的是了局暗示乐成了。
$cd/usr/local/sphinx/etc
$/usr/local/sphinx/bin/searchd
运转下面的下令,你就启动了sphinx历程了,假如没甚么毛病,能够经由过程ps-aux|grep‘3312′找到sphinx历程了。哈哈,半途而废!
欢迎大家来到仓酷云论坛! |
|