目录
一、Redis介绍
Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。
它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,
同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区
官方学习网站奉上:
www.redis.cn
www.redis.net.cn
推荐一篇高质量博客介绍了Redis的由来:
二、安装Redis
这里我们安装Redis是在虚拟机的Linux系统上安装并且配置了对应的MoBaXterm客户端
大家可以去参考安装虚拟机以及客户端的一些博客(我觉得MobaXterm挺好用的)
①下载安装包并且拖移至Linux服务器
安装包下载在推荐的学习网站里面
②进入到安装包的目录执行解压命令:tar -zxvf redis-5.0.0.tar.gz
③解压完毕后执行安装gccyum install gcc
④进入解压后的文件夹执行编译Redis,输入make即可
时间有点长需要等待
我们可以检查一下安装情况。输入命令:
make install
⑤修改Redis为守护进程什么是守护进程?
守护进程就是我们启动Redis之后还能输入命令,如果我们不设置守护进程你就会发行我们启动Redis之后无法输入其他的命令了,直接卡在Redis界面,这样是不符合我们的开发要求的例如下图,当我执行启动命令后没有守护模式直接卡住:启动Redis方式:
进入安装包下的src文件夹执行:./redis-server
设置守护进程方式:
这里我们先备份一份redis.conf文件,以免我们修改redis.conf文件之后不可使用了
cp redis.conf redis_bak.conf
修改redis.conf文件将daemonize no 改为 daemonize yes
因为我们安装了客户端MobaXterm,所以可以直接双击该文件修改,但是小编这里使用最原始的方式使用 vi redis.conf 进入修改界面
这时我们如何使用快速定位语句,帮助我们快速定位呢?方法就是:
/你要定位的东西,例如这里我们将daemonize no 改为 daemonize yes,那小编输入/daemonize即可快速定位,修改之后保存退出。:wq
⑥启动Redis服务与本地客户端连接测试是否连通首先我们启动的时候一定注意自己的命令所在位置,我们要执行的是src下的./redis-server,但是我们后面要加上得redis.conf确实和src同级目录下的所以这里必须注意
./src/redis-server redis.conf
我们设置了守护模式之后无法直观的知道我们是否启动redis,则通过查看是否能够连接本地客户端来验证:
./src/redis-cli,执行这条语句来连接客户端,同样在src目录下,然后输入一个ping 连接成功会自动返回一个pong
⑦配置为有密码且外部连接可以连接此Redis执行完第六步我们会发现我们连接Redis不要密码!且只能本地连接外部连接连接不上,所以我们需要继续配置。
修改redis.conf注文件中的内容:
注释掉bind 127.0.0.1这行语句并修改requirepass 123456
⑧关闭启动的Redis服务重新启动修改后的服务首先kill -9 进程pid 关闭启动的进程ip
启动redis.conf的新配置 ./src/redis-server redis.conf
⑨开放Redis端口号6379并更新防火墙firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
⑩外部redismanager链接测试
到这里我们的安装就全部完成了!!!
真的不容易哈哈哈
三、Redis常用命令
首先我们启动Redis服务与本地客户端连接
因为我们加入了守护进程,所有以前直接连接不行,必须带密码和用户端口
-h(主机ip)-p(端口) -a(密码)
接下来小编从常用的字符串、哈希表、列表分别来介绍一些常用方法,没有介绍的大家都可以查看上面分享的学习网址,里面人家都有官方的。
3.1String的常用方法
3.1.1增加String类型的数据
lg:set key
3.1.2删除String类型的数据
lg:del key
3.1.3修改String类型的数据
lg:set key
3.1.4查看String类型的数据
lg:get key
3.1.5给键值对设置过期时间
lg:setex keyname timeout value
3.1.6获取键值对剩余的存活时间
lg:ttl key
3.1.7 查看类型
lg:type key
//string 说明type返回的是键值对存储类型,而不是值存储类型
3.1.8查看所有或者指定的key
lg:keys *
3.2Hash的常用方法
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
3.2.1同时将多个field-value设置到哈希表key中
lg:hset key field1 value1 [field2 value2]
3.2.2删除指定的字段值
lg:hdel key field
3.2.3修改指定的字段值
lg:hset key field
3.2.4查询指定的字段值
lg:hget key field
3.2.5查询指定key的所有字段
lg:hgetall key
3.2.6获取指定key中的长度
lg:hlen key
3.3List的常用方法
Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
3.3.1将一个或多个值插入到列表头部
lg:lpush key value1 value2 value3
3.3.2将一个或多个值插入到列表尾部
lg:rpush key value1 value2 value3