##Redis介绍## Redis如今已经成为Web开发社区最火热的内存数据库之一,随着Web2.0的快速发展,再加上半结构数据比重加大,网站对高效性能的需求也越来越多。 而且大型网站一般都有几百台或者更多Redis服务器。Redis作为一款功能强大的系统,无论是存储、队列还是缓存系统,都有其用武之地。 ##Redis Github开源## Redis:一款基于C语言开发的高性能NOSQL系统 我已经将Redis源码fork到我的github仓库了,可以去我的github上看看https://github.com/JLGPL/redis ##Linux下安装Redis## ###下载解压Redis### 本博客介绍Redis-2.6.14版本的安装 按照Linux系统安装常规,我们一般先下载源代码到/usr/local/src目录下面 进入目录:
cd /usr/local/src
注意googlecode需要访问国外网站才可以下载的,我们使用wget命令下载源码
wget http://redis.googlecode.com/files/redis-2.6.14.tar.gz
不可以访问国外网站的话,可以使用下面命令下载
wget http://download.redis.io/releases/redis-2.8.3.tar.gz
解压Redis源代码
tar xzf redis-2.6.14.tar.gz
###安装gcc### 因为Redis系统是基于C语言开发的,所以我们需要安装好Linux的GCC环境, 也就是编译C语言、C++或者Java的环境 因为有些系统是有预装好yum的,所以这种情况下就可以使用如下命令
yum install gcc
想要自己安装gcc的,可以参考我的教程:http://blog.csdn.net/u014427391/article/details/71194527 ###安装Redis### 建立Redis链接
ln -s redis-2.6.14 redis
进入Redis文件夹目录
cd redis
安装Redis到/usr/local/redis
make PREFIX=/usr/local/redis install
这时,你去看一下/usr/local/redis里面已经生成里build目录, 下面有如下脚本redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server ##添加Redis服务##
普及一下Linux知识,/etc/rc.d/init.d下面的脚本相当于window系统的注册表,也就是说在Linux系统启动的时候,这些脚本都会被自动执行,我们这是就需要将redis的初始化脚本(/usr/local/src/redis/utils/redis_init_script)发到该目录下面,目的就是系统启动的时候,实现redis初始化操作。 复制脚本代码如下,使用cp命令
cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/init.d/redis
###VI编辑Redis配置### 大多数情况下,我们都需要修改Redis默认配置的,中文注释的地方就是需要修改的
#!/bin/sh
#添加改配置
#chkconfig: 2345 80 90
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
REDISPORT=6379
#修改Redis-server路径
EXEC=/usr/local/redis/bin/redis-server
#修改Redis-cli路径
CLIEXEC=/usr/local/redis/bin/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.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 & #加入&符号,使Redis服务后台运行
fi
;;
stop)
if [ ! -f $PIDFILE ]
then
echo "$PIDFILE does not exist, process is not running"
else
PID=$(cat $PIDFILE)
echo "Stopping ..."
$CLIEXEC -p $REDISPORT shutdown
while [ -x /proc/${PID} ]
do
echo "Waiting for Redis to shutdown ..."
sleep 1
done
echo "Redis stopped"
fi
;;
*)
echo "Please use start or stop as first argument"
;;
esac
解释: 因为我们已经将Redis安装到/usr/local/redis目录下面了,使用需要修改redis配置,使其可以找到Redis-server和Redis-cli服务
添加&符号的作用是使Redis服务后台运行,否则,启动Redis服务时,占据在前台,占用了主用户界面,造成其它的命令执行不了
###注册启动Redis服务### 注册Redis服务
chkconfig --add redis
启动Redis服务
service redis start
###设置Redis全局使用### 这时需要修改系统配置 同样使用VI编辑器进行修改
vi /etc/profile
在配置文件后面加入
export PATH="$PATH:/usr/local/redis/bin"
wq保存退出,当然其实WinSCP工具是可以实现像window系统类似的文件编辑的,所以vi命令不熟,可以使用WinSCP可视化操作
应用配置
. /etc/profile
###使用Redis服务### 然后我们可以在Redis源代码路径下面,检测redis进程是否启动了
ps -ef | grep redis
可以看到如下类似的,说明redis安装成功
root@ubuntu redis-1.2.6]# ps -ef | grep redis
root 401 29222 0 18:06 pts/3 00:00:00 grep redis
root 29258 1 0 16:23 ? 00:00:00 redis-server /etc/redis.conf
$ redis-cli
redis 127.0.0.1:6379> auth superman
OK
redis 127.0.0.1:6379> ping
PONG
redis 127.0.0.1:6379>