redis简介和配置教程

redis简洁版教程

一、概述

1、简介

Redis是一个高性能的 key-value 数据库。

2、特点

  1. Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  2. Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  3. Redis支持数据的备份,即master-slave模式的数据备份。

3、优势

  1. 性能高
    Redis能读的速度是110000次/s,写的速度是81000次/s 。
  2. 数据类型丰富
    Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  3. 原子性
    Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
    Redis还支持 publish/subscribe, 通知, key 过期等等特性

redis运行在内存中,可以持久化到磁盘

二、配置

  1. 配置文件位置
    redis配置文件位于 Redis 安装目录下,以conf为文件后缀。如下所示
  2. 获取配置文件内容
    首先开启redis服务,然后打开redis-cli,如下所示。

在该命令窗口使用以下命令

sql 复制代码
# 获取查看所有配置项名称
config  get * 
# 根据配置项名获取配置
config get dbfilename
  • 获取所有配置
  • 根据配置名获取配置
  1. 设置配置文件
    命令格式如下所示:
sql 复制代码
# 语法
config set 配置名 配置内容
# 示例
 CONFIG SET loglevel "notice"
  1. 以下是一些常见的配置项和其意义:
  • daemonize yes/no:是否作为守护进程运行。如果设置为yes,Redis将在后台运行,并将输出写入到错误日志文件中。默认值为no。
  • pidfile /path/to/pidfile:指定Redis服务器进程的PID文件。默认值为/var/run/redis_6379.pid。
  • port 6379:指定Redis服务器监听的端口。默认值为6379。
  • bind 127.0.0.1:指定Redis服务器绑定的IP地址。默认值为127.0.0.1,即只接受本机连接。
  • timeout 0:指定客户端连接的超时时间(秒)。默认值为0,表示不超时。
  • loglevel notice:指定日志级别。默认值为notice。
  • logfile /path/to/logfile:指定日志文件路径。默认值为/var/log/redis.log。
  • databases 16:指定Redis服务器启动时默认打开的数据库数目。默认值为16。
  • save <seconds> <changes>:指定Redis的持久化策略。默认值为save 900 1,即如果在900秒内至少有1个key值发生改变,则进行持久化。
  • rdbcompression yes/no:指定是否启用RDB持久化数据的压缩。默认值为yes。
  • dbfilename dump.rdb:指定RDB持久化数据的文件名。默认值为dump.rdb。
  • dir /path/to/dir:指定Redis存储RDB持久化数据的目录。默认值为当前工作目录。

除了以上常见的配置项外,Redis还提供了许多其他配置项,可以根据实际需要进行配置。在编辑完配置文件后,需要重新启动Redis服务器才能使新的配置生效。可以使用以下命令来重新启动Redis服务器:

shell 复制代码
redis-cli shutdown

这将关闭正在运行的Redis服务器进程,并重新启动一个新的进程来应用新的配置。

相关推荐
是阿楷啊14 分钟前
Java大厂面试场景:音视频场景中的Spring Boot与微服务实战
spring boot·redis·spring cloud·微服务·grafana·prometheus·java面试
逍遥德16 分钟前
Sring事务详解之02.如何使用编程式事务?
java·服务器·数据库·后端·sql·spring
笨蛋不要掉眼泪16 分钟前
Redis哨兵机制全解析:原理、配置与实战故障转移演示
java·数据库·redis·缓存·bootstrap
Coder_Boy_31 分钟前
基于SpringAI的在线考试系统-整体架构优化设计方案
java·数据库·人工智能·spring boot·架构·ddd
fen_fen9 小时前
Oracle建表语句示例
数据库·oracle
砚边数影11 小时前
数据可视化入门:Matplotlib 基础语法与折线图绘制
数据库·信息可视化·matplotlib·数据可视化·kingbase·数据库平替用金仓·金仓数据库
orange_tt11 小时前
Djiango配置Celery
数据库·sqlite
云小逸12 小时前
【nmap源码学习】 Nmap网络扫描工具深度解析:从基础参数到核心扫描逻辑
网络·数据库·学习
肉包_51112 小时前
两个数据库互锁,用全局变量互锁会偶发软件卡死
开发语言·数据库·c++
霖霖总总12 小时前
[小技巧64]深入解析 MySQL InnoDB 的 Checkpoint 机制:原理、类型与调优
数据库·mysql