redis是一个开源的高性能键值对数据库。它提供多种键值数据类型来适应不同场景的存储需求,并且借助许多的高层级的接口使其可以胜任,如缓存、队列系统的不同角色。
Linux版本 2.8.11 :
http://download.redis.io/releases/redis-2.8.11.tar.gz
Windows(64位)版本 2.8.9 :
https://github.com/MSOpenTech/redis/blob/2.8/bin/release/redis-2.8.9.zip?raw=true
1 下载
2.安装方式一
双击打开redis-server.exe即可:
测试:
3.安装方式二(安装到系统服务)
先删除原有的系统服务:
安装服务:
注意:
32位操作系统只能通过双击打开redis-server.exe启动,不能安装到系统服务。
由于文件系统非NFS,导致Redis启动失败:
限制Redis的最大内容:修改redis.conf
4.Redis-cli的使用
1. redis-cli的使用之发送命令
2.redis的多数据库
FLUSHALL -- 清空所有数据库的所有数据
FLUSHDB -- 清空当前所在数据库的数据
4.配置数据库数量
5.基本命令
keys * 获取符合规则的key列表
exists key 判断一个键是否存在
del key 删除键
type key 获得键的数据类型
help
HELP 空格 tab键
5.redis的数据类型
1.字符串类型
命令:get set INCR INCRBY DECR DECRBY APPEND STRLEN MSET MGET
redis之生存时间
TTL返回值:
大于0的数字:剩余生存时间,单位为秒
-1 : 没有生存时间,永久存储
-2 : 数据以及被删除
redis之清除过期时间
6.redis整合springboot
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
spring:
redis:
host: 192.168.56.101
直接注入StringRedisTemplate
对象
@RunWith(SpringRunner.class)
@SpringBootTest(classes = LyUserService.class)
public class RedisTest {
@Autowired
private StringRedisTemplate redisTemplate;
@Test
public void testRedis() {
// 存储数据
this.redisTemplate.opsForValue().set("key1", "value1");
// 获取数据
String val = this.redisTemplate.opsForValue().get("key1");
System.out.println("val = " + val);
}
@Test
public void testRedis2() {
// 存储数据,并指定剩余生命时间,5小时
this.redisTemplate.opsForValue().set("key2", "value2",
5, TimeUnit.HOURS);
}
@Test
public void testHash(){
BoundHashOperations<String, Object, Object> hashOps =
this.redisTemplate.boundHashOps("user");
// 操作hash数据
hashOps.put("name", "jack");
hashOps.put("age", "21");
// 获取单个数据
Object name = hashOps.get("name");
System.out.println("name = " + name);
// 获取所有数据
Map<Object, Object> map = hashOps.entries();
for (Map.Entry<Object, Object> me : map.entrySet()) {
System.out.println(me.getKey() + " : " + me.getValue());
}
}
}