CentOS7 安装 Redis 7.0.2
安装 Redis
# 首先安装依赖gcc, 后面需要使用make编译redis
yum install gcc -y
# 进入 /usr/local/src 目录, 把源码下载到这里
cd /usr/local/src
# 下载 redis 7.0.2 的源码,github被墙,可以使用国内的地址
wget http://download.redis.io/releases/redis-7.0.2.tar.gz
# 解压缩
tar zxvf redis-7.0.2.tar.gz
# 进入解压后的文件夹
cd redis-7.0.2
# 编译并安装 redis, 漫长的等待...
make && make install
# 安装完成后,redis会被默认安装在 /usr/local/bin/
# 查看下这个目录下的文件,可以看到有 redis-server, 这个文件就是redis的服务程序了
ls /usr/local/bin/
启动 Redis
# 因为redis被默认安装在/usr/local/bin,这个目录默认就在系统的环境变量中(不信,你可以使用 env 命令,查看一下你的PATH是不是有)
# 所以,我们可以在任意位置运行 redis-server 来启动 redis
redis-server
启动成功,你可以看到如下界面:

但是这里有些问题:
- redis的默认端口是 6379, 假如这个端口被占用了怎么办?
[root@broadm ~]# redis-server
6610:C 25 Jun 2022 15:47:53.378 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
6610:C 25 Jun 2022 15:47:53.378 # Redis version=7.0.2, bits=64, commit=00000000, modified=0, pid=6610, just started
6610:C 25 Jun 2022 15:47:53.378 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
6610:M 25 Jun 2022 15:47:53.379 * Increased maximum number of open files to 10032 (it was originally set to 1024).
6610:M 25 Jun 2022 15:47:53.379 * monotonic clock: POSIX clock_gettime
6610:M 25 Jun 2022 15:47:53.380 # Warning: Could not create server TCP listening socket *:6379: bind: Address already in use
6610:M 25 Jun 2022 15:47:53.380 # Failed listening on port 6379 (TCP), aborting.
- redis-server 默认以前台方式启动,即启动完成后,一直占据命令窗口,我们无法再执行其他操作了,这明显不合适,我们需要的是后台启动
修改配置文件
好在 redis 提供了配置文件,我们可以配置redis,修改默认端口,修改启动方式为后台启动,修改密码等等.
还记得上面,我们解压redis的目录吗? 没错,就是 /usr/local/src/redis-7.0.2, 让我们进入到这个目录, redis的配置文件就在这里 redis.conf
# 进入redis的解压目录
cd /usr/local/src/redis-7.0.2
# 查看目录内容, 你会看到 redis.conf
ls
# 在编辑 redis.conf 之前, 好的做法是先备份它
cp redis.conf redis.conf.backup
# 好了,现在我们可以大胆的修改 redis.conf 了
vim redis.conf
后台启动
首先我们搜索 daemonize , vim的查找操作别忘了(不会的话自己百度)
找到 daemonize no 这一行, 然后我们把 no 修改为 yes, 这样就可以后台启动redis了
daemonize yes
设置密码
我们搜索 requirepass,找到 # requirepass foobared 这一行, 我们可以看到默认密码这一行被注释了,说明默认没有开启密码保护
requirepass 你的密码
设置端口
搜索 port, 你会发现 port 6379 这一行, 需要的话你就改它吧(比如,你的6379端口被其他程序占用了)
port 6379
允许远程访问
找到 bind 127.0.0.1 -::1, 修改为
bind 0.0.0.0
修改其他配置请查看官方文档
OK, 改完了配置文件, 我们要怎么使用它呢? 很简单:
执行下面的命令,必须要在 redis.conf 所在的文件夹, 就是上面的 /usr/local/src/redis-7.0.2
如果你离开这个文件夹了,请使用完整的路径 redis-server /usr/local/src/redis-7.0.2/redis.conf
redis-server redis.conf
现在redis就是以后台的方式启动了,看看我的实操:
[root@broadm redis-7.0.2]# redis-server redis.conf
[root@broadm redis-7.0.2]# ps -ef | grep redis
root 6573 1970 0 15:47 pts/0 00:00:05 redis-server *:6379
root 6704 6583 0 16:25 pts/1 00:00:00 grep --color=auto redis
[root@broadm redis-7.0.2]#
开机自启
这种启动的方式很low啊,每次重启机器的话,是不是都要手动敲命令啊
没错,你需要开机自启,也就是需要搞成系统服务,让我们开始吧:
首先,你要为redis编写一个系统服务文件:
vim /etc/systemd/system/redis.service
文件内容如下:
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-7.0.2/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
注意: 上面的 ExecStart , 如果你按照我的方式一步步来的话,不用改,否则修改为自己的实际安装路径
重新加载系统服务
systemctl daemon-reload
设置开机自启:
systemctl enable redis
启动,停止,卸载,查看状态
# 启动redis服务
systemctl start redis
# 查看服务状态
systemctl status redis
# 停止服务
systemctl stop redis
# 取消开机自动启动(卸载服务)
systemctl disabled redis
如果你在启动redis之后, 使用
systemctl status redis发现,
没有启动成功, 这可能是因为,你之前已经启动了redis了,首先把之前启动的关闭后,再使用systemctl start redis你可以使用
ps -ef | grep redis查看正在运行的redis进程使用
kill -9 进程ID杀死正在运行的进程
补充: 如果您的服务器开启了防火墙,您需要把redis的端口放行,或者您是使用的云服务器,您同样需要配置防火墙
正常的运行状态应该是下面这样的,祝你好运!!!
[root@broadm redis-7.0.2]# systemctl status redis
● redis.service - redis-server
Loaded: loaded (/etc/systemd/system/redis.service; enabled; vendor preset: disabled)
Active: active (running) since 六 2022-06-25 16:46:10 CST; 3s ago
Process: 6907 ExecStart=/usr/local/bin/redis-server /usr/local/src/redis-7.0.2/redis.conf (code=exited, status=0/SUCCESS)
Main PID: 6908 (redis-server)
Tasks: 5
Memory: 6.7M
CGroup: /system.slice/redis.service
└─6908 /usr/local/bin/redis-server 127.0.0.1:6379
6月 25 16:46:10 broadm systemd[1]: Starting redis-server...
6月 25 16:46:10 broadm systemd[1]: Started redis-server.
CentOS7 安装 Redis 7.0.2的更多相关文章
- Centos7 安装redis 5.0.8 开机自启动
redis安装 将安装包移动到linux上 执行解压 tar -xvf redis-5.0.8.tar.gz 修改redis文件夹名称 mv redis- redis 修改redis权限 chmod ...
- CentOS7.2 安装redis 3.0.6集群
1.环境确认 a.系统版本查看 [hadoop@p168 ~]$ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) b.安装依 ...
- CentOS7 安装Redis Cluster集群
上一篇中已经讲到了如何安装单击版Redis,这一篇我们来说下如何安装Cluster,关于哨兵模式这里我就不写文章安装了,有兴趣的同学可以自己去研究,哨兵模式可以在主从模式下在创建三台机器的哨兵集群监控 ...
- CentOS7安装redis数据库及php-redis扩展
redis 首先把redis安装到服务器中 1.wget http://download.redis.io/redis-stable.tar.gz 下载redis源码 2. tar xvzf redi ...
- 安装Redis 4.0单实例
一.Redis简单介绍 转载于网络 Redis是一个开源(BSD许可)的内存中的数据结构存储系统,它可以用作数据库.缓存和消息中间件.由于Redis采用运行在内存中的数据集工作方式,其性能卓越,能支持 ...
- liunx 安装redis 4.0
liunx 上安装redis 4.0.1 第一步:将 redis-4.0.1.tar.gz 压缩问上传至/home目录下 第二步: 解压文件 tar -zxvf redis-4.0.1.tar.g ...
- RHEL7或CentOS7安装11.2.0.4 RAC碰到的问题
RHEL7或CentOS7安装11.2.0.4 RAC碰到的问题 随着Linux 版本的普及,但Oracle数据库主流版本仍是11gR2, 的支持不很完美,在Linux 上安装会遇到几处问题,以此记录 ...
- centos / Linux 服务环境下安装 Redis 5.0.3
原文:centos / Linux 服务环境下安装 Redis 5.0.3 1.首先进入你要安装的目录 cd /usr/local 2.下载目前最新稳定版本 Redis 5.0.3 wget http ...
- linux安装 redis(redis-3.0.2.tar.gz) 和 mongodb(mongodb-linux-x86_64-rhel62-4.0.0)
1:首先 要下载 这两个 压缩包 注意:liunx是否已经安装过 gcc没安装的话 先安装:yum install gcc-c++ 2:安装 redis:redis-3.0.2.tar.gz (1): ...
- CentOS 7.3 安装redis 4.0.2服务
CentOS 7.3 安装redis 4.0.2服务 1.下载解压 下载地址:/home/xiaoming/ wget http://download.redis.io/releases/redis- ...
随机推荐
- echo输出
linux中不免经常使用echo进行输出,或输出到屏幕,或输出到文件.但是使用的时候会发现,在想要输出一些需要转义的字符时,例如\t等,它却原样不动的输出了. 使用man命令查看echo的帮助文档,会 ...
- python SQLAlchemy ORM——从零开始学习 01 安装库
01基础库 1-1安装 依赖库:sqlalchemy pip install sqlalchemy #直接安装即可 1-2导入使用 这里讲解思路[个人的理解],具体写其实就是这个框架: 导入必要的接口 ...
- 创建企业级地理数据库——PostgreSQL版
创建PostgreSQL空间数据库 填写相应的参数,选择授权文件 报错 默认安装postgresql后,执行以上操作报错 "You must copy the latest ST_GEOME ...
- Spring Cloud认知学习(二):Feign的使用、熔断器Hystrix
Feign Feign用于声明式调用服务在上面的服务调用中,我们始终还是没有摆脱restTemplate,我们调用别的服务始终要使用restTemplate来发起.想想我们以前是怎么开发的(三层架构, ...
- linux:redis
查询: 链接 redis初了解 是一个 "开源.免费" 的高性能的 key - value 的数据库 安装 yum添加epel源 yum install epel-release ...
- 056_带标签的break和continue 057_方法的定义_形参_实参_返回值_语句块 058_方法的重载overload 059_递归算法详解_递归和迭代效率测试
056_带标签的break和continue(替代被取消的goto语句) 加个计数器: /** * 带标签的Break和Continue * * @author * */public class Te ...
- VM1038:1 (in promise) MiniProgramError {"errMsg":"navigateTo:fail webview count limit exceed"} Object解决办法
在跳转的时候,出现这,有的时候回出现,有的时候不会出现: VM1038:1 (in promise) MiniProgramError {"errMsg":"naviga ...
- 一个 .NET 开源、免费、功能强大的Windows应用卸载神器
前言 今天大姚给大家分享一个基于 .NET 开源(Apache License).免费.功能强大的Windows应用卸载神器:Bulk Crap Uninstaller. 项目介绍 Bulk Crap ...
- Q:Oracle表空间使用权限错误:ORA-01950
使用A用户账号(默认表空间tablespace_A),A用户表中插入数据报错ORA-01950 报错处理方法: 方法1:授予用户A unlimited tablespace权限 grant unlim ...
- SNMP简介
复习几组概念带内管理和带外管理区别:传送的物理通道不同.1.带内管理是管理控制信息与数据信息使用统一物理通道进行传送.当网络出现故障中断时数据传输和管理都无法正常进行.2.带外管理在于通过不同的物理通 ...