安装
- 下载安装包,下载地址:点这里Redis4.0.0.tar.gz 或者使用命令:
wget http://download.redis.io/releases/redis-4.0.0.tar.gz
- 解压编译
tar -zvxf redis-4.0.0.tar.gz
cd redis-4.0.0
make
- 启动,测试效果
./src/redis-server
#另开窗口
$ ./src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
建议
make命令执行完成后,会在src目录下生成6个可执行文件,分别是
redis-server
、redis-cli
、redis-benchmark
、redis-check-aof
、redis-check-dump
、redis-sentinel
redis-server is the Redis Server itself.(Redis服务器本身)
redis-sentinel is the Redis Sentinel executable (monitoring and failover).(Redis集群的管理工具)
redis-cli is the command line interface utility to talk with Redis.(与Redis进行交互的命令行客户端)
redis-benchmark is used to check Redis performances.(Redis性能测试工具)
redis-check-aof and redis-check-dump are useful in the rare event of corrupted data files.(AOF文件修复工具和RDB文件检查工具)
可以使用如下命令,把redis-server
和redis-cli
拷贝到合适的位置(/usr/local/bin/)
sudo cp src/redis-server /usr/local/bin/
sudo cp src/redis-cli /usr/local/bin/
或者,使用 sudo make install可以把6个文件都拷贝过去;这样的话,只要/usr/local/bin/在PATH环境变量里我们就可以直接使用redis-server和redis-cli而不需要指定全路径了。
关闭 redis服务
可以使用$ redis-cli shutdown
或在server端 ctrl+c 关闭
配置初始化脚本,以服务方式启动redis
- 拷贝redis-4.0.0下的utils目录下的初始化脚本到/etc/init.d目录,并重命名文件为:redis_+端口号
sudo cp utils/redis_init_script /etc/init.d/redis_6379
- 新建文件夹/etc/redis/ ,并拷贝redis-4.0.0下的 redis.conf 文件到到改目录下,使用端口号作为文件名
mkdir /etc/redis
cp redis.conf /etc/redis/6379.conf
- 创建用来存储redis持久化文件的目录(6379为端口号)
sudo mkdir -p /var/redis/6379
- 创建日志文件夹
mkdir /var/log/redis
- 编辑6379.conf文件,修改如下几个参数:
设置daemonize 为yes,默认为no
设置 pidfile to /var/run/redis_6379.pid
修改 port 端口号为 6379
可以设置日志loglevel等级,注释上有说明
设置日志文件logfile路径 : /var/log/redis/redis_6379.log,需要在log下新建redis文件夹
设置工作目录dir为 /var/redis/6379
- 这时候就可以使用如下两条命令(任选其一)来启动redis,并测试
service redis_6379 start
Starting Redis server...
redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>
/etc/init.d/redis_6379 start
Starting Redis server...
设置开机自启动
- 编辑/etc/init.d/redis_6379文件,在#!/bin/sh 之后添加如下两行。
# chkconfig: 2345 10 90
# description: redis_6379 service manage...
其中2345是默认启动级别,级别有0-6共7个级别。
等级0表示:表示关机
等级1表示:单用户模式
等级2表示:无网络连接的多用户命令行模式
等级3表示:有网络连接的多用户命令行模式
等级4表示:不可用
等级5表示:带图形界面的多用户模式
等级6表示:重新启动
10是启动优先级,90是停止优先级,优先级范围是0-100,数字越大,优先级越低
- 将redis_6379放入linux启动管理体系中 ,查看redis_6379服务在各运行级状态
chkconfig --add redis_6379
chkconfig --list redis_6379
- 重启服务器测试效果:
reboot
; 重启完成后,直接使用redis-cli连接redis
设置密码
- 设置密码,找到requirepass一行,去掉注释 设置密码
vim /etc/redis/6379.conf
- 开启远程访问
vim /etc/redis/6379.conf
#修改 protected-mode 为 no
#找到bind 127.0.0.1注释掉(或改为0.0.0.0)
#开放端口6379(防火墙、阿里云安全策略。。。)
- 修改启动文件,加入如下所示的加粗授权信息即可:
vim /etc/init.d/redis_6379
$CLIEXEC -a "password" -p $REDISPORT shutdown
如果不修改启动文件,可能会导致 (error) NOAUTH Authentication required 错误