一.安装配置
安装Redis需要知道自己需要哪个版本,有针对性的安装,比如如果需要redis GEO这个地理集合的特性,
那么redis版本就不能低于3.2版本,由于这个特性是3.2版本才有的。
另外需要注意的是,Redis约定次版本号(即第一个小数点后的数字)为偶数的版本是稳定版(如2.8版、3.0版),
奇数版本是非稳定版(如2.7版、2.9版),生产环境下一般需要使用稳定版本。
1 . 下载Redis
目前,最新的Redist版本为3.0,使用wget下载,命令如下:
# wget http://download.redis.io/releases/redis-4.0.2.tar.gz
2 . 解压Redis
# tar -xzvf redis-4.0.2.tar.gz
3 . 编译安装Redis
切换至程序目录,并执行make命令编译:
# cd redis-4.0.2
# make
make的过程中如出现gcc报错,则需要安装编译环境,如下:
# yum install gcc-c++
执行安装命令
# make install
make install安装完成后,会在/usr/local/bin目录下生成下面几个可执行文件,它们的作用分别是:
redis-server:Redis服务器端启动程序
redis-cli:Redis客户端操作工具。也可以用telnet根据其纯文本协议来操作
redis-benchmark:Redis性能测试工具
redis-check-aof:数据修复工具
redis-check-dump:检查导出工具
4 . 配置Redis
从解压目录下复制配置文件到/etc/redis目录:
# mkdir /etc/redis
# cp redis.conf /etc/redis/6379.conf
为了让redis后台运行,一般还需要修改redis.conf文件:
vi /etc/redis/6379.conf
修改如下配置项,使redis进程在后台运行:
daemonize yes
补充 redis.conf 中的daemonize 配置:
daemonize yes
代表开启守护进程模式。此时是单进程多线程的模式,redis将在后台运行,并将pid写入redis.conf--pidfile文件中,此时redis将一直运行,除非手动kill
daemonize no
当前界面将进入redis的命令行界面,exit强制退出或者关闭连接工具(xshell等)都会导致redis进程退出
修改bind:
原来:bind 127.0.0.1 代表本地回环地址,访问redis服务只能通过本机的客户端连接,而无法通过远程连接
修改为:将此行注释或者讲ip改成0.0.0.0 这样就能接受所有来自于可用网络接口的连接
修改protected mode 保护模式,只允许本地链接:
修改为:protected mode no
设置密码:在配置文件中有个参数: requirepass 这个就是配置redis访问密码的参数;
requirepass test123;
可以在登录redis后通过如下命令进行操作:
设置密码:redis 127.0.0.1:6379> config set requirepass test123
查询密码:redis 127.0.0.1:6379> config get requirepass
设置密码后可使用如下命令登录:
登录时携带密码:redis-cli -p 6379 -a test123
先登陆后验证:redis 127.0.0.1:6379>redis-cli -p 6379 redis 127.0.0.1:6379> auth test123
5 . 启动redis
配置完成后,启动redis:
# cd /usr/local/bin
# ./redis-server /etc/redis/6379.conf
检查启动情况:
# ps -ef | grep redis
二.redis开机自启
1.在系统服务目录里创建nginx.service文件
vi /lib/systemd/system/nginx.service
[Unit]
Description=The redis-server Process Manager
After=syslog.target network.target
[Service]
Type=forking
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/local/bin/redis-server /etc/redis/6480.conf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -SIGINT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
2.设置开机启动
# 开启开机自启
systemctl enable nginx.service
# 启动
systemctl start nginx.service
三.停止Redis
考虑到 Redis 有可能正在将内存中的数据同步到硬盘中,强行终止 Redis 进程可能会导致数据丢失。正确停止Redis的方式应该是向Redis发送SHUTDOWN命令,方法为:
redis-cli SHUTDOWN
当Redis收到SHUTDOWN命令后,会先断开所有客户端连接,然后根据配置执行持久化,最后完成退出。
Redis可以妥善处理 SIGTERM信号,所以使用kill Redis
进程的 PID也可以正常结束Redis,效果与发送SHUTDOWN命令一样。
四.开放端口
最后使用redis desktop manager连接redis,此时需要开放6379端口(centos7)
systemctl stop firewalld.service 关闭防火墙
systemctl start firewalld.service 开启防火墙
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
添加端口: firewall-cmd --zone=public --add-port=6379/tcp --permanent(--permanent永久生效,没有此参数重启后失效)
重启防火墙:firewall-cmd --reload
查看:firewall-cmd --zone= public --query-port=80/tcp
删除:firewall-cmd --zone= public --remove-port=80/tcp --permanent