第二章 Redis介绍及安装

1、Redis概述

Redis(远程字典服务器),是完全开源免费的,用C语言编写的,遵守BSD协议,是一个高性能的(key/value)分布式内存数据库,基于内存运行,并支持持久化。是当前比较热门的NOSQL数据库之一,也被人们称之为数据机构服务器。

它提供了很多键值数据类型以用来适应不同场景下的存储需求,在目前Redis所支持的数据类型包括:

  • 字符串类型

  • 散列类型

  • 列表类型

  • 集合类型

  • 有序集合类型

  • 坐标类型

学习参考网站:Redis 教程 | 菜鸟教程

2、Redis作用

  • 内存存储和持久化:redis支持异步将内存中的数据写入到磁盘中,同时不影响继续服务

  • 取最新N个数据的操作,可以将排行或者指定信息保存在Redis集合容器内

  • 模拟类似于HttpSession(会话对象)这种需要设定过期时间的功能

  • 定时器 计数器

  • 消息的订阅和消息的发布(消息队列 主从配置)

3、Redis特点

  • 性能非常高:Redis读取速度11W次/s,写入速度8W次/s

  • 非常丰富的数据类型 :String List Hash Set ZSet等等数据类型操作

  • 原子性:Redis内所有操作都是原子性的,意味着要么成功执行,要么失败完全不执行。单个操作是原子性的,多个操作也支持事务。

  • 数据持久化:可以将内存中的数据保存在磁盘内,重启的时候可以加载进行使用

  • 其他:Redis还支持publish/subscribe 通知,key值生命周期的管理,提供了目前主流编程语言的API接口

4、Redis获取地址

复制代码
https://redis.io
http://www.redis.cn

5、Redis的安装

方式一:本地安装

#步骤1:访问官网

https://redis.io/

#步骤2:选择本地安装

GET STARTED ====> install ====> Install from source

#步骤3:下载

>> wget https://download.redis.io/redis-stable.tar.gz

#步骤4:解tar

>> tar -xzvf redis-stable.tar.gz

#步骤5:编译器的安装

>> make

>> make install

#步骤6:安装CC控件

>> dnf install gcc*

#步骤7:再次编译安装

>> make install

#步骤8:再次发生问题需要找到README.md配置文件 找到 make malloc = libc

>> make MALLOC = libc

#步骤9:再次编译安装

>> make install

如果提示为:

Hint: It's a good idea to run 'make test' ;)

INSTALL redis-server

INSTALL redis-benchmark

INSTALL redis-cli

意味着安装成功。

#步骤10:开启服务

>> redis-server

方式二:yum安装

复制代码
yum install redis -y

警告1:内存复用开启问题

解决方案:

打开/etc/sysctl.conf

写入vm.overcommit_memory=1保存

刷新sysctl -p

警告2:未指定配置文件,使用默认配置文件

使用指定配置文件redis-server /path/to/redis.conf

问题3:最大的打开文件数 增减10032(初始值1024)

设置方式:

vim /etc/security/limits.conf

追加两句并保存

root soft nofile 10032

root hard nofile 10032

相关推荐
Mr.朱鹏2 小时前
Linux 服务器 LVM 根分区在线动态扩容
linux·服务器·数据库
摇滚侠2 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 数据库初始化机制 阅读笔记 36
数据库·spring boot·笔记
qiuhaipeng12 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库
wxwx_bscxy3223 小时前
基于Python新冠疫情可视化分析系统的设计与实现
java·数据库·spring boot·python·微信小程序·sqlite
剑之所向4 小时前
.NET 官方`System.Threading.Channels`
前端·javascript·数据库
词却4 小时前
数据库基础:DQL 数据查询语言
数据库·oracle
昌原的儿子LEO6 小时前
Linux IO多路复用与SQLite数据库核心知识点总结
linux·数据库·oracle
山岚的运维笔记6 小时前
mysql 专业笔记 -- 第 8 章:使用变量
运维·数据库·笔记·后端·学习·mysql·dba
聚美智数6 小时前
网安查询-备案查询-网络安全查询API接口介绍
网络·数据库·web安全
坐吃山猪7 小时前
【多线程】Semaphore使用
java·数据库·oracle·多线程