redis 篇 - 键 and string
redis
进入控制台
- redis-cil
- 需要输入密码的时候可以是用
-aredis-cil -a abcd1234
redis 数据类型
- string
- hash
- list
- set
- zset( 有序集合)
键
select [index]切换库 类似于 db 的use dbnamekeys [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
键永不过期返回-1pttl key使用毫秒返回剩余的过期时间pexpire key milliseconds设置过期时间为毫秒expireat key timestamp设置到指定时间戳过期pexpireat key millisecondsmove 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 valueget key valuegetrange key start endgetset 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 valuesetnx 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 v2incr值自增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 的键,如删除键.查询键.修改键及设置某个键等. ...
随机推荐
- 在IIS 10中注册自定义的IHttpModule
环境:Visual Studio 2015, IIS Express 10, ASP.NET 4.5 演示代码:http://files.cnblogs.com/files/joe-yang/Rewr ...
- ZBrush与同类数字雕刻软件的比较
随着数字雕刻软件的迅猛发展,不但在软件的数量和功能上有突飞猛进的提高,行业应用上也有很大的拓展.那么,与同类数字雕刻软件比较下,用户应该如何选择呢?下面我们来对这些软件做一个简单的罗列分析. 目前数字 ...
- 关于<marquee>、<form>、input中的<text>、<password>、<hidden>、<wenbenkuang>、<reset>、<image>、<submit>、<radio>、<checkbox>以及<select><iframe src>的用法
<html> <head> <meta charset="UTF-8"> <title></ ...
- 如何降低死循环的 CPU 占用
有的时候程序中需要使用死循环,比如消息监听就要用一个死循环,直到受到消息请求关闭才可能跳出循环. 一个 while(true){} 的循环中即便循环体是空的,也会占用几乎一整个 CPU 核心.为了降低 ...
- 利用after和before伪元素在文字两边写横线
示例: 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="U ...
- CSS布局总结(三)
前言:今天学的有点少,主要是有点迷.... 这是昨天没写的 一.水平居中 .parent{ text-aglin:center; } .child{ display:inline-block; } . ...
- 【HNOI】合唱队
[HNOI]合唱队 题意 对于一个初始序列,保证两两不同,通过一些变换得到目标序列: 第一个值直接插入空的当前队列 对于从第二个值开始的每个值 如果原序列中 $ a[i] $,若 $ a[i]> ...
- 基于LXC的虚拟网络自动部署
一.问题: 在搭建以LXC为基础的虚拟网络时,网络参数繁多,配置过程繁琐.面临一个新的网络拓扑结构时,通常要花费大量时间来构建网络.因此,如果能通过配置文件,自动生成相对应的网络拓扑,并生成操作指令. ...
- 我一不小心把ubuntu里的ps这样的命令删掉了,应该怎么重装呢
sudo apt-get --reinstall install procps
- WPF中多线程统计拆箱装箱和泛型的运行效率
WPF中多线程统计拆箱装箱和泛型的执行效率.使用的知识点有泛型.多线程.托付.从样例中能够看到使用泛型的效率至少提升2倍 MainWindow.xaml <Window x:Class=&quo ...