Redis 安装
Jacky
Linux
2021-11-25
13
在线安装
1,下载安装包并解压安装
wget http://download.redis.io/releases/redis-4.0.10.tar.gz
tar xzf redis-4.0.10.tar.gz
ln -s redis-4.0.10 redis
cd redis
make
cd src
mkdir /usr/redis
cp redis-server /usr/redis
cp redis-benchmark /usr/redis
cp redis-cli /usr/redis
cd ../
cp redis.conf /usr/redis
2,修改配置
vim /usr/redis/redis.conf
# 1,去掉bind设置外网可访问
# bind 127.0.0.1
# 2,requirepass 设置的密码
requirepass licai123
# 3,设置后台启动
daemonize yes
# 4,服务端口设置
port 6379
# 5,key过期监听
notify-keyspace-events Ex
3,启动服务
cd /usr/redis
./redis-server redis.conf
ps -ef|grep redis-server
出现下列信息就标识启动成功
root 83480 1 0 15:43 ? 00:00:00 ./redis-server *:6379
4, 客户端连接测试
auth licai123
set key value
get key
显示
“value”
5,做成服务
编写脚本
vim /usr/redis/redis-service.sh
APP_HOME="/usr/redis"
APP_NAME="redis-server"
echo "APP_HOME:$APP_HOME"
echo "APP_NAME:$APP_NAME"
start(){
cd $APP_HOME
"./$APP_NAME" redis.conf
echo "start successful"
}
stop(){
pid=`ps -ef | grep "$APP_NAME" | grep -v "grep" | awk '{print $2}'`
if [ "$pid" == "" ];then
echo -en "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b"
echo "stop successful"
else
echo -en "\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\b\bstopping $1"
kill $pid
sleep 1
val=`expr $1 + 1`
stop $val
fi
}
restart(){
echo "restarting"
stop 1
start
echo "restart successful"
}
status(){
pid=`ps -ef | grep "$APP_NAME" | grep -v "grep" | awk '{print $2}'`
if [ "$pid" == "" ];then
echo "$APP_NAME is stopped ..."
else
echo "$APP_NAME is running ..."
fi
}
case "$1" in
start)
start
;;
stop)
stop 1
;;
status)
status
;;
restart)
restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart}"
exit 1
esac
添加到服务
# 可以创建软连接(建议)
ln -s /usr/redis/redis-service.sh /etc/init.d/redis-service
# 直接移动或复制到目录
mv /usr/redis/redis-service.sh /etc/init.d/redis-service
cp /usr/redis/redis-service.sh /etc/init.d/redis-service
服务命令
service redis-service start
service redis-service restart
service redis-service stop
service redis-service status
5,常见问题
1,gcc没有安装
make[3]: gcc:命令未找到
缺少gcc,需要安装
yum -y install gcc automake autoconf libtool make
2,zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
make MALLOC=libc # 执行命令
3, 没有权限
chmod +x /etc/init.d/redis-service