当前位置: 首页 > article >正文

Redis从入门到入门(上)

1.Redis概述

文章目录

    • 1.Redis概述
      • 1.1 什么是Redis
      • 1.2 Redis的应用场景
    • 2.Linux下Redis的安装与使用
      • 2.1 Redis下载
      • 2.2 Redis的启动
      • 2.3 Redis配置
      • 2.4 连接Redis

1.1 什么是Redis

Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库,官方提供测试数据,50个并发
执行100000个请求,读的速度是110000次/s,写的速度是81000次/s ,且Redis通过提供多种键值数据类
型来适应不同场景下的存储需求,目前为止Redis支持的键值数据类型如下:

  • 字符串类型 string
  • 散列类型 hash
  • 列表类型 list
  • 集合类型 set
  • 有序集合类型 sortedset

1.2 Redis的应用场景

  • 缓存(数据查询、商品库存等)
  • 任务队列(商品秒杀、抢购、12306等)
  • 网站访问统计
  • 数据过期处理(可以精确到毫秒)
  • 分布式集群架构中的session分离

2.Linux下Redis的安装与使用

2.1 Redis下载

1.官方下载:https://redis.io/downloads/

通过wget命令直接下载redis,省去上传的麻烦

yum -y install wget
wget https://download.redis.io/releases/redis-6.2.9.tar.gz

2.安装gcc 9编译器

因为是编译官方的redis源码进行使用,redis是采用c语言编写,所以我们要使用gcc编译器对redis进行编译

yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash

注意:

  1. 以上的命令需要全程保持联网状态,因为需要联网安装下载源和gcc相关的安装包

  2. 在执行第二条命令的时候会有error:Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64

问题的原因是:CentOS7的SCL源在2024年6月30日停止维护了。当SCL源里面默认使用了centos官方的地址,无法连接,需要替换为阿里云

  1. 解决办法:

1)重命名原来的文件

cd /etc/yum.repos.d/
mv CentOS-SCLo-scl.repo CentOS-SCLo-scl.repo.bak
mv CentOS-SCLo-scl-rh.repo CentOS-SCLo-scl-rh.repo.bak

2)编辑文件并保存

vim CentOS-SCLo-scl-rh.repo

需要粘贴的内容:

[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo

原文连接:https://blog.csdn.net/xcdm100/article/details/140713208

3.解压并编译已下载的redis安装包

解压到/home路径下

tar -zxvf tar -zxvf redis-6.2.9.tar.gz -C /home

进入redis根目录

cd /home/redis-6.2.9/

编译redis源码

make

注意:

  1. 遇到问题:zmalloc.h:50:10: fatal error: jemalloc/jemalloc.h: 没有那个文件或目录

  2. 解决办法:使用以下命令编辑

make MALLOC=libc

成功编译

image-20240829170728708

2.2 Redis的启动

进入redis目录下的src目录

cd /home/redis-6.2.9/src

启动redis服务器

./redis-server

启动成功(默认端口:6379)

image-20240829171550279

启动过程中如果遇到问题:# Failed listening on port 6379 (TCP), aborting.

是因为端口号被占用

可以使用命令:ps -ef | grep redis查看端口使用情况,杀死这个端口:kill -9 端口号,再使用命令:./redis-server启动即可成功

2.3 Redis配置

配置redis后台启动并设置连接密码

vim /home/redis-6.2.9/redis.conf 

输入::/daemon*查找daemon*的位置

将no修改为yes:daemonize yes后台启动

image-20240829173100550

设置连接密码为123456:requirepass 123456

image-20240829173351638

启动redis,需要让其根据配置文件启动

./redis-server /home/redis-6.2.9/redis.conf 

查看是否启动

ps -ef | grep "redis*"

image-20240829173619600

查看端口6379占用情况

netstat -anp|grep 6379

image-20240829173714136

如果想要停止redis服务

./redis-cli -a 123456 shutdown

2.4 连接Redis

./redis-cli -h 127.0.0.1 -p 6379 -a 123456

-h:代表连接的主机
-p:代表连接的端口号
-a:代表密码

./redis-cli -p 6379 -a 123456

image-20240829175604351


http://www.kler.cn/news/290093.html

相关文章:

  • springboot党员之家服务系统小程序论文源码调试讲解
  • Python知识点:如何使用Python实现强化学习机器人
  • 单片机与人工智能:融合创新的未来之路
  • 【LVGL- 组 lv_group_t】
  • 代码随想录算法训练营第五十六天 | 图论part06
  • 基于STM32的猫狗宠物喂养系统设计(微信小程序)(215)
  • k8s使用报错
  • JavaScript 作用链
  • [C++11#46](三) 详解lambda | 可变参数模板 | emplace_back | 默认的移动构造
  • RESTful基本要求
  • 【MySQL 15】使用 C/C++ 连接数据库
  • 电商行业如何借助BI工具重构“人、货、场”,实现数字化转型?
  • Win32绕过UAC弹窗获取管理员权限
  • 网络安全 加密编码进制
  • 网络安全硬件
  • 区块链Hyperledger Fabric2.2 环境搭建
  • IPSec 参数
  • LeetCode 热题100-64 搜索二维矩阵
  • Spark的Web界面
  • 20240831-PostgreSQL小课持续更新
  • Unity(2022.3.41LTS) - UI详细介绍-Dropdown(下拉列表)
  • 《机器学习》周志华-CH4(决策树)
  • (六)进入MySQL 【MySQL高阶语句】
  • Oracle 和 PostgreSQL 主从对比介绍
  • 基于SpringBoot的校园闲置物品交易管理系统
  • 【linux】Cannot find a valid baseurl for repo: base/7/x86_64、linux常见的命令
  • docker实战基础四(如何在容器中调试和排查运行问题)
  • RFID光触发标签与端口自检功能新型光交箱哑资源管理方案
  • 基于深度学习的植物虫害检测
  • UDP报文结构