redis数据库笔记

https://redis.io/
下载版本:https://github.com/redis/redis/archive/7.0.7.tar.gz
windows下使用cygwin编译,参考网页:http://t.csdn.cn/hnyPF
教程:https://www.runoob.com/redis/redis-tutorial.html
命令参考:http://doc.redisfans.com/ (中文) https://redis.io/commands/ (官网)
在线测试:http://try.redis.io/
旧版安装文件下载 https://github.com/tporadowski/redis/releases
官方客户端 https://redis.com/redis-enterprise/redis-insight/
redis客户端连接工具RedisDesktop https://blog.csdn.net/m0_67402236/article/details/123680252 (易闪退)
多种客户端 https://blog.csdn.net/xishining/article/details/122227338
CPP接口代码 redis-7.0.7\deps\hiredis 下 hiredis.h
官方编程接口推荐 https://redis.io/resources/clients/

编译hiredis
https://blog.csdn.net/Love_XiaoQinEr/article/details/116098028
cmake -G “Visual Studio 15 2017” CMakeLists.txt
cmake -G “Visual Studio 16 2019” CMakeLists.txt
再用vs打开sln工程文件,直接vs编译即可。

编译redis-plus-plus
最终选用官方推荐的redis-plus-plus(完整有维护),前提是先编译自带的hiredis
使用cmake gui程序生成sln等工程文件
redis\redis-7.0.7\deps\hiredis下代码拷贝到redis-7.0.7\include下,解决include不存在的报错
cmake -G “Visual Studio 15 2017” CMakeLists.txt 会报错,多个环境设置存在问题,用cmake gui比较容易设置。
cmake gui程序设置细节:
源码目录设置redis-7.0.7/deps/redispp 二进制目录也为redis-7.0.7/deps/redispp
configure后,红色错误的要改,例如install目录redis-7.0.7/deps/redispp
头文件redis-7.0.7/deps/hiredis(redis\redis-7.0.7\deps\hiredis下代码拷贝到redis-7.0.7\include下,解决include不存在的报错)
lib参数redis-7.0.7/deps/hiredis/Release/hiredis.lib
大部分编译关掉,只留下shared类型
CXX选11或17
hiredis目录redis-7.0.7/deps/hiredis
(以上全路径的盘符都已省略)
本地cmake gui版本为3.25.0-rc1,如果运行有问题,可以考虑先升级cmake gui。

启动服务器:redis-server.exe (默认两个conf文件即可)
redis-server.exe redis.conf 指定配置文件
启动服务器的cmd不能关闭。重启后数据丢失。客户端执行save就不会丢失数据。
#多个db服务器示例:
“…/…/…/redis7/redis-server.exe” “./redis.conf” --port 6379
“…/…/…/redis7/redis-server.exe” “./redis.conf” --port 6380
“…/…/…/redis7/redis-server.exe” “./redis.conf” --port 6381

启动客户端:redis-cli.exe 默认方式
redis-cli.exe -h 127.0.0.1 -p 6379 -a “password” 指定服务器和端口密码
redis-cli --raw 避免中文乱码
redis-cli --help 帮助信息
保存数据库 save (重启服务器会自动加载dump.rdb)
退出exit
查询版本等信息 info
SELECT 1 切换到数据库1,默认是0号数据库SELECT 0
RedisInsight切换逻辑数据库的方法:建立连接时选择数据库编号,中途不可更改。
#多个客户端示例:
“…/…/…/redis7/redis-cli.exe” --raw -h 127.0.0.1 -p 6379
“…/…/…/redis7/redis-cli.exe” --raw -h 127.0.0.1 -p 6380
“…/…/…/redis7/redis-cli.exe” --raw -h 127.0.0.1 -p 6381

设置键值对 set k_string abc
取出键值对 get k_string (开多个cmd界面可测试)
修改键值对 set k_string 1
删除 del k_string
SET k_string_zh “菜鸟教程”
GET k_string_zh //中文如果显示乱码,启动时加参数–raw

获得配置参数 CONFIG GET loglevel
获得所有配置参数 CONFIG GET *
修改配置参数 CONFIG SET loglevel “notice”
redis.conf 配置项说明 https://www.runoob.com/redis/redis-conf.html

HMSET k_hash field1 “Hello1” field2 “World2”
HMSET k_hash field3 “Hello3” field4 “World4”
HGET k_hash field1
HGET k_hash field4
DEL k_hash
HGETALL k_hash 显示所有值
每个 hash 可以存储 232 -1 键值对(40多亿)。

lpush k_list redis
lpush k_list redis2
lpush k_list redis3
lpush k_list redis4
lrange k_list 0 10

sadd k_set redis
sadd k_set redis2
sadd k_set redis3
sadd k_set redis4
smembers k_set

zadd k_zset 0 redis
zadd k_zset 0 redis2
zadd k_zset 0 redis3
zadd k_zset 0 redis4
ZRANGEBYSCORE k_zset 0 1000

EXISTS key 查询key是否存在
keys * 列出所有key
RENAME key newkey 修改 key 的名称
RENAMENX key newkey 仅当 newkey 不存在时,将 key 改名为 newkey 。
TYPE key 显示key的类型
STRLEN key 返回 key 所储存的字符串值的长度。
INCR key 将 key 中储存的数字值增一。
DECR key 将 key 中储存的数字值减一。

Redis 事务示例
MULTI
select 2
HMSET t2:r1 c1 “v1” c2 “v2” c3 “v3” c4 “v4” c5 “v5”
HMSET t2:r2 c1 “v1” c2 “v2” c3 “v3” c4 “v4” c5 “v5”
HMSET t2:r3 c1 “v1” c2 “v2” c3 “v3” c4 “v4” c5 “v5”
EXEC

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值