首先下载tokyocabinet-1.4.46,我放到了,/home/liuxh下。
wget http://fallabs.com/tokyocabinet/tokyocabinet-1.4.46.tar.gz
执行下面的命令:
./configure
出错,发现时没有安装GCC(新做的系统)。
安装gcc
yum install gcc
再执行
./configure
错误信息:找不到zlib.h
原因:没有安装 zlib-devel
安装zlib-devel
yum install zlib-devel.i386
再执行
./configure
错误信息:找不到bzlib.h文件
原因:没有安装bzip2-devel.i386
安装bzip2-devel
yum install bzip2-devel.i386
再执行
./configure
成功,编译通过!
执行
make
make install
安装成功!
#================================================================
# Thanks for using Tokyo Cabinet.
#================================================================
同样安装Tokyo Tyrant.
wget http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz
#================================================================
# Thanks for using Tokyo Tyrant.
#================================================================
编写启动停止服务程序
启动的脚本 start_tokyo.sh
#!/bin/bash
# Tokyo 启动脚本
# 介绍及安装见 http://blog.s135.com/post/362/
# 判断必须传递两个参数
if [ "$#" != 2 ]; then
echo "用例: start_tokyo.sh 11260 film_film"
echo ""
exit 1
fi
# 第一个参数是端口
TT_PORT=$1
# 第二个是名字
TT_NAME=$2
# 测试端口是否被占用
TEST_PORT=`netstat -tln | grep $TT_PORT`
if [ -n "$TEST_PORT" ];then
echo "提供服务的端口 ["$TT_PORT"] 已被占用 !"
exit 1
fi
# Tokyo 程序的路径
TT_COMD="/usr/bin/ttserver"
# 数据存放的根路径,按自己的需求来改
TT_PATH="/usr/local/ttserver"
# 如果目录不存在,建立目录
TT_PATH=$TT_PATH"/"$TT_NAME"/"
if [ ! -d "$TT_PATH" ];then
mkdir -p $TT_PATH
fi
# 定义 LOG 存放路径
TT_LOG_PATH=$TT_PATH"ttserver.log"
# 定义 PID 存放路径
TT_PID_PATH=$TT_PATH"ttserver.pid"
# 定义 RST 存放路径
TT_RTS_PATH=$TT_PATH"ttserver.rts"
# 定义 TCH 存放路径
TT_TCH_PATH=$TT_PATH"ttserver.tch"
# 组织启动服务的完整命令
TT_COMD=$TT_COMD" -host 127.0.0.1 -port "$TT_PORT" -thnum 1024 -dmn "
TT_COMD=$TT_COMD" -pid "$TT_PID_PATH" -log "$TT_LOG_PATH" -le -ulog "$TT_PATH
TT_COMD=$TT_COMD" -ulim 1024m -sid 1 -rts "$TT_RTS_PATH" "$TT_TCH_PATH
TT_COMD=$TT_COMD"#bnum=100000#rcnum=100000#xmsize=512"
# 如果 PID 文件存在,可能服务已经在运行中,就退出,否则启动 Tokyo 服务
if [ -a "$TT_PID_PATH" ];then
echo "Error: PID 文件 ["$TT_PID_PATH"] 已存在 , 可能数据文件正在提供服务中"
exit 1
else
env - $TT_COMD
fi
>>>>>>>>>>>> 关闭的脚本 stop_tokyo.sh
#!/bin/bash
if [ "$#" != 1 ]; then
echo "Example: stop_tokyo.sh film_film"
echo ""
exit 1
fi
TT_NAME=$1
TT_PATH="/usr/local/ttserver/"$TT_NAME"/"
TT_PID_PATH=$TT_PATH"ttserver.pid"
if [ -a $TT_PID_PATH ]; then
kill -9 `cat $TT_PID_PATH`
rm -rf $TT_PID_PATH
echo "TTserver "$TT_NAME" stoped !"
else
echo "PID File Not Found !"
fi
-----------------------
启动ttserver,发现在远程机器上无法telnet,原来服务器的11211端口还没打开
修改/etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT
重启后生效
service iptables restart