redis 篇 - 键 and string
redis
进入控制台
- redis-cil
- 需要输入密码的时候可以是用
-a
redis-cil -a abcd1234
redis 数据类型
- string
- hash
- list
- set
- zset( 有序集合)
键
select [index]
切换库 类似于 db 的use dbname
keys [pattern]
查看当前的键127.0.0.1:6379[1]> keys *
1) "test1"
2) "test"
del key
删除键127.0.0.1:6379[1]> del test
(integer) 1
dump key
返回序列化之后的值127.0.0.1:6379[1]> dump test
"\x00\x0bhello-world\b\x00\xad5\x9a\xf9\xb0\xf8\xf2?"
exists key
键是否存在127.0.0.1:6379[1]> exists test
(integer) 1
127.0.0.1:6379[1]> exists test1
(integer) 0
expire key seconds
设置过期时间127.0.0.1:6379[1]> expire test 20
(integer) 1
127.0.0.1:6379[1]> ttl test
(integer) 15
127.0.0.1:6379[1]> ttl test
(integer) 14
127.0.0.1:6379[1]> ttl test
(integer) 4
ttl key
获取过期时间127.0.0.1:6379[1]> ttl test
(integer) -2 127.0.0.1:6379[2]> ttl t1
(integer) -1
键不存在则返回
-2
键永不过期返回-1
pttl key
使用毫秒返回剩余的过期时间pexpire key milliseconds
设置过期时间为毫秒expireat key timestamp
设置到指定时间戳过期pexpireat key milliseconds
move key db
移动 key 到某 db127.0.0.1:6379[1]> keys *
1) "t1"
127.0.0.1:6379[1]> move t1 2
(integer) 1
127.0.0.1:6379[1]> select 2
OK
127.0.0.1:6379[2]> keys *
1) "t1"
127.0.0.1:6379[2]> select 1
OK
127.0.0.1:6379[1]> keys *
(empty list or set)
randomkey
返回随机的一个键127.0.0.1:6379[2]> randomkey
"t1"
127.0.0.1:6379[2]> randomkey
"t2"
rename key newkey
重命名127.0.0.1:6379[2]> rename t1 ttttt
OK
127.0.0.1:6379[2]> keys *
1) "ttttt"
2) "t2"
renamenx key newkey
当 newkey 不存在的时候重命名127.0.0.1:6379[2]> keys *
1) "tttt"
2) "ttttt"
127.0.0.1:6379[2]> set t1 3
OK
127.0.0.1:6379[2]> renamenx t1 tttt
(integer) 0
127.0.0.1:6379[2]> keys *
1) "t1"
2) "tttt"
3) "ttttt"
127.0.0.1:6379[2]>
type key
获取 key 的类型127.0.0.1:6379[2]> type tttt
string
字符串
set key value
get key value
getrange key start end
getset key value
设置成新的 value 并返回原 value127.0.0.1:6379[2]> set t1 test
OK
127.0.0.1:6379[2]> get t1
"test"
127.0.0.1:6379[2]> getset t1 fff
"test"
127.0.0.1:6379[2]> get t1
"fff"
127.0.0.1:6379[2]> getrange t1 0 1
"ff"
注意: redis 的 range 是两边都是闭区间,并作为一个 feature
ps. 个人用起来觉得比较别扭
setex key seconds value
设置 value 并且设置过期时间127.0.0.1:6379[2]> setex t2 10 f
OK
127.0.0.1:6379[2]> ttl t2
(integer) 4
psetex key milliseconds value
setnx key value
不存在 key 的时候设置127.0.0.1:6379[2]> setex t2 10 f
OK
127.0.0.1:6379[2]> ttl t2
(integer) 4
mset k1 v1 k2 v2
设置多个值127.0.0.1:6379[2]> mset k1 v1 k2 v2
OK
127.0.0.1:6379[2]> keys *
1) "k1"
2) "ttttt"
3) "t1"
4) "k2"
5) "tttt"
6) "t2"
127.0.0.1:6379[2]> get k1
"v1"
127.0.0.1:6379[2]> get k2
"v2"
127.0.0.1:6379[2]>
msetnx k1 v1 k2 v2
incr
值自增1127.0.0.1:6379[2]> set k1 1
OK
127.0.0.1:6379[2]> incr k1
(integer) 2
127.0.0.1:6379[2]> get k1
"2"
decr
值子减1127.0.0.1:6379[2]> decr k1
(integer) 1 127.0.0.1:6379[2]> get k1
"1"
append key value
追加 value 到原来的值127.0.0.1:6379[2]> append k1 test
(integer) 5
127.0.0.1:6379[2]> get k1
"1test"
redis 篇 - 键 and string的更多相关文章
- redis 五大数据类型之string篇
一: 1:string(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis ...
- 数据库之redis篇(3)—— Python操作redis
虽然前面两篇已经说了redis的一些配置安装什么的,篇幅有点长,可能看完了也不知道怎么操作,这里再浓缩一下: 什么是redis redis完全开源免费的,遵守BSD协议,是一个高性能的非关系型key- ...
- Redis篇之操作、lettuce客户端、Spring集成以及Spring Boot配置
Redis篇之操作.lettuce客户端.Spring集成以及Spring Boot配置 目录 一.Redis简介 1.1 数据结构的操作 1.2 重要概念分析 二.Redis客户端 2.1 简介 2 ...
- Nosql之Redis篇
一.QuickStart 1.Redis简介: redis是一个性能优秀的内存数据库,通过key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字 ...
- redis对键进行的相关操作
redis对键操作的相关命令以及如何在python使用这些命令 redis对键操作的命令: 命令 语法 概述 返回值 Redis DEL 命令 del key [key ...] 该命令用于在 key ...
- Redis字符串键的底层原理
before C语言基础 Redis基础 导入 redis的命令如下: set x "hello"; get x; hello Redis作为一种存储字符串的缓存结构,其具体实现是 ...
- 《【面试突击】— Redis篇》--Redis都有哪些数据类型?分别在哪些场景下使用比较合适?
能坚持别人不能坚持的,才能拥有别人不能拥有的.关注编程大道公众号,让我们一同坚持心中所想,一起成长!! <[面试突击]— Redis篇>--Redis都有哪些数据类型?分别在哪些场景下使用 ...
- Redis启动服务和String常用命令
Redis启动服务和String常用命令 1. 启动Redis服务 E:\redis>redis-server.exe redis.windows.conf _._ _.-``__ ''-._ ...
- Redis 的键命令、HyperLogLog 命令、脚本命令、连接命令、服务器命令
Redis 的键命令.HyperLogLog 命令.脚本命令.连接命令.服务器命令 Redis 的键命令 Redis 的键命令主要用于管理 Redis 的键,如删除键.查询键.修改键及设置某个键等. ...
随机推荐
- [oracle] 组织架构退格显示 connect by
1. 按组织架构关系退格显示 create or replace view v_vieworg asselect --v.OBJID,v.OBJNAMElevel as levelid, lpad(' ...
- Pyhton学习——Day9
#文件操作的其他方法 ###############################################################################文件的内置操作函数# ...
- 最近邻插值法&线性插值&双线性插值&三线性插值
最近邻插值法nearest_neighbor是最简单的灰度值插值.也称作零阶插值,就是令变换后像素的灰度值等于距它最近的输入像素的灰度值. 造成的空间偏移误差为像素单位,计算简单,但不够精确.但当图像 ...
- linux C++ 编译错误 file not found 其实是原文件后缀的问题
gcc和clang会根据源文件的后缀.c或者.cpp判断原文件类型,采取不同的编译策略,所以我使用它们编译后缀是.c的C++原文件的时候会出现找不到include的文件的错误,使用正确的后缀名即可.同 ...
- HDU 5289 Assignment [优先队列 贪心]
HDU 5289 - Assignment http://acm.hdu.edu.cn/showproblem.php?pid=5289 Tom owns a company and he is th ...
- [Codeforces 626F]Group Projects
题目大意: 给定\(n\)个数\(a[1]\sim a[n]\),让你把它分为若干个集合,使每个集合内最大值与最小值的差的总和不超过\(K\).问总方案数. 解题思路: 一道很神的dp题. 首先将数进 ...
- BZOJ 2820 luogu 2257 yy的gcd (莫比乌斯反演)
题目大意:求$gcd(i,j)==k,i\in[1,n],j\in[1,m] ,k\in prime,n,m<=10^{7}$的有序数对个数,不超过10^{4}次询问 莫比乌斯反演入门题 为方便 ...
- BZOJ 1717 [USACO06DEC] Milk Patterns (后缀数组+二分)
题目大意:求可重叠的相同子串数量至少是K的子串最长长度 洛谷传送门 依然是后缀数组+二分,先用后缀数组处理出height 每次二分出一个长度x,然后去验证,在排序的后缀串集合里,有没有连续数量多于K个 ...
- centos7最小化安装Oracle11gR2
1.准备CentOS 7 系统环境 我以 CentOS-7-x86_64-DVD-1511.iso 为例,简述Oracle 11g的安装过程. 由于是使用静默模式(silent)安装的,无需使用图形化 ...
- Linux网络编程(一):一个简单的socket程序
服务器: /* *tcp_server.c */ #include <stdio.h> #include <sys/socket.h> #include <netinet ...