[Redis 环境搭建] 通过源码编译安装 Redis
本文采用 redis-6.0.4 版为例 , 需要安装最新版 redis 可去官方下载页查看:http://redis.io/download
一、Redis安装
(1)下载Redis并编译
$ wget http://download.redis.io/releases/redis-6.0.4.tar.gz
$ sudo tar zxvf redis-6.0.4.tar.gz -C /opt
$ cd /opt/redis-6.0.4
$ sudo make
当出现如下信息, 表示编译完成
(2)安装redis
sudo make PREFIX=/usr/local/redis install
注意:PREFIX必须大写、同时会自动为我们创建redis目录,并将结果安装此目录
当出现如下信息, 表示安装完成
(3)查看redis安装目录
cd /usr/local/redis
tree
可以看到redis已经安装完成
二、安装过程中的常见问题
(1)找不到make指令
若找不到make指令, 则需要安装gcc
CentOS
yum -y install gcc automake autoconf libtool make
注意:运行yum时出现/var/run/yum.pid已被锁定,PID为xxxx的另一个程序正在运行的问题解决
rm -f /var/run/yum.pid
ubuntu
sudo apt update
sudo apt install build-essential
三、启动Redis
(1)启动Redis服务
cd /usr/local/redis/bin
# 启动Redis服务端
./redis-server
**启动Redis 服务端命令: **
redis-server redis.conf
若看到以下内容, 表示Redis服务端启动成功
(2)启动Redis客户端
cd /usr/local/redis/bin
# 启动Redis客户端
./redis-cli
**启动Redis 客户端命令: **
redis-cli -h IP地址 -p 端口 -a 密码
退出客户端命令: Ctrl+C
**检测是否服务端启动: **
$ redis-cli
redis 127.0.0.1:6379> PING
PONG
四、关闭Redis服务端
(1)杀死进程
非正常关闭, 容易数据丢失
# 查询PID
ps -ef | grep -i redis
# 根据PID杀死进程
kill -9 PID
(2)在客户端使用shutdown
正常关闭, 数据保存
$ redis-cli
redis 127.0.0.1:6379> shutdown
在刚刚安装没有配置的Redis中, 使用shutdown
指令关闭服务端可能会出现如下问题:
这是因为Redis安装的文件夹没有写入权限, 而默认情况下, Redis持久化生成的本地数据库文件 dump.rdb, 在Redis的bin目录中, 我们需要给Redis目录赋予权限
cd /usr/local
sudo chmod -R 777 redis/
五、开放防火墙端口
(1)CentOS7
# 查看已经开放的端口
firewall-cmd --list-ports
# 开启端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
# 重启防火墙
firewall-cmd --reload # 重启
firewall systemctl stop firewalld.service # 停止
firewall systemctl disable firewalld.service # 禁止防火墙开机启动
(2)Ubuntu18.4
# sudo iptables -I INPUT -p tcp --dport [端口号] -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
# 临时保存配置,重启后失效
sudo iptables-save
# 安装 iptables-persistent工具,持久化开放端口配置
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload