目录
- 问题现象
- 解决方法
- 1、Windows系统下访问官网下载 Redis
- 2、linux系统下安装 Redis
- 3、Redis 编译测试 并安装
- 4、修改配置
- 5、启动 Redis 服务并查看服务进程
- 6、连接 Redis
- 7、linux服务器连接redis
- 总结
问题现象
Linux 系统如何部署 Redis(下载、安装、配置、启动、连接)?
解决方法
1、Windows系统下访问官网下载 Redis
官网:Redis
2、Linux系统下安装 Redis
通过 FileZilla Client 或 XFtp 等文件传输工具,把下载好的 Redis 的 tar.gz 压缩包上传到 Linux 服务器,这里我上传到 thp 用户创建的目录下:
解压:
# 进入目录 cd /home/thp/public/redis # 解压 tar -vxf redis-6.2.6.tar.gz
3、Redis 编译测试 并安装
# 进入解压后的文件夹 cd /home/thp/public/redis/redis-6.2.6 # 执行 make 编译命令对当前目录下的文件进行编译 make
编译报错如下:
make[3]: cc:命令未找到
这是因为 make 命令是基于 gcc 命令的,因此需要先安装 gcc 命令环境:
yum install g-c++
报错:
没有可用软件包 g-c++。
改用:
y编程客栈um install gcc-c++
输入:y
成功安装 gcc 命令环境:
再次 make,出现报错:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
这是原因是 jemalloc 重载了 Linux 下的 ANSI C的 malloc 和 free 函数!!!
执行 make 命令时添加参数,可以解决:
make MALLOC=libc
出现类似如下信息,则为编译成功:
安装:
# 执行 安装命令 make install
出现类似如下信息,则为安装成功:
查看 redis服务 安装目录,默认是安装在 服务器的 /usr/local/bin 目录下:
看见以上文件,则为安装成功!
4、修改配置
有 2 个配置要修改:
1、daemonize(守护进程/后台进程 配置)
2、protected-mode(保护模式)
先把原配置文件 redis.conf 备份一下,备份为 redis_bak.conf 文件:
# 进入 redis 解压目录 cd /home/thp/public/redis/redis-6.2.6 # 备份为 redis_bak.conf 文件 cp /home/thp/public/redis/redis-6.2.6/redis.conf redis_bak.conf
备份完毕,修改 redis.conf 配置文件中的 daemonize 配置:
vi redpythonis.conf
daemonize 配置在257行左右:
把daemonize(守护进程/后台进程)改为 yes(是),并保存退出。
守护进程也就是后台进程的意思,配置为 yes 后,可以让 redis 服务作为后台进程启动:编程客栈
protected-mode(保护模式)修改为 no(关闭):
保护模式的作用,是用来防止该 Redis 服务被外部服务器所访问,默认情况下,该模式是开启的,也就是只有服务器本机可以访问到该 redis,而实际应用中,如果外部服务器需要直接访问到该redis的话,就需要关闭该模式,同时该配置还与 bind 配置(默认是 bind 127.0.0.1 -::1,用于绑定 redis 服务的 ip)相关,因此在关闭该模式后,还需要注释掉 bind 配置:
protected-mode 在 94行左右:
bind 配置在 75 行左右:
修改两个配置为如下,并保存退出即可:
5、启动 Redis 服务并查看服务进程
有三种命令可以启动 Redis 服务:
1、在 /home/thp/public/redis/redis-6.2.6 目录下,执行:
/usr/local/bin/redis-server redis.conf
2、在 /usr/local/bin 目录下,执行:
redis-server /home/thp/public/redis/redis-6.2.6/redis.conf
3、把 /home/thp/public/redis/redis-6.2.6/redis.conf 配置文件,拷贝 到 /usr/local/bin 目录下,然后再/usr/local/bin 目录下,执行:
# 拷贝 cp /home/thp/public/redis/redis-6.2.6/redis.conf /usr/local/bin/redis.conf # 进入 redis 服务的安装目录 cd /usr/local/bin # 启动 Redis 服务 redis-server redis.conf (若出现redis-server redis.conf: 未找到命令,则执行./redis-server redis.conf)
这里推荐使用第 3 种!!!
查看 Redis 服务进程,出现类似如下信息,则为 Redis 服务启动成功:
6、连接 Redis
使用数据库连接工具(如RDM可视化工具、DBeaver等),建议使用RDM可视化工具,这是一个专门用来连接redis的工具,功能很完善。
这里只是为了测试连接,所以我就使用了DBeaver工具连接刚启动的 Redis,发现连接失败了(Redis的密码默认为空):
这是因为还有一步很关键的步骤需要执行的,那就是开放端口!!!
linux 系统命令终端中输入一下命令,可以查看 linux 服务器上所有已开放的端口:
sudo firewall-cmd --zone=public --list-ports
注意该命令还需要输入当前用户的密码:
查看后发现,并没有 6379 这个端口(Redis的默认端口号SCjfnUm),输入以下命令开放 6379 端口:
sudo firewall-cmd --zone=public --add-port=6379/tcp --permanent
重启防火墙服务:
sudo firewa编程客栈ll-cmd --reload
再次查看 linux 服务器上所有已开放的端口,发现已经有 6379 端口了:
重新连接,成功,完结撒花!:
7、linux服务器连接redis
由于设置了环境变量,因此在linux服务器任何路径下都可以直接执行如下命令:
# 启动redis客户端redis-cli
出现如上图所示则为连接成功!!!
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。
精彩评论