标签:
redis linux 安装
解压文件 tar zxxf redis-folder
cd redis-folder
cd src
make install
为了便于管理
mkdir -p /usr/local/redis/bin 存放命令
mkdir -p /usr/local/redis/etc 存放配置文件
mv src desc 移动文件
mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server
/usr/local/redis/bin
cd .. 返回上一目录
ll 列举当前目录
mv src desc 移动源文件到对应文件中
pkill redis-server 杀死一个进程
vi src 打开文件进入编辑模式
ZZ保存文件并退出
sudo su 切换到root用户
第一章 NoSQL简介
not only sql,意为反SQL运动
NoSQL是一个以key-value形式存储
分布式:实现主从分离
为了保证效率,数据都是缓存在内存中,也可以周期性的把更新的数据写入到磁盘或者把修改操作写入追加的记录文件
redis-server.exe redis.windows.conf 启动redis服务
第二章 Redis的数据类型
String类型是一个二进制安全的数据类型
set key value
get key
setnx (set noe exist) key value 不对元数据进行覆盖
setex 设置有效期 setex key_name timeout value
setrange 替换字符串 setrange key_name index value
mset 多个键值对设置 mset key_name1 value key_name2 value
getset 获取旧值设置新值 getset key_name1 new_value
getrange 获取子字符串 getrange key_name1 index count
mget 获取多个键值对 mget key_name1 mget key_name2
incr 对integer类型递增操作,如果是非数值型字符串,则会提示out of range incr key_name
incrby 设置自增数量 incrby key_name count
decr
decrby
append 追加字符串 append key_name append_value
strlen 取字符串长度 strlen key_name
hashes类型
更适合存储一个对象,可以占用更少的内存
hset myhash field1 value
hset myhash field2 value
hset myhash field3 value
hget myhash field1
hget myhash field2
hsetnx myhash field1 value
hmset myhash field1 value field2 value
hincrby myhash field1 count
hexist myhash field1 判断hash表中某个字段是否存在
hlen myhash 获取hash表中的字段数量
hdel myhash 对hash表中的某个字段进行删除
hkeys myhahs 返回hash中全部的字段
hget all 获取hash中全部的键值对
Lists类型
链表结构,既可以作为栈,也可以作为队列
lpush mylist value
lrange mylist 0 -1 0 代表从头开始第一个元素, -1表示从尾部开始第一个元素
rpush mylist value 从尾部压入链表
linsert mylist before field value 在某个值之前插入
lset 设置set指定下表的元素替换掉
lrem mylist n value 删除当前链表n个value的值,n> 0表示从头删除,n<0 表示从尾部删除
ltrim mylist n m 保留n到m元素之间的元素
lpop mylist 从头部删除一个元素
rpoplpush mylist1 mylist 尾部移除投入放入
lindex mylist index 返回下标index的值
llen返回链表里的个数
set类型 无序集合
集合类型,无重复值,使用hashtable实现
sadd set value 添加元素
srem set value 删除元素
spop set 随机弹出集合元素
sdiff set1 set2 返回两个集合的差集
sdiff set1 set2 set3 将两个集合的差集插入到第三个集合中
sinter set1 set2 返回两个集合的交集
sinter sore set1 set2 set3
sunion set1 set2 并集
sunionstore set1 set2 set3
smove set1 set2 mumber 将set1 muber成员移入到set2中,并删除
scard set1 返回集合个数
sismumber set mumber 判断某个元素是不是该集合的元素
srandmember 随机返回集合中的一个元素,但不删除
sorted set 有序集合
别名zset
mysql两列表,一列存value,一列存sort
redis关键命令
keys * 当前数据库所有key
keys my*返回以my开头的key
exists key 判断当前库是否存在某个key
del key 删除一个key
expire key 设置一个key的过期时间
select 0 -15 标书选择一个数据库,0 代表第0个数据库
move key 1 表示把当前key移入到第一个数据库
persist key 取消过期时间
randomkey 随机返回数据库中的一个key
rename key_name new_key_name 重命名
type key 返回key的数据类型
ping 返回pong表示redis连接正常
echo key 在命令行输出
quit退出连接
dbsize 返回当前数据库的key数量
info 获取服务器的信息和统计
flushdb 删除当前数据库的全部key
flushall 删除所有数据库的key
auth password 授权密码
redis数据持久化的方式
快照
aof
快照和aof的结合
虚拟内存,就是将不经常使用的数据放入到磁盘中
redis常用指令
标签:
原文地址:http://www.cnblogs.com/zhaojunyang/p/5686641.html