02 Redis 菜鸟到高手 | Linux 平台安装 Redis

617 阅读3分钟

环境

  • Linux 平台:CentOS 8
  • Redis 版本:6.2.5

安装

Linux 平台我们使用源代码的方式进行安装,下载源代码安装包,解压,进行编译。

# 如果 wget,tar,make 等命令没有安装的话,使用 yum install -y wget/tar/make 进行安装

# 通过源码安装,需要先安装gcc编译器
yum install gcc
yum install gcc-c++

# 检查是否安装成功
gcc -v

# 下载安装包,也可以先离线下载好
wget https://download.redis.io/releases/redis-6.2.5.tar.gz

# 解压安装包
tar -zxvf redis-6.2.5.tar.gz

# 进入安装目录
cd redis-6.2.5

# 编译,其实此步骤编译之后已经可以在src目录中找到二进制执行文件了,可以直接启动服务了 ./redis-server ../redis.conf
make

# 安装Redis
# make install 安装后默认路径在/usr/local/bin , 我们一般指定安装到 /usr/local/redis
mkdir /usr/local/redis
make install PREFIX=/usr/local/redis

在 redis-6.2.5 目录下拷贝配置文件 redis.conf/usr/local/redis/bin 目录然后进行修改 。拷贝是为了不修改原文件,以备后续出问题的话再使用原文件。打开配置文件修改以下内容。

# 注释掉下面一行,这样任何IP都可以访问Redis服务
# bind 127.0.0.1

# 保护模式关闭
protected-mode no

# Redis端口号,可以修改
port 6380

# 复制另起一行,设置密码
# requirepass foobared
requirepass 123456

# 守护进程方式启动
daemonize yes

启动 Redis 服务。

/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf

使用 ps -ef | grep redis 查看 Redis 服务是否启动成功。

[root@chenpi bin]# ps -ef | grep redis
root       8441      1  1 10:57 ?        00:00:00 /usr/local/redis/bin/redis-server *:6380
root       8447   3979  0 10:58 pts/2    00:00:00 grep --color=auto redis
[root@chenpi bin]# 

设置开机自启动,vim /etc/rc.d/rc.local 编辑文件,在最后一行加上启动 Redis 服务的命令。

#!/bin/bash
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
#
# It is highly advisable to create own systemd services or udev rules
# to run scripts during boot instead of using this file.
#
# In contrast to previous versions due to parallel execution during boot
# this script will NOT be run after all other services.
#
# Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure
# that this script will be executed during boot.

touch /var/lock/subsys/local

/usr/local/redis/bin/redis-server  /usr/local/redis/bin/redis.conf

将 Redis 服务端口加到防火墙上,不然外部无法访问 Redis 服务。添加端口,重启防火墙,查看防火墙开放的端口。

[root@chenpi bin]# firewall-cmd --zone=public --add-port=6380/tcp --permanent
success
[root@chenpi bin]# systemctl restart firewalld
[root@chenpi bin]# firewall-cmd --zone=public --list-ports
6380/tcp
[root@chenpi bin]# 

验证

使用内置的客户端与 Redis 进行交互。

/usr/local/redis/bin/redis-cli -p 127.0.0.1 -p 6380

使用客户端成功连接后,如果没输入密码进行验证,执行 Redis 命令会报错。

D:\devTools\Redis3.2.1>redis-cli.exe -h 127.0.0.1 -p 6380
127.0.0.1:6380> KEYS *
(error) NOAUTH Authentication required.
127.0.0.1:6380> AUTH 123456
OK
127.0.0.1:6380> KEYS *
(empty list or set)
127.0.0.1:6380>

当然,也可以在使用客户端连接命令的时候指明密码,不过不推荐,毕竟是明文显示。

/usr/local/redis/bin/redis-cli -p 127.0.0.1 -p 6380 -a 123456

使用客户端成功连接 Redis 后,可以通过以下命令退出连接,关闭 Redis 服务。

# 退出连接
exit

# 关闭Redis服务
shutdown


我是陈皮,一个在互联网 Coding 的 ITer,微信搜索「陈皮的JavaLib」第一时间阅读最新文章,回复【资料】,即可获得我精心整理的技术资料,电子书籍,一线大厂面试资料和优秀简历模板。