您现在的位置是: Home> 学无止境> Linux> Linux

Linux下安装redis

张伟江2019-01-11 20:22Linux238人已围观

简介Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

1、下载安装包并进行解压

①进入根目录,下载安装包

cd /root/
wget http://download.redis.io/releases/redis-4.0.0.tar.gz

②解压安装包并删除安装包压缩文件(可自行选择是否删除安装包压缩文件)

tar xzf redis-4.0.0.tar.gz
rm -rf redis-4.0.0.tar.gz

中文网址:http://nodejs.cn/download/

通过官网链接下载nodejs版本,这边以稳定版10.14.2为例,下载地址:https://nodejs.org/dist/v10.14.2/node-

v10.14.2-linux-x64.tar.xz下载安装包。

2、编译安装

①编译并对编译结果进行测试

make && make test

注意:如果出现you need to tcl 8.5 newr in order to run the Redis test则说明没有安装tcl,通过yum install tcl命令安装
② 判读是否已创建/alidata/server文件夹,没有则创建文件夹,可自行选择安装位置

[[ -d /alidata/server ]] ||  mkdir -p /alidata/server

③PREFIX指定安装目录

cd redis-4.0.0/src
make PREFIX=/alidata/server/redis-4.0.0 install
④复制redis.conf到/alidata/server/redis-4.0.0目录下
cp /root/redis-4.0.0/redis.conf /alidata/server/redis-4.0.0
Bash

3、建立软链接并设置全局变量

①建立软连接

ln -s /alidata/server/redis-4.0.0 /alidata/server/redis

②下载redis启动脚本并上传到/etc/init.d目录下(类似windows的注册表,在系统启动时候执行),给予可执行权限
下载redis启动脚本:https://pan.baidu.com/s/1PR0XUXrSJAo7MBzbQw5tEg,上传到/etc/init.d目录下

③设置redis可执行权限

chmod a+x /etc/init.d/redis

4、设置redis守护进程方式运行 并启动redis 服务

①修改redis.conf里的daemonize no为yes

echo "daemonize yes" >> /alidata/server/redis-4.0.0/redis.conf

②启动redis

service redis start

②客户端连接redis

/alidata/server/redis/bin/redis-cli

5、将redis服务加入开机启动

下面是完整的shell脚本

#!/bin/bash
# linux安装redis-4.0.0
# ctocode-zwj <982215226@qq.com>
# 2019-01-10 21:00

# 进入根目录
cd /root/
# 下载安装包
wget http://download.redis.io/releases/redis-4.0.0.tar.gz
# 解压安装包
tar xzf redis-4.0.0.tar.gz
# 删除压缩包
rm -rf redis-4.0.0.tar.gz
# 进入安装目录
cd redis-4.0.0/src
# 编译安装(PREFIX指定设置安装目录)
make && make PREFIX=/alidata/server/redis-4.0.0 install
# 删除安装包
rm -rf /root/redis-4.0.0
# 建立软连接
ln -s /alidata/server/redis-4.0.0 /alidata/server/redis
# daemonize no 改为   yes   #以守护进程方式运行  
echo "daemonize yes" >> /alidata/server/redis-4.0.0/redis.conf
cat > /etc/init.d/redis<<"EOF"
#!/bin/sh
# chkconfig: 2345 56 26
# description: Redis Service

### BEGIN INIT INFO
# Provides:          Redis
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts Redis
# Description:       starts the BT-Web
### END INIT INFO

# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

CONF="/alidata/server/redis/redis.conf"
REDISPORT=$(cat $CONF |grep port|grep -v '#'|awk '{print $2}')
REDISPASS=$(cat $CONF |grep requirepass|grep -v '#'|awk '{print $2}')
if [ "$REDISPASS" != "" ];then
	REDISPASS=" -a $REDISPASS"
fi
if [ -f /www/server/redis/start.pl ];then
	STARPORT=$(cat /alidata/server/redis/start.pl)
else
	STARPORT=6379
fi
EXEC=/alidata/server/redis/bin/redis-server
CLIEXEC="/alidata/server/redis/bin/redis-cli -p $STARPORT$REDISPASS"
PIDFILE=/var/run/redis_6379.pid

redis_start(){
	if [ -f $PIDFILE ]
	then
			echo "$PIDFILE exists, process is already running or crashed"
	else
			echo "Starting Redis server..."
			nohup $EXEC $CONF >> /alidata/server/redis/logs.pl 2>&1 &
			echo ${REDISPORT} > /alidata/server/redis/start.pl
	fi
}
redis_stop(){
	if [ ! -f $PIDFILE ]
	then
			echo "$PIDFILE does not exist, process is not running"
	else
			PID=$(cat $PIDFILE)
			echo "Stopping ..."
			$CLIEXEC shutdown
			while [ -x /proc/${PID} ]
			do
				echo "Waiting for Redis to shutdown ..."
				sleep 1
			done
			echo "Redis stopped"
	fi
}


case "$1" in
    start)
		redis_start
        ;;
    stop)
        redis_stop
        ;;
	restart|reload)
		redis_stop
		sleep 0.3
		redis_start
		;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac
EOF
# 设置redis可执行权限
chmod a+x /etc/init.d/redis
# 设置开机启动项
chkconfig --add redis
# 通过service命令启动redis
service redis start


Github示例:https://github.com/zhangweijiang/linux/blob/master/shell/node.sh

- END -

redis  
点赞(0) 打赏

文章评论 共有 0 条评论

暂无评论

站点信息

  • 建站时间:2018年10月24日
  • 网站程序:fastadmin
  • 文章统计74篇文章
  • 标签管理标签云
  • 统计数据百度统计
  • 网站地图XML网站地图
  • 微信公众号:扫描二维码,关注我们

打赏本站

  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!
  • 微信扫码:你说多少就多少~
  • 支付宝扫码:你说多少就多少~

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部