Redis(常用命令)

Redis

什么是Redis

  1. 也是一个款数据库,MySql存储是存储到硬盘中,但是Redis是存储到内存中
  2. 读取块,但是数据不安全

应用场景

  • 热点数据,或经常查询的数据,一般放在redis中

NOSQL

  • 不仅仅是数据库,指的就是非关系型数据库,它是关系型数据库的有益补充。最终的数据还是存储在关系型数据库中。用于提升查询的速度,一般是用来做缓存使用,虽然也是数据库,但是对数据格式没有要求

服务器

  1. 服务启动(端口)
redis-server --port 6379
# 指定配置文件启动
redis-server.exe 配置文件名
  1. 客户端连接
# -h ip地址 -p 端口号
redis-cli [-h ip -p port]
  1. 配置文件启动
    1. 作用:将所有的配置写到配置文件中然后在启动
    2. daemonize: 可以设置redis后台启动
    3. dir:配置数据目录
# 后台启动
daemonize yes
port 6379
# ip地址
bind 127.0.0.1
# 日志存放路径
dir ./data
# 日志的文件名
logfile "logfile.log"

数据类型

String

命令作用
set 建 值如果键不存在就添加,存在就修改
mset key1 value1 key2 value2添加多个
setnx key value如果不存在就添加,存在不做任何操作
append key value在之前的键上增加内容
strlen key获取字符串长度
get key获取key对应的value

list

数据结构

是一个双向链表格式,可以从左边添加也可以从右边添加,同理也可以从左边删除,也能从右边删除

常用命令
命令作用
lpush key value从左边开始添加
rpush key value从右边开始添加
lpop key删除最左边的一个
rpop key删除最右边的一个
lrange key 开始位置 结束位置获取部分数据开始位置一般是 0 结束位置一般是-1查询全部
lindex listkey index(索引)查询索引位置的值
llen key得到list类型的长度
图解

在这里插入图片描述

Set

数据结构
  • 不容许有重复的key
  • 相当于将hash中的fieldkey拿来当做value
常用命令
命令作用
sadd key value1 value2…添加数据
srem key value1 value2删除数据
smembers key查询所有的数据
sismember key value查询某一个数据是否存在
scard查看有多少个数据

hash

存储的数据结构

hash<String,Map<String ,String>>

命令作用
hset key fieldkey value添加数据
hmset key fieldkey value fieldkey1 value1…添加多个数据
hget key fieldkey获取数据
hmget key fieldkey1 fieldkey2获取多个数据
hdel key fieldkey删除fieldkey对应的数据

key 相关的命令

命令作用
del key删除可以对应的value
expire key time设置一个key能存活多久时间单位秒
ttl key查看一个key还能存活多久
keys *查看所有的key
type key查看key对应的数据类型

DB指令

命令作用
select 数据库编号 (select 1->表示切换到到db(1)数据库)切换数据库
flushdb删除当前数据库所有的内容
flushall删除全部数据库的所有内容

JEdis的使用步骤

  1. 导包

    jedis-3.1.0.jar
    
  2. 获取链接

    Jedis jedis=new Jedis("ip地址",端口号)
  3. 使用

    方法和命令一样

Redis持久化

  1. 目的:防止数据丢失对数据进行备份(磁盘)
  2. 实现方式:
    1. 直接拷贝内存中的数据保存到磁盘(RDB)
    2. 保存操作过程(AOF)

RDB

  1. 手动备份 直接执行save指令(了解)

    执行原理:

    因为redis是单线程的程序,是队列模式进行保存,如果当中途某一个数据比较大,会让后续任务等待。

  2. basave(background save)

    1. savae指令执行时会祖册redis的进程
    2. bgsave会创建子子进程去执行备份操作,不会阻塞后续任务
  3. 配置频率

    1. save 秒 次数 -> 当key在指定的秒数内key达到了指定的次数就备份
    2. 底层任然使用的bgsave指令
    daemonize yes
    port 6379
    bind 127.0.0.1
    dir ./data
    # 日志路径
    logfile "logfile.log"
    # 备份路径
    dbfilename "mydump.rdb"
    # 指定时间和指定key的改变次数进行备份
    save 10 2
    
    

AOF(记录日志)

  • 使用步骤
  1. 修改配置文件
    1. appendonly yes
    2. appdenfilename “append.aof”
    3. appendfsync everysec

AOF的重写机制

  • 目的:去掉没有意义的指令记录
  • 实现方式:
    • 手动:bgrewriteaof,压缩aof文件

AOF(记录日志)

  • 使用步骤
  1. 修改配置文件
    1. appendonly yes
    2. appdenfilename “append.aof”
    3. appendfsync everysec

AOF的重写机制

  • 目的:去掉没有意义的指令记录
  • 实现方式:
    • 手动:bgrewriteaof,压缩aof文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值