centos安装redis

centos源码安装redis

wget下载redis
wget http://download.redis.io/releases/redis-3.2.5.tar.gz
编译
cd redis-3.2.5
make
make install

make 和 make install 一定分两步走,别一步 随后会在你的/usr/local/bin下生成redis的个文件
redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server

cp一份redis
cp -R redis-3.2.5/ redis
设置redis为常驻后台

把 daemonize 的 no 改为 yes

vi /usr/local/redis/redis.conf
启动redis
redis-server /usr/local/redis/redis.conf

设置Redis远程链接

这里我设置的是任意IP链接

查看Redis进程

# ps -ef | grep redis

然后我们看到是127.0.0.1:6379也就是说只允许本机访问

设置redis.conf

把bind 127.0.0.1 改为bind 0.0.0.0

重启redis

如果是用apt-get或者yum install安装的redis,可以直接通过下面的命令停止/启动/重启redis

/etc/init.d/redis-server stop /etc/init.d/redis-server start /etc/init.d/redis-server restart 如果是通过源码安装的redis,则可以通过redis的客户端程序redis-cli的shutdown命令来重启redis

redis-cli -h 127.0.0.1 -p 6379 shutdown 如果上述方式都没有成功停止redis,则可以使用终极武器 kill -9 3.重新启动redis

redis-server /xxx/xxx/redis.conf

检查进程

我们现在看到时0.0.0.0:6379说明允许远程登录

设置Redis自动启动

建立/etc/init.d/下新建一个 redis 的脚本,开机启动时会去加载执行该脚本
vi /etc/init.d/redis

写入以下代码 REDISPORT EXEC REDIS_CLI PIDFILE CONF,请务必修改

#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.
#chkconfig: 2345 80 90
#description:auto_run
REDISPORT=6379
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/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
        ;;
    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

设置权限

chmod 755 redis

启动测试

这样的话,以后都可以用这个脚本来操作redis

// 设置权限
chmod +x /etc/init.d/redis
//测试启动
service redis start
//测试停止
service redis stop

设置开机自启动

chkconfig redis on

设置redis密码

requirepass yourpwd

删除redis

sudo find / -name "redis-cli"
sudo rm -rf /usr/local/bin/redis-*

错误

/bin/sh: cc: 未找到命令
/bin/sh: cc: 未找到命令
make[1]: *** [adlist.o] 错误 127
make[1]: 离开目录“/data/soft/redis-4.0.0/src”
make: *** [all] 错误 2
yum -y install gcc automake autoconf libtool make
致命错误:jemalloc/jemalloc.h:没有那个文件或目录
cd src && make all
make[1]: 进入目录“/data/soft/redis-4.0.0/src”
    CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
 #include <jemalloc/jemalloc.h>
make MALLOC=libc

yum安装最新Redis

安装Remi

如果要安装最新的redis,需要安装Remi的软件源

yum install -y http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

安装Redis

yum --enablerepo=remi install redis

查看安装的Redis的包

rpm -qa |grep redis
rpm -ql redis

修改为后台启动

vim /etc/redis.conf
daemonize yes

启动

service redis start
或者
systemctl start redis

查看redis版本

redis-cli --version

设置为开机自动启动:

chkconfig redis on
或者
systemctl enable redis.service

Redis设置

loglevel notice
#  配置 log 文件地址
#  默认值为 stdout ,标准输出,若后台模式会输出到 /dev/null 。
logfile /var/log/redis/redis.log

redis数据持久化