Linux
- 下载安装包
wget http://download.redis.io/releases/redis-5.0.5.tar.gz
- 解压安装包(解压完后注意删掉安装包)
tar -zxvf redis-5.0.5.tar.gz
- 进入redis目录,运行make(编译)
[root@localhost redis-5.0.5]# make
- 在src目录下启动redis
---------启动redis
[root@localhost src]# ./redis-server ../redis.conf &
// 或者新建一个文件夹(我新建了一个redis文件夹),然后将启动redis的一些文件拷贝过去
先拷贝src目录下的文件
cp redis-server /root/software/redis
cp redis-benchmark /root/software/redis
cp redis-check-rdb /root/software/redis
cp redis-sentinel /root/software/redis
cp redis-cli /root/software/redis
再拷贝redis.conf
cp redis.conf /root/software/redis
然后在redis目录下启动redis
[root@instance-qv8bbpvs redis]# ./redis-server redis.conf &
- 测试是否启动成功
[root@instance-qv8bbpvs redis]# ./redis-cli -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>
当使用ip连接时候,会报连不上,这时候需要修改redis.conf配置,将bind 127.0.0.1注释掉,如果还是不行的话,就将protected-mode yes改为 no并重启redis
#bind 127.0.0.1
protected-mode no
- 修改密码
修改redis.conf
取消注释,将1234改为自己的密码
#requirepass 1234
通过密码登录
./redis-cli -p 6379 -a 1234
- 开启守护模式
将daemonize no 改为daemonize yes 。
redis采用的是单进程多线程的模式。当redis.conf中选项daemonize设置成yes时,代表开启守护进程模式。在该模式下,redis会在后台运行,并将进程pid号写入至redis.conf选项pidfile设置的文件中,此时redis将一直运行,除非手动kill该进程。但当daemonize选项设置成no时,当前界面将进入redis的命令行界面,exit强制退出或者关闭连接工具(putty,xshell等)都会导致redis进程退出。
服务端开发的大部分应用都是采用后台运行的模式
- 手动设置开机自启
编写开机自启动脚本,没有的话就新建
vi /etc/init.d/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
REDISPATH=/home/java/run/redis-3.2.9/bin
EXEC=${REDISPATH}/redis-server
CLIEXEC=${REDISPATH}/redis-cli
PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="${REDISPATH}/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
设置开机自启动
chkconfig redis on
关机重启测试
reboot
Docker
要注意将将bind 127.0.0.1 注释掉
docker run -p 6379:6379 --name myredis -v /root/localdocker/localredis/redis.conf:/etc/redis/redis.conf -v /root/localdocker/localredis/data:/data -d redis redis-server /etc/redis/redis.conf