1、官网下载 Redis 6.0.6(本人下载版本) 点击下载
2、复制到 Linux
3、解压缩并安装
# 解压
tar -zxvf redis-6.0.6.tar.gz
# 进入解压目录
cd redis-6.0.6
# 执行安装
make install
报错:server.c:xxxx:xx: error: ‘xxxxxxxx’ has no member named ‘xxxxx’
原因:CentOS 7 默认安装 gcc 4.8.5,Redis 6 必须将 gcc 升级到 9.3
# 查看gcc版本是否在5.3以上,centos7.6默认安装4.8.5
gcc -v
# 升级gcc到5.3及以上,如下:
# 升级到gcc 9.3:
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
# 需要注意的是scl命令启用只是临时的,退出shell或重启就会恢复原系统gcc版本。
# 如果要长期使用gcc 9.3的话:
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
# 这样退出shell重新打开就是新版的gcc了
# 以下其他版本同理,修改devtoolset版本号即可。
如果 yum 安装报错 yum 被 packagekit 占用
将 /etc/yum/pluginconf.d/refresh-packagekit.conf 改为如下:
enabled=0
然后重启 Linux 即可
安装成功如下所示。
8、启动 Redis
cd src
./redis-server
9、配置为后台服务
修改 redis.conf 文件
cd ..
# 用vim编辑配置文件
vim redis.conf
守护线程改为 yes 表示启动后台启动,保存退出
10、将 redis.conf 复制到 /etc/redis 路径下,并改名为 6379.conf
# 进入/etc
cd /etc
# 创建redis目录
mkdir redis
# 进入redis目录
cd redis
# 复制
cp /usr/local/redis-6.0.6/redis.conf 6379.conf
11、将启动文件 usr/local/redis-6.0.6/utils/redis_init_script 拷贝到 /etc/rc.d/init.d/
cp /usr/local/redis-6.0.6/utils/redis_init_script /etc/rc.d/init.d/
修改文件名为 redisd
cd /etc/rc.d/init.d/
mv redis_init_script redisd
12、修改复制后的 redisd 文件,让它成为服务
cd /etc/rc.d/init.d/
vim redisd
- 修改 EXEC、CLIEXEC 的路径
#原内容
EXEC=/usr/local/bin/redis-server
CLIEXEC=/usr/local/bin/redis-cli
#修改后的内容
EXEC=/usr/local/redis-6.0.6/src/redis-server
CLIEXEC=/usr/local/redis-6.0.6/src/redis-cli
- 在 $EXEC $CONF 后面加上 &,表示后台启动
13、添加开机启动
chkconfig redisd on
14、启动 redis 服务
service redisd start
Ctrl + c 退出,Reids 也不会关闭了,执行命令查看
ps -ef | grep redis
可以看到 Redis 服务已经后台启动了
15、关闭 Redis 服务
service redisd stop
16、客户端访问
cd /usr/local/redis-6.0.6/src
redis-cli
17、允许外部访问
- 添加端口
1、查看防火墙状态
firewall-cmd --state
runing 表示开启,not runing 表示关闭,如果关闭,执行
systemctl start firewalld.service
开放 6379 端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
systemctl restart firewalld.service
firewall-cmd --reload
- 修改配置文件
vim /etc/redis/6379.conf
bind 改为 0.0.0.0 表示任何 IP 都可以连接。