Redis数据库

安装配置

1、Windows安装
(1)双击可执行文件 Redis-x64-3.2.100.msi
在这里插入图片描述
(2)任务管理器关闭Redis服务
在这里插入图片描述
(3)启动服务端,这个黑窗口不能关闭
redis-server
在这里插入图片描述
(4)打开新的黑窗口,启动服务端
redis-cli
在这里插入图片描述
2、Ubuntu安装

sudo apt-get install redis-server
重启服务
service redis restart

3、Windows远程连接Ubuntu上的redis
(1)进入到配置文件的目录

cd /etc/redis

(2)打开配置文件

sudo vim redis.conf 

(3)修改配置文件

requirepass 123456
bind 0.0.0.0
protected-mode no

(4)重启服务

sudo service redis restart

(5)查看ip

ifconfig

(5)远程连接

C:\Users\Administrator>redis-cli -h 192.168.12.186 -p 6379
192.168.12.186:6379> auth 123456
OK

图形化界面

直接双击安装 redis-desktop-manager-0.9.3.817.exe
在这里插入图片描述

数据类型

1、String类型

设置键值

set key value 

set name liuhaoran
set age 22

设置键值以及过期时间,以秒为单位

setex key seconds value

setex name 5  fuhaozhen

根据键获取值,如果不存在此键则返回nil

get key

get name

根据多个键获取多个值

mget key[key...]

mget name age gender

将键对应的值加1

incr key

incr age

将键对应的值加一个整数

incrby key increment

incrby age 3

将键对应的值减1

decr key

decr age

将键对应的值减去一个整数

decrby key decrement

decrby age 5

给键追加一个值

append key value

append name fuhaozhen

获取键对应的值的长度

strlen key

strlen name

2、键操作

查找键

keys pattern

查找以a开头的键
keys  ^a

判断键是否存在,如果存在返回1,不存在返回0

exists key [key...]

exists name age

查看键对应的值的类型

type key

type name

删除键以及对应的值

del key value

del name fuhaozhen

设置过期时间,以秒为单位

expire key seconds

expire name 10

查看有效时间,以秒为单位

ttl key

ttl name

3、hash
hash用于存储对象,对象的格式为键值对

设置单个属性

hset key field value

hset obj name fuhaozhen

设置多个属性

hmset key field value[field value...]

hmset obj gender female age 22

获取一个属性的值

hget key field

hget obj name

获取多个属性的值

hmget key field[field...]

hmget obj name gender age

获取所有属性的值

hgetall key

hgetall obj

返回包含属性的个数

hlen key

hlen obj

获取所有值

hvals key

hvals obj

判断属性是否存在

hexists key field

hexists obj name

删除属性以及值

hdel key field[field..]

hdel obj name

返回键对应的值的字符串长度

hstrlen key field

hstrlen obj age

4、list

在头部插入元素

lpush key value[value..]

lpush list1 1

在尾部插入元素

rpush key value[value..]

rpush list1 5

在一个元素的前后插入新元素

linsert key before|after pivot value

在5前面|后面插入4
linsert list1 before|after 5 4

设置指定索引的元素值

lset key index value

把5改成five
lset list1 2 five

移除并返回键对应的list的第一个元素

lpop key

lpop list1

移除并返回键对应的list的最后一个元素

rpop key

rpop list1

返回存储在键的列表里指定范围内的元素

lrange key start stop

lrange list1 0 2

裁剪列表,改为原集合的一个子集

ltrim key start stop

ltrim list1 0 1

返回存储在键里的list的长度

llen key

llen list1

返回列表里索引对应的元素

lindex key index

lindex list1 0

5、set
无序集合,元素不重复

添加元素

sadd key member[member...]

sadd set1 a

返回键集合中所有的元素

smembers key

smembers set1

返回集合中的元素个数

scard key

scard set1

求多个集合的交集

sinter key[key...]

sadd set2 a b c
sinter set1 set2

求某集合与其它集合的差集

sdiff key[key...]

sdiff set1 set2

求多个集合的合集

sunion key[key...]

sunion set1 set2

判断元素是否在集合中

sismember key member

sismember set2 c

6、zset
有序集合,每个元素都会关联一个权重score,通过权重将元素从小到大排序,元素的score可以相同

添加元素

zadd key score member[score member ...]

zadd zset1 2 liuhaoran 5 fuhaozhen 1 lizhongshuo 

返回指定范围内的元素

zrange key start stop

zrange zset1 2 4

返回元素个数

zcard key

zcard zset1

返回有序集合中score值在min和max之间的成员个数

zcount key min max

zcount zset1 2 8

返回有序集合中成员member的score值

zscore key member

zscore zset1 liuhaoran

软件链接:https://pan.baidu.com/s/13t09HvyeiOmj5-Z8ySEGag
提取码:yfyc

### Redis 数据库使用指南 Redis 是一个开源的内存键值存储数据库,具有高性能、丰富的数据结构支持以及分布式能力。它被广泛用于缓存系统、消息队列和高并发应用中。以下是 Redis 的基本概念、连接方法及 Java 操作示例。 #### 1. Redis 简介 Redis 是一种 NoSQL 数据库,支持多种数据结构,如字符串(String)、哈希(Hash)、列表(List)、集合(Set)和有序集合(Sorted Set)。其设计目标是提供极高的读写性能,并支持持久化功能以防止数据丢失[^1]。 #### 2. 连接到 Redis 数据库 要使用 Redis 数据库,首先需要确保已正确安装并启动 Redis 服务。可以通过以下方式连接到 Redis: - **本地连接**:如果 Redis 在本地运行,默认端口为 6379,可以通过命令行工具 `redis-cli` 进行连接。 - **远程连接**:对于远程实例,需要指定主机地址和端口号,例如 `redis-cli -h <hostname> -p <port>`。 连接成功后,可以使用 Redis 提供的命令进行数据操作。例如,设置和获取键值对: ```bash SET mykey "Hello, Redis!" GET mykey ``` 此外,还可以通过编程语言提供的客户端库与 Redis 进行交互[^2]。 #### 3. 在 Java 中操作 Redis 在 Java 中操作 Redis 数据库通常需要借助 Redis 客户端库,如 Jedis 或 Spring Data Redis。以下是一个基于 Spring Data Redis 的配置示例: ```java import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.connection.RedisConnectionFactory; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.serializer.StringRedisSerializer; @Configuration public class RedisConfiguration { @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) { RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>(); redisTemplate.setConnectionFactory(redisConnectionFactory); // 设置 Key 和 Value 的序列化器 redisTemplate.setKeySerializer(new StringRedisSerializer()); redisTemplate.setValueSerializer(new StringRedisSerializer()); return redisTemplate; } } ``` 通过上述配置,可以在 Java 应用程序中轻松地与 Redis 数据库交互[^3]。 #### 4. Redis 的持久化机制 Redis 支持两种主要的持久化方式: - **RDB(Redis Database Backup)**:定期将内存中的数据快照保存到磁盘上。 - **AOF(Append-Only File)**:记录每次写操作的日志,以便在重启时恢复数据。 开发者可以根据实际需求选择合适的持久化策略。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值