0
点赞
收藏
分享

微信扫一扫

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)


目录

​​1 Redis 概述​​

​​2 Redis环境搭建​​

​​3 Redis的命令操作​​

​​3.1 Reids的数据结构​​

​​3.2 Reids的命令操作​​

​​4 Redis的持久化​​

1 Redis 概述

Redis是一款高性能的NoQSQL系列的非关系型数据库,那么关系型和非关系型数据库有什么区别呢?

区别

关系型数据库

非关系型数据库

常见数据库

MySQL、Oracle等

Redis、hbase、MongDB等

形式

表的形式存储

存储key:value形式;

特点

数据之间有关联关系;

数据存储在硬盘文件中;

数据之间没有关联关系;

数据存储在内存中;

以上仅是简单的对比,关系型数据库与NoSQL数据库是互补的关系,通常情况下使用关系型数据库,在适合使用NoSQL的时候使用NoSQL数据库,以弥补关系型数据库的不足。一般会将数据存储在关系型数据库中,在NoSQL数据库中备份存储关系型数据库的数据

操作关系型数据库是非常耗时的,若要经常查询一些不太经常变化的的数据,可以使用缓存的思路解决这个问题,提高整体的查询性能,提升用户体验。

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis数据结构

那么缓存的选择有很多方式,比如可以在当前服务器开辟一块内存空间,利用Map集合当做缓存,但是Map集合只能是让当前项目有缓存,对于分布式的部署来说,会有多台电脑,Map集合就不合适了,所以此时就有了非关系型数据库的用武之地。因为该类数据库数据存储在内存中,且可以部署独立的机器,可以让一个机器的所有内存被数据库独占,这是Map做不到的,因为其运行在Java虚拟机中,虚拟机只能固定分配一定空间的内存,且内存较小。如今的互联网中用Redis做缓存是比较多的。

2 Redis环境搭建

1)软件下载:直接从官网下载安装包,若不会FQ也可以从Redis中文网下载,不过后者的最新版本一般低于前者:

  • Redis教程网址:​​https://www.redis.net.cn/tutorial/3503.html​​
  • Window安装包下载:​​https://github.com/dmajkic/redis/downloads​​
  • Linux安装包下载:​​http://www.redis.net.cn/download/​​

2)安装:直接解压即可,无需安装,需要了解几个文件:

  • redis.windows.conf:配置文件;
  • redis-cli.exe:redis的客户端;
  • redis-server.exe:redis服务器端;

先双击redis-server.exe启动redis服务器,再双击redis-cli.exe打开客户端,就可以在客户端操作了

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis数据结构_02

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis_03

3 Redis的命令操作

操作Redis的方法有命令操作、Java代码方式,首先了解下Redis的数据结构,非常重要。

3.1 Reids的数据结构

Redis存储的是键值对:key,value形式的数据,其中key都是字符串,value有5种不同的数据结构:

  • 1)字符串类型 string
  • 2)哈希类型hash:map格式
  • 3)列表类型 list:linkedlist格式,允许重复
  • 4)集合类型 set:不允许重复
  • 5)有序集合类型 sortedset:自动排序,且不重复

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis的持久化配置_04

3.2 Reids的命令操作

1)字符串类型 string:

  • 存储:set key value
  • 获取:get key
  • 删除:del key

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis数据库环境搭建_05

2)哈希类型hash:map格式

  • 存储:hset key field value
  • 获取:hget key field获取指定field对应的值,hgetall key获取所有的field和value
  • 删除:hdel key field

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis命令操作_06

3)列表类型 list

列表按照插入顺序排序,可以添加元素到列表的头部或尾部。

  • 添加:lpush key value,将元素添加到列表左边;
              rpush key value,将元素添加到列表右边;
  • 获取:lrange key start end,范围获取;
  • 删除:lpop key,删除列表最左边的元素并将其返回;
              rpop key,删除列表最右边的元素并将其返回;

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis数据结构_07

4)集合类型 set:不允许重复

  • 存储:sadd key value
  • 获取:smembers key,获取集合中所有元素
  • 删除:srem key value,删除集合中的某个元素

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis的持久化配置_08

5)有序集合类型 sortedset:自动排序,且不重复

  • 存储:zadd key score value,存储数据以及数据对应的分数,是根据分数排序的;
  • 获取:zrange key start end
  • 删除:zrem key value

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis数据库环境搭建_09

6)通用命令

  • keys *:查询所有的键
  • type key:获取键对应的value类型
  • del key:删除指定的key value

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis的持久化配置_10

4 Redis的持久化

Redis是内存数据库,当Redis服务器重启或者电脑重启了,数据会丢失,可以将Redis内存中的数据持久化保存在内存的文件中,当重启后,Redis会恢复数据,保证不丢失。Redis持久化的机制:

1)RDB:默认方式,不用配置,在一定的间隔时间内,检测key的变化情况来持久化数据,这种方式对性能的影响比较低,推荐使用;
--编辑redis.windows.conf文件:
save 900 1        // after 900 sec (15 min) if at least 1 key changed
save 300 10      // after 300 sec (5 min) if at least 10 keys changed
save 60 10000  // after 60 sec if at least 10000 keys changed

修改完配置文件后需要使用命令行启动服务器:redis-server.exe redis.windows.conf,现修改为save 10 5,即10s后至少有5个key发生变化,则持久化数据,可以看到生成后缀为rdb的文件,测试效果如下:

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis命令操作_11

2)AOF:日志记录方式,可以记录每一条命令操作,每一次命令操作后来持久化数据,这种方式对性能影响较大;

--编辑redis.windows.conf文件:

  • appendonly no:默认为no,表示关闭AOF,改为yes开启
  • # appendfsync always:默认注释了,表示每一次操作都进行持久化;
  • appendfsync everysec:默认的,每隔一秒操作一次;
  • # appendfsync no:不持久化;

修改完配置文件后需要使用命令行启动服务器:redis-server.exe redis.windows.conf,现修改为appendonly yes,即每隔1s持久化一次,可以看到生成后缀为aof的文件,测试效果如下:

JavaWeb——Redis数据库之Windows下环境搭建与基本操作(Redis命令操作、Redis数据结构、Redis的持久化配置)_Redis数据结构_12

作于202008172110,已归档

———————————————————————————————————

本文为博主原创文章,转载请注明出处!

若本文对您有帮助,轻抬您发财的小手,关注/评论/点赞/收藏,就是对我最大的支持!

祝君升职加薪,鹏程万里!

举报

相关推荐

0 条评论