Redis安装及五种数据类型
redis是非关系型数据库,也叫内存数据库。数据是键值对的形式,通过key查找value
安装Radis:6379
sudo apt-get update
sudo apt-get install redis-server
redis-cli # 启动redis
python连接redis 需要修改redis端口号
- sudo vim /etc/redis/redis.conf # 找到bind 改端口为 0.0.0.0
- netstat -ntl # 查看端口号,这是并没有变为 0.0.0.0
- sudo service redis-server restart # 需要重启服务
- netstat -ntl #现在端口就变成0.0.0.0了
五种数据类型:
- string 字符串
- list 列表
- hash 哈希
- set 集合
- zset 有序集合
1.# String的操作 # 设置字符串 set key value
set name Which # 查看字符串 get key
get name # 查看所有的键
keys * # 判断key 是否存在 exists key
exists name # 查看建的类型 type keyxi
type name # 给name追加值
append name 18 # 删除 del key
del name # 同时设置多个str mset key value key1 value1
mset name Which age 18 address "潭州学院"
# 同时查看多个key mget key key1...
mget name age address # 设置过期时间
expire name 15 # 查看过期时间
ttl name # 运算
# +1 incr key
incr age
# -1 decr key
decr age
# + 整数 incrby key num
incrby age 2
# - 整数 decrby key num
decrby age 3
2.list
2.# list的操作
# 设置list
# 左添加
lpush my_list 1 2 3 4
# 右添加
rpush my_list1 1 1 2 3 4 1 # 查看 lrange key start end
lrange my_list 0 -1
lrange my_list1 0 -1 # 获得list元素个数 llen key
llen my_list # 查看该位置上的元素是lindex 索引
lindex my_list 0 # 删除 # 左删除一个 lpop key
lpop my_list1
# 右删除一个 rpop key
rpop my_list1
# 指定删除 lrem key count value
lrem my_list1 2 1 #左往右删除两次 1
# lrem my_list1 0 1 # count=0 删除所以的 1
# lren my_list1 -2 1 # 从右往左删除两次 1
3.hash
3.# hash
# 设置 hset key field values
hset account name Which
# 获取 hget key field
hget account name
# 删除 hdel key field
hdel account name # 设置多个 hmset key field value [field value]
hmset user name Tom age 21 address school
# 获取多个 hmget key field [field]
hmget user name age address
# 获取全部 hgetall key
hgetall user
# 获取field 的个数 hlen key
hlen user
4.set
4. # set
# 设置 sadd key value value1...
sadd my_set 1 2 3 4 1 2 4
# 查看 smembers key
smembers my_set
# 删除
#指定删除 srem key member
srem my_set 4
#随机删除 spop key
spop my_set # 移动一个集合的member到另一个集合 smove oldkey newkey members
sadd new_set 1 2
smove my_set new_set 3 # 判断集合中存在某个值 sismember key value
sismember my_set 1 # 并集 sunion key1 key2
# 将key1 key3的并集合并到newkey
sunionstore newkey key1 key2 # 差集 sdiff key1 key2
# 把key1 key2 的差集合并到newkey
sdiffstore newkey key1 key2 # 获取集合的个数
scard key
#随机返回一个
srandmember key
5.zset
5.zset
# 设置 zadd key score member 索引+值
zadd z_set 111 D 3 S 1 G
# 获取
#正序 zrange key strat stop
zrange z_set 0 -1
#反序 zrevrange key start stop
zrevrange z_set 0 -1 # 删除 zrem key member
zrem z_set G zadd z_set1 2 b 5 d 3 c 1 a
# 索引
# 正序 获得该元素在有序集合中的索引值 zrank key member
zrank z_set1 a
# 反序 zrevrank key member
zrevrank z_set1 a # 查看有序集合元素数 zcard key
zcard z_set1
# 返回在建表给的索引区间min-max之间的值的个数 zcount key min max
zcount z_set1 1 2 # 查看建立zset给的索引score值 zscore member
zscore z_set1 a
Redis安装及五种数据类型的更多相关文章
- Redis支持的五种数据类型
redis支持的五种数据类型: 1.string(字符串) 2.hash(哈希) Redis hash 是一个键值(key=>value)对集合. Redis hash是一个string类型的f ...
- 【Redis】一、Redis简介及五种数据类型
(一)Redis简介 Redis(Remote Dictionary Server)是一个使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value的开源 ...
- 《闲扯Redis一》五种数据类型之String型
一.前言 Redis 提供了5种数据类型:String(字符串).Hash(哈希).List(列表).Set(集合).Zset(有序集合),理解每种数据类型的特点对于redis的开发和运维非常重要. ...
- Redis学习笔记--五种数据类型的使用场景
String 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...
- <Redis> 入门二 五种数据类型的操作、通用key的操作、发布订阅
文档参考:http://www.redis.net.cn/ string - > key value 简单的keyvalue,常规计数:例如微博数,粉丝数 set -> key v ...
- redis五种数据类型的使用(zz)
redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...
- redis五种数据类型的使用
redis五种数据类型的使用 redis五种数据类型的使用 (摘自:http://tech.it168.com/a2011/0818/1234/000001234478_all.shtml ) 1.S ...
- redis五种数据类型的使用场景
string 1.String 常用命令: 除了get.set.incr.decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一 ...
- Redis五种数据类型-设置key的过期时间
1.redis命令客户端 [root@localhost bin]# ./redis-cli 127.0.0.1:6379> #是否运行着 127.0.0.1:6379> ping PON ...
随机推荐
- Unity 3D游戏-NPC对话系统With XML
用XML做的Unity NPC对话系统 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Create X ...
- HDU 1233:还是畅通工程(最小生成树)
还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- (3)re模块(正则表达式模块)
什么是正则表达式 正则就是用一些具有特殊含义的符号组合到一起(称为正则表达式)来描述字符或者字符串的方法.或者说:正则就是用来描述一类事物的规则.(在Python中)它内嵌在Python中,并通过 r ...
- Microsoft - Get Course Order
// "static void main" must be defined in a public class. public class Main { public static ...
- MySQL--忘记MYSQL管理员密码
如root用户密码,可以按照以下方式来修改: STEP1: 停止MySQL服务 ps -ef | grep -v 'grep' | grep 'mysqld' | awk '{print $2}' | ...
- Django中更新多个对象数据与删除对象的方法
更新多个对象 例如说我们现在想要将Apress Publisher的名称由原来的”Apress”更改为”Apress Publishing”.若使用save()方法,如: ? 1 2 3 >&g ...
- 转Python 和C#的交互
http://www.cnblogs.com/wilber2013/category/708919.html IronPython和C#交互 IronPython是一个.NET平台上的Python ...
- .net与com组件
在使用.net中注册组件,有三种方式: 1.手动注册: win9x/NT/2000系统提供一个用于注册进程内组件的实用工具RegSvr32.exe,如regsvr32 c:\test.dll:在.NE ...
- git: fatal: Could not read from remote repository
This is probably an Intellij problem. Your key are managed natively by ssh, and Intellij has it's ow ...
- 利用x-requested-with判断请求是否是Ajax请求
在服务器端判断request来自Ajax请求(异步)还是传统请求(同步): 两种请求在请求的Header不同,Ajax 异步请求比传统的同步请求多了一个头参数 1.传统同步请求参数 a ...