redis5.0安装和开机启动

2024-03-13 09:48
文章标签 安装 启动 开机 redis5.0

本文主要是介绍redis5.0安装和开机启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一,添加用户,下载,授权,安装

groupadd -r redis && useradd -r -g redis -s /sbin/nologin -M redis
yum install wget gcc make -y
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
tar -zvxf redis-5.0.7.tar.gz
mv /root/redis-5.0.7 /usr/local/redis
chown -R redis.redis /usr/local/redis
chmod 755 /usr/local/redis
cd /usr/local/redis
make
make PREFIX=/usr/local/redis install

二,配置文件

vim /usr/local/redis/redis.conf

1 设置后台方式启动

通过 /daemonize  查找到属性,默认是no,更改为yes即可。

2 设置日志文件

logfile = "/var/log/redis/redis.log"

创建日志文件夹和授权

mkdir  /var/log/redis
chown -R redis.redis /var/log/redis

3 设置密码

requirepass  123456

三,复制客户端脚本到bin目录,客户启动。

cp /usr/local/redis/bin/redis-cli  /usr/bin/redis-cli

四,启动和停止

启动:sudo -u redis /usr/local/redis/bin/redis-server  /usr/local/redis/redis.conf 
停止:sudo -u redis /usr/local/redis/bin/redis-cli -h 172.16.0.38 -p 6379 shutdown

五,测试连接
redis-cli -h 172.16.0.36 -p 6379 -a 123456

六,配置Redis开机启动

#创建服务文件
vim /usr/lib/systemd/system/redis.service

[Unit]
Description=Redis Server
After=network.target[Service]
User=redis
Group=redis
Type=forking
ExecStart=/usr/local/redis/bin/redis-server  /usr/local/redis/redis.conf
ExecStop=/usr/local/redis/bin/redis-cli -h 172.16.0.38 -p 6379 shutdown
Restart=always
PrivateTmp=true[Install]
WantedBy=multi-user.target

重新加载
systemctl daemon-reload
#设置Redis服务开机启动
systemctl enable redis
#启动Redis服务
systemctl start redis
systemctl status redis
systemctl stop redis

访问:redis-cli -h 172.16.0.38 -p 6379 -a 123456

故障

Job for redis.service failed because the control process exited with error code. See "systemctl status redis.service" and "journalctl -xe" for details.
日志文件是root 用户 和root 用户组,授权或删除
ll /var/log/redis/

七 redis使用

1 连接

无密码连接

连接redis
redis-cli -h 127.0.0.1 -p 6379[root@redis ~]# redis-cli
127.0.0.1:6379> ping
PONG127.0.0.1:6379> get key127.0.0.1:6379> info

带密码连接

第一种
redis-cli -h 127.0.0.1 -p 6379 -a password第二种
127.0.0.1:6379> AUTH password
OK
127.0.0.1:6379> set k1 v1
OK

关闭命令pkill redis   kill

关闭前先执行bgsave

2 redis动态增加内存,动态配置,不需要重启

redis 127.0.0.1:6379> config get maxmemory
1) "maxmemory"
2) "3221225472"
redis 127.0.0.1:6379> config set maxmemory 4294967296
OK
redis 127.0.0.1:6379> config get maxmemory
1) "maxmemory"
2) "4294967296"

3 参数

redis 127.0.0.1:6379> config get *
CONFIG SET
CONFIG SET parameter value
CONFIG SET 命令可以动态地调整 Redis 服务器的配置(configuration)而无须重启。
你可以使用它修改配置参数,或者改变 Redis 的持久化(Persistence)方式。
CONFIG SET 可以修改的配置参数可以使用命令 CONFIG GET * 来列出,所有被 CONFIG SET 修改的配置参数都会立即生效。

4 rdb文件恢复

先停掉redis

find  / -name dump.rdb

将dump.rdb文件复制到所在文件目录下

重启redis

配置文件设置

appendonly no

5 查看有多少个key

DBSIZE
查看某个Key是否存在
EXISTS k1 

状态码:
0 表示这个key不存在 
1 表示这个key存在
N 表示存在N个key

删除key
DEL k1 
DEL k1 k2 

状态码:
0   表示这个key不存在
1   表示这个key存在,并且删除成功了
N   表示N个key存在,并且删除成功了N个key

设置过期时间
EXPIRE k1 10

状态码:
0   这个key不存在
1   这个key存在,并且设置过期时间成功
 

6 RDB和AOF介绍

RDB:类似于快照的形式,当前内存里的状态持久化到硬盘里
优点:压缩格式/恢复速度快
缺点:不是实时的,可能会丢失数据,操作比较重
    
AOF:类似于mysql的binlog,可以设置为每秒/每次操作以追加的形式持久化
优点:安全,最多损失1秒的数据,可读
缺点:文件比较大,恢复速度慢

配置RDB
save 900 1
save 300 10
save 60 10000
dbfilename redis.rdb
dir /app/data/redis_6379/

RDB结论
1.没有配置save参数时,shutdown不会持久化保存
2.没有配置save参数时,可以手动执行bgsave触发持久化
3.在配置了save参数后,shutdown,kill,pkill都会自动触发bgsave
4.恢复的时候,rdb文件名要和配置文件里写的一样。
5.RDB高版本兼容低版本,低版本不兼容高版本。

AOF配置
appendonly yes
appendfilename "redis.aof"
appendfsync everysec

结论:
当aof和rdb同时存在时,重启redis会优先读取aof的内容。

