命令行下 初识 redis 入门教程
1. redis-cli 命令行进入redis
set,get,
setex,给键值设置过期时间 setex name 10 DOG //设置name键 为 DOG 10秒后过期。
setnx,判断值是否存在,如果存在就不更新键值。如果不存在,则赋值。 (nx :not exist)
getset,设置一个新值,并返回key的旧值。
mset,批量设置键值。
msetnx,
mget,
setrange,替换值串部分。 客户端测试:
redis 127.0.0.1:> set email test@gmail.com
OK
redis 127.0.0.1:> setrange email qq.com
(integer)
redis 127.0.0.1:> get email
"test@qq.comcom"
redis 127.0.0.1:> set email test@qq.com
OK
redis 127.0.0.1:> get email
"test@qq.com"
redis 127.0.0.1:> setrange email gmail.com
(integer)
redis 127.0.0.1:> get email
"test@gmail.com"//简而言之,替换部分如果未超过原来字符串,则原本未被替换的字符串被保留下来。 如果被替换部分长度超过原来,则显而易见。
getrange,
redis 127.0.0.1:> set key1
OK
redis 127.0.0.1:> getrange key1
""
incr,自增1, 如果键不存在,第一次自增相当于赋值 (decr)
redis 127.0.0.1:> set key1
OK
redis 127.0.0.1:> incr key1
(integer)
incrby,增加 或 减少 (decrby)
redis 127.0.0.1:> set key1
OK
redis 127.0.0.1:> incrby key1 -
(integer)
append, 值后 拼接一个新字符串。 返回新串长度
strlen,
2. -------------------h : hash
这里截图2个, 说明普通键值对 与 hash key->value区别:
hset,hget,hdel,hmset,hmget, hincr, hincrby,
hlen,返回hash field的个数
hexists,
redis 127.0.0.1:> hexists user: name
(integer)
hkeys,返回hash表 所有 field
hvals,返回hash表 所有 值
hgetall,返回hash表 所有 field 与 值
3.list
-------------------------------- 头
| |
| |
| |
| |
--------------------------------尾
lpush:从list头开始压入数据
rpush:从list尾开始压入数据
redis 127.0.0.1:> lpush list1 wo
(integer)
redis 127.0.0.1:> lpush list1 cao
(integer)
redis 127.0.0.1:> lpush list1 haha
(integer)
redis 127.0.0.1:> lrange list1 -1//从头 = > 尾 依次是.
) "haha"//头
) "cao"
) "wo"//尾 redis 127.0.0.1:> rpush list1 wo
(integer)
redis 127.0.0.1:> rpush list1 cao
(integer)
redis 127.0.0.1:> rpush list1 haha
(integer)
redis 127.0.0.1:> lrange list1 -
) "wo"
) "cao"
) "haha"
linsert: 在堆栈数据中间 插入一个数据, 实例:在1,3之间插入2
redis 127.0.0.1:> del list1
(integer)
redis 127.0.0.1:> lpush list1
(integer)
redis 127.0.0.1:> lpush list1
(integer)
redis 127.0.0.1:> linsert list1 before
(integer)
redis 127.0.0.1:> lrange list1 -
) ""
) ""
) ""
lset,对指定下标元素 进行赋值
lrem,删除相同对应value元素. lrem list1 2 one //删除list1中 2个 one 元素
ltrim,保留指定key范围内的数据.
redis 127.0.0.1:> lpush list1 one
(integer)
redis 127.0.0.1:> lpush list1 two
(integer)
redis 127.0.0.1:> lpush list1 three
(integer)
redis 127.0.0.1:> ltrim list1 -
OK
redis 127.0.0.1:> lrange list1 -
) "two"
) "one"
lpop:从头 弹出一个 元素.
rpop:从尾 弹出一个 元素.
rpoplpush list1 list2: 从list1尾部弹出元素 A 压入到 list2的头部
lindex : 返回list中 小标为 index的 元素值。 // lindex list1 0.
llen:
4.sets集合:无序集合 无重复元素
sadd: sadd set1 hello // sadd set1 world //sadd 不可以添加相同元素。 添加成功返回1
smembers:查看集合所有成员
srem: 删除成员
spop:随机弹出一个元素
sdiff:返回所有给定key与第一个key的差集
redis 127.0.0.1:> sadd set1 one
(integer)
redis 127.0.0.1:> sadd set1 two
(integer)
redis 127.0.0.1:> sadd set2 one
(integer)
redis 127.0.0.1:> sadd set2 three
(integer)
redis 127.0.0.1:> sdiff set1 set2
) "two"
sdiffstore:将差集返回的 集合 存储到 另一个集合中。 sdiffstore set3 set1 set2 //返回set3的差集
redis> SMEMBERS peter's_movies
1) "bet man"
2) "start war"
3) "2012" redis> SMEMBERS joe's_movies
1) "hi, lady"
2) "Fast Five"
3) "2012" redis> SDIFF peter's_movies joe's_movies
1) "bet man"
2) "start war"
sinter:集合间取交集
sinterstore:
sunion: 返回 并集
sunionstore:
smove:从第一个集合从 移除 指定key 并且 添加到 第二个集合中
redis 127.0.0.1:> smove set1 set2 two
(integer)
redis 127.0.0.1:> smembers set2
) "three"
) "two"
) "one"
scard:查看集合元素个数
sismember: 判断 某元素 是否为 集合 当中 元素
srandmember:从集合中随机返回一个元素
5.sorted sets有序集合 zset
zadd:
zrange:
zrem:
redis 127.0.0.1:> zadd zset1 h
(integer)
redis 127.0.0.1:> zadd zset1 i
(integer)
redis 127.0.0.1:> zadd zset1 i//更新序号
(integer)
redis 127.0.0.1:> zrange zset1 -
) "h"
) "i"
redis 127.0.0.1:> zrange zset1 - withscores
) "h"
) ""
) "i"
) ""
redis 127.0.0.1:> zrem zset1 i
(integer)
redis 127.0.0.1:> zrange zset1 - withscores
) "h"
) ""
zincrby:集合中添加某元素,如果此元素不存在则直接添加进去。 如果存在,则序号自增incr,值不变。
redis 127.0.0.1:> zincrby zset1 h
""
redis 127.0.0.1:> zrange zset1 - withscores
) "h"
) ""
redis 127.0.0.1:> zincrby zset1 i
""
redis 127.0.0.1:> zrange zset1 - withscores
) "i"
) ""
) "h"
) ""
zrank:返回集合 下标号
redis 127.0.0.1:> zrange zset1 -
) "i"//第0个元素
) "h"//第1个元素
redis 127.0.0.1:> zrank zset1 i
(integer)
redis 127.0.0.1:> zrank zset1 h
(integer)
zrevrank:返回集合下标。 逆序排序后 得到指定元素的下标。 与zrank相反
zrevrange:降序排序
zrangebyscore:给定score范围内的元素
zscount:返回给定score区间内 元素个数
redis 127.0.0.1:> zrange zset1 - withscores
) "i"
) ""
) "twooo"
) ""
) "h"
) ""
) "teno"
) ""
redis 127.0.0.1:> zrangebyscore zset1
) "twooo"
) "h"
) "teno"
redis 127.0.0.1:> zcount zset1 6// 区间是[] 包括左右两边
(integer)
zcard: 返回集合中所有元素个数
zremrangebyrank : 删除指定 索引 区间内的 元素
redis 127.0.0.1:> zrange zset1 -
) "i"
) "twooo"
) "h"
) "teno"
redis 127.0.0.1:> zremrangebyrank zset1
(integer)
redis 127.0.0.1:> zrange zset1 -
) "h"
) "teno"
zremrangebyscore: 删除指定 score 区间内的 元素
6 :服务端:键值命令
keys * keys s*//模糊匹配keys
exists set1 //
del set1
expire //设置现有的键 的过期时间, 过期后 则被自动删除
select //选择数据库, redis-cli默认进去数据库0 , select 0 。 redis数据库有 0 - 15
move 将当前数据库中的key 移动到其他数据库中 move key1 2 //将当前数据库键key1 移动到数据库2中
persist 取消设置的过期时间
randomkey 随机返回当前数据库中key
rename
type 返回键 的数据类型
echo 直接在命令框 输出
dbsize 返回当前数据库 键 个数
info 返回redis服务器 相关信息
config get * //返回配置信息
flushdb //删除当前数据库 所有键
flushall //删除0-15数据库所有 键
问题1:界面版
php WEB版 在线管理 redis,动态监控数据,PHPRedisAdmin
https://github.com/ErikDubbelboer/phpRedisAdmin 下载 .zip
解压到根目录下
出现HTTP 500错误,查看日志error.log
[Wed Jul 03 10:20:28 2013] [error] [client XX.XXX.XX] PHP Warning: require_once(/var/www/phpRedisAdmin-master/predis/autoload.php): failed to open stream: No such file or directory in /var/www/phpRedisAdmin-master/includes/common.inc.php on line 35
还需要下载predis到PHPRedisAdmin 根目录下。
https://github.com/nrk/predis 下载.zip 解压
直接访问管理redis数据。
-----------
直接下载总结好的,加压到网站根目录直接访问就可以使用。 下载地址
命令行下 初识 redis 入门教程的更多相关文章
- 命令行下class redis not found 解决
1.在命令行下输入 php --ini 2.在浏览器中查看 phpinfo() 可以看出,我 的phpinfo和命令行的就不是一个php.ini文件.因为我有几个版本的php , 并且在环境变量中配 ...
- python命令行下安装redis客户端
1. 安装文件: https://pypi.python.org/pypi/setuptools 直接下载然后拷贝到python目录下同下面步骤 下载 ez_setup.py>>> ...
- 超强、超详细Redis入门教程【转】
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么2.redis的作者何许人也3.谁在使用red ...
- 超详细Redis入门教程【转】
这篇文章主要介绍了超强.超详细Redis入门教程,本文详细介绍了Redis数据库各个方面的知识,需要的朋友可以参考下 [本教程目录] 1.redis是什么 2.redis的作者何许人也 3.谁在使 ...
- IntelliJ IDEA下Git的配置与使用(命令行下)
1. 安装Git并配置好Git 安装与配置参见Git与码云(Git@OSC)入门-如何在实验室和宿舍同步你的代码(1)中的2.在本机安装Git与3.1 配置git. 2. 创建远程仓库 在gitee. ...
- Redis入门教程(二)
推荐阅读: Redis入门教程(一)https://www.cnblogs.com/jichi/p/10285346.html 5. Redis 的数据结构 5.1 Redis 数据结构介绍 redi ...
- Redis入门教程(三)— Java中操作Redis
在Redis的官网上,我们可以看到Redis的Java客户端众多 其中,Jedis是Redis官方推荐,也是使用用户最多的Java客户端. 开始前的准备 使用jedis使用到的jedis-2.1.0. ...
- Redis入门教程:特性及数据类型的操作
虽然Redis已经很火了,相信还是有很多同学对Redis只是有所听闻或者了解并不全面,下面是一个比较系统的Redis介绍,对Redis的特性及各种数据类型及操作进行了介绍.是一个很不错的Redis入门 ...
- 【原】Redis入门教程
最近在学习Redis,写几篇文章记录一下学习过程:Redis入门教程. 1.Redis基本概念 Redis Redis Keys Redis 基本数据类型 Redis基本操作 遍历操作 Pub-Sub ...
随机推荐
- Restful风格wcf调用3——Stream
写在前面 上篇文章介绍了restful接口的增删改查,本篇文章将介绍,如何通过数据流进行文件的上传及下载操作. 系列文章 Restful风格wcf调用 Restful风格wcf调用2——增删改查 一个 ...
- java文件的读写程序代码
package textopen; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutp ...
- UIWebView清除缓存和cookie[转]
现在项目遇到一个问题,游戏底层用Cocos2d-x,公告UI实现是用的UIWebView, 然后第一次在有网络的环境下运行公告UI,会加载url链接,同时就会自动存入缓存,当下次手机没有网络的环境下, ...
- (转)【javascript基础】原型与原型链
原文地址:http://www.cnblogs.com/allenxing/p/3527654.html 前言 原型是什么 理解原型对象 原型对象 isPrototypeOf hasOwnProper ...
- Kinect-for-Windows-SDK开发
微软的黑科技,应用在游戏或者科研领域.可以类似于双摄像头三维成像.
- hdu 4281 Judges' response(多旅行商&DP)
Judges' response Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- 一个例子教你理解java回调机制
网上很多例子都写的很难理解,笔者刚开始都已经弄晕菜了. 这个例子,应该是再简单,再简洁不过的了,例子目的是测试某个方法的执行时间.这里就写三个java类,一个接口,一个实现,还有一个用于测试时间的类. ...
- form 认证 读取
class Program { public static CookieContainer cc { get; set; } static void Main(string[] args) { str ...
- 73. 矩阵置零 leetcode JAVA
题目: 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [ [1,1,1], [1,0,1], [1,1,1] ...
- Hibernate 干货2
@ORM框架 对象关系映射,用于实现面向对象编程语言里不同系统的数据之间的转换 @实例public void demo01(){ User user = new User(); user.setU ...