nosql数据库中之redis数据库一揽子方案
来源:互联网 发布:淘宝首页图片大小 编辑:程序博客网 时间:2024/06/08 02:06
netstat -tunpl | grep redis-server 显示端口在使用
netstat–tunpl | grep 6379
解决:ps–aux | grep redis-server
pkill redis-server
Kill -9 9999
kill -9 1762
/usr/local/redis/bin/redis-server /usr/local/redis/redis.conf
/usr/local/redis/bin/redis-cli
数据类型
nosql数据库中之redis数据库
一、NoSQL ,(Not Only SQL),泛指非关系型数据库。
1.NoSql的特点?
a).Key-value b).不支持sql语句 c.)没有表结构
2常见关系型数据库与非关系型数据库?
关系型:mysql、Oracle、SQLServerr等;
非关系型:redis, mongodb等;
3.redis支持哪些数据类型?
hash(哈希);string(字符串);list(链表);set(集合); Zset(有序集合)
二、redis安装
- 1.Reids安装需要哪几步?
从安装到使用4步;
a.)解压软件 tar –zxfv
b.)make编译;注意:编译!=安装;
c.)安装 make PREFIX= 目录 install;
d.)复制config,启动服务;注意:server后面跟那个conf 就由哪个conf启动
- 2.如何将Redis安装为服务?
config 17行 daemonize 改为yes; 查看行号 :set un;
- 3.如何重启Redis?
查看 netstat –tunpl | grep redis
pkill redis-server
查看 pr –ef |grep redis;
4.redis 端口 6379
三、Redis安全性设置
1.如何设置密码?
Redis.conf [108] requirepass foobared 可能用到命令:set nu ;
2.如何登录?
2.1:方法1 ./redis-cli –a password
2.2:方法2 登录后 auth password
四、Redis-String,hash,list,set,Zset5种数据类型和其他命令--详见redis-1表
1、string键值对
set name xiaoyun
get name
setnx
setex color 10 red,10秒后过期
mset键名1 值1 键名2值2……………
msetnx键名1 值1 键名2值2……………
getset name xiaop设置新值返回旧值
strlen name 返回长度
getrange name 0 3
mget name age
incr age 自增操作,每执行一次自动加1
incrby age 100 追加100
decr同incr一样,自减操作。decr age
decrby指定减去的值。decrby age 100
append 追加字符串
2、哈希类型
1.Hash数据类型?
像我们上学时候的课本?eg:语文 ===key 课文标题===field 课文内容 === value
hset key field value例:hset ha1 name xiaopen
hget key field例:hget ha1 name
hsetnx如果field存在则设置不成功,返回0
hmset key(哈希的名称) field1 value1 field1 value2例:hmset ha2 name xiaozhao age 30
hmget ha2 name age
hincrby key field number(加的数值)例:hincrby ha2 age 100
hexists key field 例hexists ha2 age
hdel key field
hkeys key
hvals key
hgetall返回哈希里面所有的field和value
3、lists类型及操作
栈,先进后出;队列,先进先出
lpush key value 例lpush list1 one 类似
lrange key 0 -1
rpush rpush list zero从尾部向链表里面添加数据(字符串类型)
lset list 1 dagang
linsert key before tow xiaogang在two元素的前面添加一个元素(xiaogang)
lset list 1 xiaobai
lindex list 1
ltrim list 1 2
lpop从头部删除链表中的元素,返回删除的元素 pop list
rpop从尾部删除链表中的元素,返回删除的元素
lindex key位置 返回指定位置的元素
llen返回链表中元素的个数
4、set(集合)类型-唯一、无序
sadd set1 one two nihao xiaogang
smember set1获取
srem set1 one删除指定元素
spop set1随机删除集合里面某个元素,返回该元素
sdiff set1 set2 差集
sdiffstore set3 set1 set2
sinter set1 set2 交集
sinterstore set4 set1 set2
sunion set1 set2 并集
sunionstore set5 set1 set2
smove set2 set1 xiaoli 移动
scard set5返回集合中元素的个数
sismember set1 xiaolongbao检测某个元素是否在集合中
srandmember set5随机返回集合里面的某个元素,但是并不是删除。
5、sorted sets类型及操作
zadd zset1 12 xiaobai 5 xaioliu 1 xiaohei
zrange zset1 0 -1
zrange zset1 0 -1 withscores
zrem zset1 xiaoliu
zrank zset1 xiaolong在集合中,返回指定元素的下标。(按照元素的序号升序)
zrevrank zset1 xiaohei在集合中,返回指定元素的下标。(按照元素的序号降序)
zrevrange zset1 0 -1 withscores查看集合里面的内容,按照元素的序号,降序显示的
zrangebyscore zset1 6 12 withscores返回集合中,根据序号的范围返回元素。
zcount zset1 6 12
zcard zset1
zremrangebyrank zset1 8 10删除集合中,指定下标范围内容的元素
zremrangebyscore zset1 8 10删除集合中,指定序号范围内的元素
Zinterstore---有序集合交集Zinterstore sum_point 2 mid_test fin_test
Zunionstore---有序集合并集Zunionstore salary 2 programmer manager WEIGHTS 1 3
五、redis的其他命令
keys *
keys n*
exists email
del name
select 1---共16个库
move name 1将当前数据库中的key转移到其他数据库中
expire name 10给一个键设置有效期,单位是秒
persist name把key的有效期设置为永久有效,和expire命令对应
randomkey随机返回一个键
type ha1返回键的数据类型。
dbsize返回当前数据库键的个数
info查看redis服务器的一些信息
flushdb删除当前选择数据库中的所有key
flushall删除所有16个库的key
//---------------------------------------------------------------------------------------------------------
Redis-String,hash,list,set,Zset5种数据类型和其他命令
命令 含义语法返回值Redis-string命令练习,可用于数据缓存 set 设置键值,键名存在则覆盖set key vauleset name xiaoyunsetex 设置延时键值 setex key time value;setex color 10 red,10秒后过期setnx 若键值存在设置失败setnx key value ; mset 一次设计多个键值mset key1 value1 key2 value3 msetnx 设置多个键值存在则失败 msetnx key1 value1 key2 value2 getset 设置新值返回旧值getset key newValuegetset name xiaopget获取键值 get key get namegetrange获取键值的内容 getrange key begin endgetrange name 0 3mget 一次性获取多个值 mget key1 key2mget name ageincr 键名自增1 incr keyincr ageincrby 键名自增指定值 incrby key numincrby age 100 追加100decr 键名自减 1 decr key decrby 键名自减指定值decrby key numdecrby age 100append 追加字符串 append key value; strlen 获取值长度strlen keystrlen nameRedis-hash命令练习,可用于临时储存用户数据 hset 设置哈希键值hset key valuehset ha1 name xiaopenhsetnx 检测哈希field若存在则0失败 hsetnx key field valuehmset ha2 name xiaozhao age 30hget 获取hash内容hget key fieldhmget ha2 name agehmset 一次设置多个hash的field value hmset key field1 vaule1 field2 vaule2hmget 一次性获得多个field值 hmget key field1 field2 hincrby field的值加指定的数值hiccrby key field numhincrby ha2 age 100hexists 判断一个field是否存在hexisit key field;hexists ha2 age存在返回1hdel删除一个fieldhdel firld; hkeys 返回hsah里面所有fieldhkeys keyhkeys ha2hvals返回所有的valuehvals keyhvals ha2hgetall返回所有的 field和value hgetall key Redis-list命令练习,可用于时光机,消息队列
lrem删除符合条件的元素(count0所有符合的,n,-n从右往左n个符合的)lrem key count value
lrem user 2 id5从左往右删除2个是id5的值
lpush从头部向链表里面添加数据 lpush key valuelpush list1 onelrange取出链表里面的全部内容 lrange key 0 -1lrange key 0 -1rpush从尾部向链表里面添加数据 rpush key vaulerpush list zerolinsert在链表里指定的位置添加元素 linsert key before 谁的前面 添加内容linsert key before tow xiaoganglset修改链表里面的元素内容 lset key 元素的位置(从0开始) 新的值lset list 1 dagangltrim保留链表中指定范围的元素 ltrim key 开始位置 结束位置ltrim list 1 2lpop删除并返回链表的头部元素lpop key rpop删除并返回链表的尾部元素rpop key lindex返回指定位置的元素 lindex key 位置lindex list 1llen返回链表中元素的个数lsize llen key Redis-set命令练习,可用于共同好友 sadd向集合里面添加元素 sadd key value1 value2sadd set1 one two nihao xiaogangsmembers获取集合里面的元素 smembers keysmember set1srem删除集合里面指定元素 srem key 指定的元素srem set1 onespop随机删除和返回集合某个元素spop keyspop set1dsiff差集sdiff key1 key2sdiff set1 set2sdiffstore求差集并保存到新的集合sdiffstore newKey key1 key2sdiffstore set3 set1 set2sinter交集sinter key1 key2sinter set1 set2sinterstore求交集并保存到新的集合sinterstore 新集合 key1 key2sinterstore set4 set1 set2sunion并集sunion key1 key2sunion set1 set2sunionstore求并集并保存到新的集合sunionstore newKey key1 key2sunionstore set5 set1 set2 smove移动到key2smove key1 key2 移动的元素smove set2 set1 xiaoliscard返回集合中元素的个数scard keyscard set5sismember检测某个元素是否在集合中sismember key 元素sismember set1 xiaolongbaosrandmember随机返回集合某元素,不删除srandmember keysrandmember set5Redis-Zset命令练习,可用于排名 Zadd向有序集合里面添加元素 zadd key(有序集合名称) score1 元素1 score2 元素2……zadd zset1 12 xiaobai 5 xaioliu 1 xiaoheizrange 按序号升序显示集合元素zrange key 开始下标 结束下标 [withscores]zrange zset1 0 -1 withscores显示序号zrevrange 按序号降序显示集合元素zrevarange key 0 -1 withscorezrevrange zset1 0 -1 withscoreszrem 删除集合中指定的元素 zrem key 指定的元素zrem zset1 xiaoliuZrank 按序号升序返回指定元素的下标 zrank key fieldzrank zset1 xiaolongzrevrank 按序号降序返回指定元素的下标 zrevrank key field zrevrank zset1 xiaoheizrangebyscore 根据序号的范围返回元素 zrangebyscore key 开始序号 结束序号zrangebyscore zset1 6 12 withscoresZcount返回指定序号范围内元素的个数 zcount key 开始序号 结束序号zcount zset1 6 12zcard 返回集合中元素的个数zcard keyzcard zset1zremrangebyrank删除指定下标范围内容的元素 zremrangebyrank key 开始下标 结束下标zremrangebyrank zset1 8 10Zremrangebyscore 删除指定序号范围内的元素。zremrangebyscore key 开始序号 结束序号zremrangebyscore zset1 8 10Redis的其他命令 keys查看当前数据库下面的键keys *或keys n*keys *或keys n*exists查看某个键是否在当前数据库exists keyexists emaildel删除当前库指定键del key1 key2 key3del nameselect共16个库select 数据库编号select 1---共16个库move将当前库的key转移到其他库move key 数据库编号move name 1expire给一个键设置有效期,单位是秒expire key 秒数expire name 10persist把key有效期设置为永久persist key persist namerandomkey随机返回一个键randomkeyrandomkeytype返回键的数据类型typetype ha1dbsize返回当前库键的个数dbsize info查看redis服务器信息info flushdb删除当前库中的所有keyflushdb flushall删除所有数据库中的keyflushall 阅读全文
0 0
- nosql数据库中之redis数据库一揽子方案
- PHP应用中利用NoSQL数据库缓存之Redis
- NoSQL数据库学习笔记之 初识Redis
- SpringBoot之集成Redis NoSql数据库
- NoSql数据库之Redis的持久化
- Redis Nosql数据库
- redis --- noSQL数据库
- Nosql--redis数据库
- NoSQL数据库之Redis数据库管理三(list类型)
- NoSQL数据库-MongoDB和Redis
- NoSQL 数据库 Redis 快速入门
- NoSQL数据库-MongoDB和Redis
- NoSQL数据库-MongoDB和Redis
- NoSQL数据库-MongoDB和Redis
- NoSQL数据库Redis系统性介绍
- SpringBoot中的NoSql数据库--Redis
- NoSQL数据库redis安装使用
- SpringBoot关联NOSql数据库 Redis
- MVP
- [Codeforces773E] [线段树] [找规律] Blog Post Rating
- uC/Probe 应用 uCOSIII 配置
- html设置行的水平对齐
- html设置行的垂直对齐
- nosql数据库中之redis数据库一揽子方案
- [leetCode刷题笔记]49. Group Anagrams
- 信息采集实现原理Curl一揽子方案
- html表格标题的垂直对齐方式
- CQOI位统计
- html设置单元格大小
- 正则匹配(简)一揽子解决方案
- 正则匹配一揽子方案
- html设置单元格列跨度