关注公众号:CoderBuff,回复“redis”获取《Redis5.x入门教程》完整版PDF。

第一章 · 准备工作

Redis安装

Redis5.0.7下载地址:https://redis.io/download

mac OS

在下载完redis-5.0.7.tar.gz后,我们通过命令tar -zxvf redis-5.0.7.tar.gz,解压后将redis安装包拷贝到/usr/local目录下,命令sudo mv redis-5.0.7 /usr/local

进入redis安装包目录后(cd /usr/local/redis-5.0.7),执行命令安装sudo make install

出现以下信息表示安装成功:

okevindeMacBook-Air:redis-5.0.7 okevin$ sudo make install
cd src && /Library/Developer/CommandLineTools/usr/bin/make install
CC Makefile.dep
INSTALL redis-sentinel
CC redis-cli.o
LINK redis-cli
CC redis-benchmark.o
LINK redis-benchmark
INSTALL redis-check-rdb Hint: It's a good idea to run 'make test' ;) INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install

运行命令redis-server启动redis。

okevindeMacBook-Air:redis-5.0.7 okevin$ redis-server
10768:C 08 Feb 2020 19:52:40.149 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
10768:C 08 Feb 2020 19:52:40.149 # Redis version=5.0.7, bits=64, commit=00000000, modified=0, pid=10768, just started
10768:C 08 Feb 2020 19:52:40.149 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf
10768:M 08 Feb 2020 19:52:40.151 * Increased maximum number of open files to 10032 (it was originally set to 256).
_._
_.-``__ ''-._
_.-`` `. `_. ''-._ Redis 5.0.7 (00000000/0) 64 bit
.-`` .-```. ```\/ _.,_ ''-._
( ' , .-` | `, ) Running in standalone mode
|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379
| `-._ `._ / _.-' | PID: 10768
`-._ `-._ `-./ _.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' | http://redis.io
`-._ `-._`-.__.-'_.-' _.-'
|`-._`-._ `-.__.-' _.-'_.-'|
| `-._`-._ _.-'_.-' |
`-._ `-._`-.__.-'_.-' _.-'
`-._ `-.__.-' _.-'
`-._ _.-'
`-.__.-' 10768:M 08 Feb 2020 19:52:40.152 # Server initialized
10768:M 08 Feb 2020 19:52:40.152 * Ready to accept connections

出现以上信息表示启动成功。

新打开一个终端窗口,输入命令redis-cli测试连接redis服务。

okevindeMacBook-Air:redis-5.0.7 okevin$ redis-cli
127.0.0.1:6379>

出现以上信息表示已经可以通过命令行和redis服务交互了。

第二章 · 数据类型

Redis是一个“数据库”,当然它是一个基于缓存的非关系型数据库。

Redis一共有5种常用的数据类型:字符串(string)、列表(list)、哈希(hash)、集合(set)、有序集合(zset)。Redis是一个key-value形式的存储系统,key是一个“字符串”,而value对应的则是前面提到的5种数据类型

在对Redis进行正式接触前,我们先来认识这5种数据类型。

字符串(string)

这是最常见和最容易理解的一种数据类型,它表示存储在redis中的值是一个“字符串”类型的数据。但实际上,它还能存储整型数据,后面我们将通过INCR命令,对值进行自增操作。

列表(list)

列表(list)也可以理解为数组,和在Java中的List类型类似。略微不同的是,Java中的列表可以是泛型类型,也就是说Java中的List数据结构可以是字符串、整型等。而在redis中列表中的数据类型则只有字符串类型。

哈希(hash)

又称“散列”,这种数据类型类似于Java中的Map类型。初学者可能会疑惑,前面的“字符串”类型,一个key一个value不就是Map类型么。

实际上,在本文开头提到,redis是一种key-value形式的存储系统,我们所说的redis数据类型指的是value的数据类型。所以哈希(hash)也就是value是类似Map的一种数据类型。在后面的章节中我们会更直观的感受到。

集合(set)

set类型在redis中被称为集合,同样它和Java的Set集合相同。和redis的列表(list)类似,不同地是,列表(list)的数据是可以重复的且是插入有序,而集合(set)中的数据是不可重复的且是无序。

有序集合(zset)

有序集合(zset)尽管看起来是集合(set)类型多了“有序”的特性。但实际上,可以说它和哈希(hash)更相似。因为它和哈希(hash)一样也是Map类型,不同地是它的key是实际上的成员,而value则是用于排序的“分值”。这个特性能帮助我们快速的实现“点赞数最高倒序排列”等功能。

关注公众号:CoderBuff,回复“redis”获取《Redis5.x入门教程》完整版PDF。

这是一个能给程序员加buff的公众号 (CoderBuff)

《Redis5.x入门教程》之准备工作、数据类型的更多相关文章

  1. 《Redis5.x入门教程》正式推出

    关注公众号CoderBuff回复"redis"可抢先获取<Redis5.x入门教程>PDF完整版 在<ElasticSearch6.x实战教程>之后,又斗胆 ...

  2. C语言入门教程-(3)基本数据类型

    1.数据类型 在C语言中,数据类型指的是用于声明不同类型的变量或函数的一个广泛的系统.C语言数据类型可以分为四种: 1.基本类型:它们是算术类型,包括两种类型:整数类型和浮点类型. 2.枚举类型:它们 ...

  3. MongoDB入门教程三[数据类型]

    MongoDB的文档使用BSON(Binary JSON)来组织数据,BSON类似于JSON,JSON只是一种简单的表示数据的方式,只包含了6种数据类型(null.布尔.数字.字符串.数组及对象),不 ...

  4. [ Python入门教程 ] Python字典数据类型及基本操作

    字典是Python中重要的数据类型,字典是由"键-值"对组成的集合,"键-值"对之间用逗号隔开,包含在一对花括号中.字典中的"值"通过&qu ...

  5. Redis入门教程:特性及数据类型的操作

    虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...

  6. 《JavaScript语言入门教程》记录整理:入门和数据类型

    目录 入门篇 js介绍 历史 基本语法 数据类型 概述 null 和 undefined 数值 字符串 对象 函数 数组 本系列基于阮一峰老师的<JavaScrip语言入门教程>或< ...

  7. Python开发的入门教程(一)-数据类型、变量

    介绍 Python第一门课程,是Python开发的入门教程,将介绍Python语言的特点和适用范围,Python基本的数据类型,条件判断和循环,函数,以及Python特有的切片和列表生成式. Pyth ...

  8. 转载:TypeScript 简介与《TypeScript 中文入门教程》

    简介 TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程.安德斯·海尔斯伯格,C#的首席架构 ...

  9. Power BI入门教程

    题记:这篇文章不仅是Power BI的入门教程,同时相对于Qlik Sense进行了简单比较. 最近把一个Qlik Sense的示例应用手动转成了Power BI的应用,把相关步骤和遇到的问题记录如下 ...

随机推荐

  1. CMS总结

    过程 初始标记 从roots(例如:thread stack引用的对象,static对象),新生代对象,标记直接引用的老年代对象. 并发标记 利用初始标记阶段标记的对象,递归标记整个老年代. 该阶段与 ...

  2. Sql Server执行一条Update语句很慢,插入数据失败

    今天同事要我修改服务器数据库里面的2条数据,查看服务器上的SQL Server数据库的时候,发现这几天数据没有添加成功,然后发现磁盘很快就满了,执行Update语句时,执行半天都提示还在执行,查询语句 ...

  3. mongodb学习(三)——函数使用的小技巧

    $group 下 $sum 函数 Returns a sum of numerical values. Ignores non-numeric values 只能对数字求和,非数字没有作用 查询一段时 ...

  4. 线性基 - 寻找异或第K大

    XOR is a kind of bit operator, we define that as follow: for two binary base number A and B, let C=A ...

  5. 让VS2019支持.NET Core WinForms和WPF设计器的临时办法(转)

    .net core 3.0 Preview 6,vs2019 16.1.4 暂时还不支持Winform designer 解决方案: 将Form1修改为其他名字 WinForm   编辑项目文件  加 ...

  6. python认识及环境变量

    什么是python? python是一种脚本语言,是高级语言.计算机只能识别机器语言,在机器语言上是汇编语言,再往上是高级语言.高级语言的基础是C语言. python语言较为简单,易入门. pytho ...

  7. Docker学习(九)Volumn容器间共享数据

    Docker学习(九)Volumn容器间共享数据 volume是什么 volume在英文中是容量的意思, 在docker中是数据卷的意思,是用来保存数据的容器 为什么要进行数据共享 在集群中有多台to ...

  8. Mysql.新建数据库和用户

    //建立数据库 drop database if exists 你的db名; create database 你的db名 CHARACTER SET utf8 COLLATE utf8_general ...

  9. 影响K8S Pod分配和调度策略的两大关键特性

    在Kubernetes中有一个最复杂的调度器可以处理pod的分配策略.基于在pod规范中所提及的资源需求,Kubernetes调度器会自动选择最合适的节点来运行pod. 但在许多实际场景下,我们必须干 ...

  10. Oracle GoldenGate Best Practices: Active-Active Configuration with DML Auto CDR

    Executive Overview This document is an introduction to Oracle GoldenGate (DIPC remote agent)’s best ...