1. Redis简介
Redis是一种开放源代码(BSD许可)的内存中数据结构存储,用作数据库,缓存和消息代理。Redis提供数据结构,例如字符串,哈希,列表,集合,带范围查询的排序集合,位图,超日志,地理空间索引和流。Redis具有内置的复制[集群],Lua脚本,LRU驱逐,事务和不同级别的磁盘持久性[磁盘],并通过Redis Sentinel和Redis Cluster自动分区提供了高可用性【集群】。
2. Redis的特点
- Redis读取的速度是110000次/s,写的速度是81000次/s
- 原子 。Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。线程安全
- 支持多种数据结构:string(字符串);list(列表);hash(哈希),set(集合);zset(有序集合)
- 持久化--磁盘,主从复制(集群)
- 官方不支持window系统,但是又第三方版本。 linux系统。
3. 如何安装Redis
redis软件语言是C语言。---必须安装C的环境。
3.1准备环境
1.安装redis需要的环境。yum install -y gcc-c++
2.上官网下载redis源码安装包。 ---redis-5.0.8.tar.gz
3.2 安装
1.放入centos并解压
2. 进入解压后的目录
cd redis-7.2.3
3.编译安装
make install 配置了环境变量。
启动redis服务器
redis-server redis.conf
redis-server: redis启动的脚本命令 r
edis.conf: redis配置文件的名
安装redis.conf这个配置来启动redis服务.
客户端连接redis服务器
客户端:---java代码---图形化界面----命令行的客户端
- redis-cli -h redis服务器的ip -p 端口号
- -h:如果不写默认127.0.0.1
- -p: 默认6379
4. 浅聊配置文件
默认端口号6379.
修改后台启动:
运行远程访问:
5. Redis通用命令
-
Redis默认有16个数据库,切换到第2个数据库
select 1
-
查看当前数据库key的数量
DBSIZE
-
设置一个key为username,值为mike的数据
set username mike
-
获取key为username的值
get username
-
获取所有的key
keys *
-
清除当前数据库
flushdb
-
清楚所有数据库
flushall
6. Redis基本命令
-
查询key为username是否存在
exists username
-
指定key为username移动到1号数据库
move username 1
-
指定key为username10s后过期
expire username 10
-
查看key为username还有多久过期
ttl username
-
查看key为username是什么类型
type username
7. Redis支持的数据类型
redis命令手册http://www.redis.net.cn/order/
redis支持的数据类型种类很多,其中使用最频繁的: String字符串,Hash,List队列,Set集合,ZSet有序集合等。
7.1 字符串类型。
表示里面的value的类型为字符串类型。默认可以存放512M大小的字符串内容。
常用:
1. set key value: 存放字符串类型的数据
2. get key: 获取指定key对应的value值。
3. setex key second value: 存放字符串类型的数据并设置过期时间。
4. setnx key value: 如果指定的key存在,则不设置。不存在则存入。
5. incr key: 为指定的key递增 6. decr key: 为指定的key递减
7.2 Hash类型
表示value值为Hash数据类型。 表示value又是key-value形式。
常用:
1. hset key field value: 存储哈希类型的数据
2. hget key field: 获取存在哈希表中指定字段的value值
3. hgetall key: 获取在哈希表中指定key的所有字段和值
4. hkeys key: 获取所有哈希表中的字段
5. hvals key: 获取哈希表中所有的值
6. hexists key field:查询哈希表key中,指定的字段是否存在
7.3 list类型
list表示列表类型,表示value的值为list类型。
常用:
1. lpush key value value ....: 将一个或多个值插入到列表的头部。
2. lrange key start end: 获取列表指定范围内的元素
3. linsert key before|after element value: 在列表元素前或后插入元素
4. lpop key: 移除并获取列表中的第一个元素
5. lset key index value: 修改指定下标的值
7.4 set集合
无序 不可重复的集合。
常用:
1. sadd key element element ...:向集合添加一个或多个成员
2. smembers key: 返回集合中的所有成员.
3. srem key : 移除集合中一个或多个成员
4. sinter key key..: 返回给定所有集合的交集.
7.5 zset集合
有序 元素不允许重复的集合。 有序跟属性score有关。
常用:
1. zadd key score value score value score value: 向有序集合添加一个或多个成员,或者更新已存在成员的分数
2.zrange key start end: 通过索引区间返回有序集合成指定区间内的成员
3.zrevrange key start end: 返回有序集中指定区间内的成员,通过索引,分数从高到底
六、总结
以上就是Redis入门教程的详细笔记总结,后续博客主页会继续更新关于Redis的内容!