Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日起,Redis的开发工作由VMware主持。从2013年5月开始,Redis的开发由Pivotal赞助。

一、安装Redis

  • Redis配置文件:/etc/redis.conf
  • Redis主程序:/usr/bin/redis-server
  • 客户端工具:/usr/bin/redis-cli
  • 默认监听端口:6379
  • 数据目录:/var/lib/redis
  • 服务脚本:/usr/lib/systemd/system/redis.service
yum install redis											# 基于CentOS7的epel源

二、连接Redis

Redis的客户端命令工具为redis-cli,默认连接本地的Redis服务。

如果需要远程连接则使用redis-cli -h HOST -p PORT -a PASSWD

[root@cache1 ~]# redis-cli
127.0.0.1:6379> ping # 使用ping命令测试与服务的连接性
PONG # 服务端回复pong则说明网络连接没有问题

三、Redis数据类型

  • String(字符串)

string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。

string类型是二进制安全的。意思是redis的string可以包含任何数据。比如jpg图片或者序列化的对象 。

string类型是Redis最基本的数据类型,一个键最大能存储512MB。

  • Hash(哈希)

Redis hash 是一个键值(key=>value)对集合。

Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。

  • List(列表)

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)。

  • Set(集合)

Redis的Set是string类型的无序集合。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

  • zset(sorted set:有序集合)

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

zset的成员是唯一的,但分数(score)却可以重复。

四、获取帮助

help @  + 双击tab						   # 双击tab会出现各种子命令的帮助

help @string							# 字符串相关的配置
help @list # 列表相关的配置;列表类似于数组
help @set
help @hash
......

五、List相关的命令

其他几个数据类型比较简单,通过帮助就能获得命令的使用方法。最简单的办法就是百度。由于List相关的命令仅仅看帮助的话很难理解一些操作,所以拿出来单独讲讲最常用的几个命令



示例:

127.0.0.1:6379> LPUSH stu aubin					# LPUSH,向列表左侧添加元素,列表不存在自动创建
(integer) 1
127.0.0.1:6379> RPUSH stu 22 # RPUSH,向列表右侧添加元素,列表不存在则自动创建
(integer) 2
127.0.0.1:6379> RPUSHX stu nan # RPUSHX,如果列表存在则右侧添加元素
(integer) 3
127.0.0.1:6379> LPUSHX stu linux # LPUSHX,如果列表存在则左侧添加元素
(integer) 4
127.0.0.1:6379> LRANGE stu 0 10 # LRANGE,显示名为stu的列表的0-10个值
1) "aubin"
2) "22"
3) "nan"
4) "linux" LPOP stu # 左弹,删除名为stu列表中的第一个元素
RPOP stu # 右弹,删除名为stu列表中的最后一个元素
LREM stu 3 aubin # 从头到尾删除3个值为aubin的元素
LREM stu -3 aubin # 从尾到头删除3个值为aubin的元素
LREM stu 0 aubin # 删除所有值为aubin的元素

最新文章

  1. Android Duplicate files copied in APK
  2. matlab学习第一天
  3. AngularJS结合RequireJS做文件合并压缩的那些坑
  4. 利用 druid 解析器解析SQL
  5. 深入mysql "on duplicate key update" 语法的分析
  6. Hadoop伪分布式配置:CentOS6.5(64)+JDK1.7+hadoop2.7.2
  7. POJ 2299 逆序对
  8. MongoDB (八) MongoDB 文档操作
  9. OA系统权限管理设计(转载)
  10. asp.net 批量下载实现(打包压缩下载)
  11. ASP.NET - 记住滚动条的位置
  12. Android 事件处理
  13. Android PagerAdapter的用法
  14. OC强弱引用的使用规则
  15. 只需要一点点C++基础,新手也可以制作单机游戏内存修改器
  16. Java缓存类的实际应用场景
  17. 使用Dreamweaver正则表达式替换href中的内容
  18. ubuntu18.04使用SPFlashTool提示缺少libpng12.so.0
  19. SVN 撤回已提交的代码
  20. JPush Flutter Plugin(Futter推送-极光推送)

热门文章

  1. RuntimeError: Python is not installed as a framework 错误解决办法
  2. 聊聊Java语言中的单例
  3. ch2-mysql相关
  4. 如何从MVP模式进阶到Clean模式
  5. 使用 Prometheus + Grafana 对 Kubernetes 进行性能监控的实践
  6. APP在模拟器崩溃,提示__gcd_queue_item_enqueue_hook_block_invoke
  7. ES6-字符串的扩展-模板字符串
  8. C# 剪贴板中文乱码问题
  9. HttpComponents 发送post get 请求
  10. 微软Tech Summit 2017,等你来打Call