Redis非关系型数据库
程序员文章站
2022-06-18 16:57:57
...
Redis
理解nosql的概念
nosql=Not Only SQL,意为“不仅仅是SQL”,是一项全新的数据理念,泛指非关系型的数据库
关系型数据库与非关系型数据库的区别
- 关系型数据库特点
- 数据是由一张张的表组成,而且这些表与表之间有关系(一对一,一对多,多对多)
- 数据是存在硬盘上,每次访问时,是将数据从硬盘读取到内存中
- 非关系型数据库(Redis)的特点
- 数据是由一个个的键值对,键 值,键 值
- 数据是存在内存中,在满足需要的时候,也可以将数据存在硬盘上(Redis的持久化)
redis的介绍
- 什么是Redis?
redis(Remote Dictionary Server ) 远程字典服务,是一个非关系型数据库,非关系型数据库被称为NOSQL数据库
- Redis有什么用?
Redis一般用来存储经常访问的,但是不经常改变的数据
使用redis的string操作命令
set name baoqiang //添加一个键值对 如果键存在,则修改 set()
get name //根据键获取值
del name //根据键删除键值对
mget name age //根据多个键查看值
使用redis的hash操作命令
hset myhash username haohao //添加数据
hset 北京 111 冰冰
hget myhash username //根据大键和小键获取值
hdel myhash username //根据大键和小键删除值
使用redis的list操作命令
lpush mylist a b c //压栈 添加数据,键为mylist 值为:a b c
lpop mylist //从左边弹栈 删除操作,删除的顺序和添加的顺序相反
rpop mylist //从右边弹栈
使用redis的set操作命令
//这里的值不能重复
sadd myset a b c //添加数据
smembers myset //获取数据
srem myset a b //删除数据
redis的两种持久化机制
Redis持久化-RDB
就是将Redis的数据从内存中保存到硬盘上持久化之后,会在解压后的文件夹中生成一个dump.rdb文件,该文件中就保存你内存中的数据
- 1)RDB持久化是什么(重点)
指定频率将Redis数据持久化- Redis默认就支持该方式,你什么都不用做,Redis会自动的将内存的数据存储到硬盘中
- save 900 1 //900秒以内 ,如果至少有一个键的值发生变化, 则Redis自动持久化
- save 300 10 //300秒以内 ,如果至少有10个键的值发生变化, 则Redis自动持久化
- save 60 10000 //60秒以内 ,如果至少有10000个键的值发生变化, 则Redis自动持久化
Redis持久化-AOF
- 什么是AOF
每次操作立即持久化
该机制可以带来更高的数据安全性,即数据持久性 - Redis默认不支持该方式
1)所以我们需要修改配置文件,让Redis支持
2)修改配置文件:
392: appendonly no 将no改为yes
3)重启服务器
不能直接双击: redis-server.exe 而是打开startup.bat脚本文件(手动指定配置文件)
4) Redis会在解压后的文件夹中自动生成一个文件:appendonly.aof文件
5)默认情况下,AOF是一秒钟持久化一次
appendfsync everysec
上一篇: java——maven多模块项目打jar包如何把依赖包也打进去
下一篇: Linux下安装Maven