Redis介绍以及安装(Linux)

时间:2023-04-21 21:12:44

redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcached类似,但很大程度补偿了memcached的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,redis支持各种不同方式的排序。Redis数据都是缓存在计算机内存中,并且会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。

redis官网地址:http://www.redis.io/

最新版本:2.8.11

在Linux下安装Redis非常简单,具体步骤如下(官网有说明):

1、下载源码,解压缩后编译源码。

$ wget http://download.redis.io/releases/redis-2.8.11.tar.gz
$ tar xzf redis-2.8.11.tar.gz
$ cd redis-2.8.11
$ make

2、编译完成后,在Src目录下,有四个可执行文件redis-server、redis-benchmark、redis-cli和redis.conf。然后拷贝到一个目录下。

mkdir /usr/redis
cp redis-server /usr/redis
cp redis-benchmark /usr/redis
cp redis-cli /usr/redis
cp redis.conf /usr/redis
cd /usr/redis

3、启动Redis服务。(启动防火墙的要开启6379端口)

$ ./redis-server  redis.conf

4、然后用客户端测试一下是否启动成功。

telnet 192.168.1.98 6379
set foo bar
OK
get foo
"bar"

  

5、redis开机启动

(1)、修改redis.conf,打开后台运行选项:

# By default Redis does not run as a daemon. Use 'yes' if you need it.
# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
daemonize yes

(2)、编写脚本,vim /etc/init.d/redis:

# chkconfig: 2345 10 90
# description: Start and Stop redis PATH=/usr/local/bin:/sbin:/usr/bin:/bin REDISPORT=6379 #实际环境而定
EXEC=/opt/redis/redis-server #实际环境而定
REDIS_CLI=/opt/redis/redis-cli #实际环境而定 PIDFILE=/var/run/redis.pid
CONF="/opt/redis/redis.conf" #实际环境而定 case "$1" in
start)
if [ -f $PIDFILE ]
then
echo "$PIDFILE exists, process is already running or crashed."
else
echo "Starting Redis server..."
$EXEC $CONF
fi
if [ "$?"="0" ]
then
echo "Redis is running..."
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE exists, process is not running."
else
PID=$(cat $PIDFILE)
echo "Stopping..."
$REDIS_CLI -p $REDISPORT SHUTDOWN
while [ -x $PIDFILE ]
do
echo "Waiting for Redis to shutdown..."
sleep 1
done
echo "Redis stopped"
fi
;;
restart|force-reload)
${0} stop
${0} start
;;
*)
echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
exit 1
esac

   (3)、执行权限:

chmod +x /etc/init.d/redis

   (4)、开机自启动:

# 尝试启动或停止redis
service redis start
service redis stop
# 开启服务自启动
chkconfig redis on