Redis数据库

1.定义:
Redis数据库是一种非关系型数据库,高性能的缓存数据库,保存形式为key-value键值对

和关系型数据库的最大区别是:没有固定的表结构

2.特点:
单进程:

Redis的服务器程序采用的是单进程模型来处理客户端的请求。对读写时间的响应是通过对epoll函数的包装来做到的,同时拥有不错的性能

3.连接可视化
这里选择的是Redis 5.0.14 (a7c01ef4/0) 64 bit版本的数据库,可视化工具选择的是

 安装好数据库后,双击文件redis-server.exe 

 

出现如下页面即为正常连接

安装好可视化软件后,双击启动:

 

 

4.数据类型:
redis是key-value型键值对的数据结构,key只有一种类型,即为string类型

value一共有5种类型:string(最常用),list,set,hash,zset

4.1string类型
string是redis最基本的类型,可以储存string,Integer,Float型的数据,甚至是二进制数据,一个字符串的最大容量是512M

常用指令:

set添加值:

        set name dilireba

        //此时没有就设置name为dilireba

        set name yangmi

        //此时有name就覆盖为yangmi

setex设置时间:

        setex pwd 10 mima

        //此时设置pwd密码为mima,时间为10s,到期自动删除,key和value一同消失

mset多个添加:

        mset name liangliang pwd 123

append添加:

        append name wenwen

        //在name字段后面添加wenwen

get取值:

        get name

        //获取name的值

mget获取多个值:

        mget name age pwd

        //获取多个值

del删除:

        del name

        //删除name 返回1,不存在返回0

del删除多个:

        del name age

keys *:

        查看所有的键

exists 判断是否存在键:

        exists aaa

        //判断是否存在

type查看对应的值的类型:

        type name

expire修改键剩余时间:

        先设置好的键如name,此时再设置时间

        expire name 20

ttl 查看剩余时间:

        ttl name

        //返回值为-2为键不存在,-1是没有设置时间的,秒为单位

 4.2list类型
(1)列表中的值(value)类型为字符串;

(2)字符串List,底层实现上不是数组,而是链表,也就是说在头部和尾部插入一个新元素,其时间复杂度是常数级别的;其弊端是:元素定位比数组慢

(3)有序的可以重复

常用指令:

插入push:lpush和rpush

        lpush name dilireba yangmi wuxuanyi

        rpush name dilireba yangmi wuxuanyi

        //最后顺序不同,一个是朝左插入,另一个是朝右

获取 lrange:

        lrange name 0 -1

        //从左到右,0到最后,-1是最后 lrange name 0 1 从左到右

修改lset:

        lset name 1 liqin

        //格式:lset key名字 下标 值,lset name1 0 yangchaoyue 将name1中的第1个,0下标的值改为yangchaoyue

删除:

        lrem key count value

        //将列表中的前count次出现的值删除

        count>0,从前往后删

        count<0,从后向前删

        count=0,删除所有

4.3set类型:
字符串set,无序不可重复

常用指令:

插入sadd:

        sadd name_set v1 v2 v3

        //设置值,不可以设置重复的,可以设置多个值

获取所有的值:

        smembers name_set

查询是否在集合中:

        sismember name_set v1

删除:

        srem name_set v1

        //格式:srem key名字 值

获取大小:

        scard name_set

        //获取name_set的元素个数

弹出spop:

        spop key名字

        //随机弹出

smove移动元素:

        smove name_set name_set1 v3

        //将name_set中的v3移动到别的名为name_set1的key的value中去,如果没有名为name_set1的key则创建一个
 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值