aof和rdb实验
实验背景:
aof和rdb同时存在的时候,redis重启会读取哪一个数据?
实验步骤:
set k1 v1
set k2 v2 
bgsave 
RDB k1 k2
mv redis.rdb /opt/  flushall
set k3 v3
set k4 v4
AOF k3 k4
mv redis.aof /opt/pkill redis
rm -rf /data/redis_6379/*
mv /opt/redis.rdb .
mv /opt/redis.aof .redis-server /opt/redis_6379/conf/redis.conf
redis-cli 
keys * 
结论:
当aof和rdb同时存在时,重启redis会优先读取aof的内容。

如何选择是rdb还是aof

https://redis.io/topics/persistence
1.开启混合模式
2.开启aof
3.不开启rdb
4.rdb采用定时任务的方式定时备份

8 aof文件故障模拟实验结论
1.aof文件损坏之后,使用修复工具,一刀流,从aof文件出错的地方开始到最后全部删掉
2.任何操作之前,先备份数据
3.aof备份一般情况最多损失1秒的数据

9.实验:如果设置了过期时间,恢复数据会如何处理
1.aof文件会记录下过期的时间
2.恢复的时候会去对比记录的过期时间和当前时间,如果超过了,就删除key
3.key的过期时间不受备份恢复影响


禁用危险命令
rename-command CONFIG ""
rename-command KEYS ""
rename-command SHUTDOWN ""
rename-command FLUSHALL ""
rename-command DEL ""
rename-command FLUSHDB ""

7 应用场景

1.缓存-键过期时间把session会话存在redis,过期删除缓存用户信息,缓存Mysql部分数据,用户先访问redis,redis没有再访问mysql,然后回写给redis商城优惠卷过期时间
2.排行榜-列表&有序集合热度/点击数排行榜直播间礼物积分排行
3.计数器-天然支持计数器帖子浏览数视频播放数评论数点赞/踩
4.社交网络-集合粉丝共同好友 兴趣爱好标签
5.消息队列-发布订阅配合ELK缓存收集来的日志

多种数据结构
  字符串,哈希,列表,集合,有序集合,地理位置


数据持久化
  所有的数据都运行在内存中
  支持2种格式持久化数据AOF RDB AOF&RDB
自带多种高可用架构
  主从
  哨兵
  集群

redis官网
https://redis.io/

版本选择
2.x     very old
3.x     redis-cluster 
4.x     混合持久化
5.x     新增加了流处理类型 最新稳定版 

这篇关于redis5.0安装和开机启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/804443

相关文章

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

mac安装redis全过程

《mac安装redis全过程》文章内容主要介绍了如何从官网下载指定版本的Redis,以及如何在自定义目录下安装和启动Redis,还提到了如何修改Redis的密码和配置文件,以及使用RedisInsig... 目录MAC安装Redis安装启动redis 配置redis 常用命令总结mac安装redis官网下

如何安装 Ubuntu 24.04 LTS 桌面版或服务器? Ubuntu安装指南

《如何安装Ubuntu24.04LTS桌面版或服务器?Ubuntu安装指南》对于我们程序员来说,有一个好用的操作系统、好的编程环境也是很重要,如何安装Ubuntu24.04LTS桌面... Ubuntu 24.04 LTS,代号 Noble NumBAT,于 2024 年 4 月 25 日正式发布,引入了众

如何安装HWE内核? Ubuntu安装hwe内核解决硬件太新的问题

《如何安装HWE内核?Ubuntu安装hwe内核解决硬件太新的问题》今天的主角就是hwe内核(hardwareenablementkernel),一般安装的Ubuntu都是初始内核,不能很好地支... 对于追求系统稳定性,又想充分利用最新硬件特性的 Ubuntu 用户来说,HWEXBQgUbdlna(Har

python中poetry安装依赖

《python中poetry安装依赖》本文主要介绍了Poetry工具及其在Python项目中的安装和使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前言1. 为什么pip install poetry 会造成依赖冲突1.1 全局环境依赖混淆:1

windows端python版本管理工具pyenv-win安装使用

《windows端python版本管理工具pyenv-win安装使用》:本文主要介绍如何通过git方式下载和配置pyenv-win,包括下载、克隆仓库、配置环境变量等步骤,同时还详细介绍了如何使用... 目录pyenv-win 下载配置环境变量使用 pyenv-win 管理 python 版本一、安装 和

bat脚本启动git bash窗口,并执行命令方式

《bat脚本启动gitbash窗口,并执行命令方式》本文介绍了如何在Windows服务器上使用cmd启动jar包时出现乱码的问题,并提供了解决方法——使用GitBash窗口启动并设置编码,通过编写s... 目录一、简介二、使用说明2.1 start.BAT脚本2.2 参数说明2.3 效果总结一、简介某些情

Linux下MySQL8.0.26安装教程

《Linux下MySQL8.0.26安装教程》文章详细介绍了如何在Linux系统上安装和配置MySQL,包括下载、解压、安装依赖、启动服务、获取默认密码、设置密码、支持远程登录以及创建表,感兴趣的朋友... 目录1.找到官网下载位置1.访问mysql存档2.下载社区版3.百度网盘中2.linux安装配置1.

Kibana的安装和配置全过程

《Kibana的安装和配置全过程》Kibana是一个开源的数据分析和可视化平台,它与Elasticsearch紧密集成,提供了一个直观的Web界面,使您可以快速地搜索、分析和可视化数据,在本文中,我们... 目录Kibana的安装和配置1.安装Java运行环境2.下载Kibana3.解压缩Kibana4.配

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现