Redis03_基本命令和基本知识说明

灰太狼 2022-12-01 15:41 190阅读 0赞

Redis默认有16个数据库,编号为0–15

默认使用的是第0个数据库

select 切换数据库
dbsize 查看数据库大小
keys * 查看所有的key
flushdb 清空当前数据库
flushall 清空所有数据库

  1. 127.0.0.1:6379> select 3
  2. OK
  3. 127.0.0.1:6379[3]> dbsize
  4. (integer) 0
  5. 127.0.0.1:6379[3]> set name zhangsan
  6. OK
  7. 127.0.0.1:6379[3]> dbsize
  8. (integer) 1
  9. 127.0.0.1:6379[3]> keys *
  10. 1) "name"
  11. 127.0.0.1:6379[3]> flushdb
  12. OK
  13. 127.0.0.1:6379[3]> keys *
  14. (empty array)
  15. 127.0.0.1:6379[3]> flushall
  16. OK

exists 判断指定key是否存在
type 判断指定key的数据类型

  1. 127.0.0.1:6379> exists name
  2. (integer) 1
  3. 127.0.0.1:6379> exists name1
  4. (integer) 0
  5. 127.0.0.1:6379> type name
  6. string

move 将当前库中的key移动至指定目标数据库

  1. 127.0.0.1:6379> move name 1
  2. (integer) 1
  3. 127.0.0.1:6379> select 1
  4. OK
  5. 127.0.0.1:6379[1]> keys *
  6. 1) "name"

expire 设置指定key的过期时间,单位:秒
ttl 查看指定key的剩余有效时间,-2表示已过期,单位:秒

  1. 127.0.0.1:6379> expire name 10
  2. (integer) 1
  3. 127.0.0.1:6379> ttl name
  4. (integer) 2
  5. 127.0.0.1:6379> ttl name
  6. (integer) -2
  7. 127.0.0.1:6379> get name
  8. (nil)

config get requirepass 查询redis密码
config set requirepass 设置redis密码
auth 123456 使用密码登录

  1. 127.0.0.1:6379> config get requirepass
  2. 1) "requirepass"
  3. 2) ""
  4. 127.0.0.1:6379> config set requirepass '123456'
  5. OK
  6. 127.0.0.1:6379> ping
  7. (error) NOAUTH Authentication required.
  8. 127.0.0.1:6379> auth 123456
  9. OK
  10. 127.0.0.1:6379> ping
  11. PONG
  12. 127.0.0.1:6379> config get requirepass
  13. 1) "requirepass"
  14. 2) "123456"

为什么Redis使用6379作为默认端口?

6379在是手机按键上MERZ对应的号码,而MERZ取自意大利歌女Alessia Merz的名字。MERZ长期以来被Redis作者antirez及其朋友当作愚蠢的代名词。后来Redis作者在开发Redis时就选用了这个端口

Redis是单线程的

因为Redis是基于内存操作的,Redis的性能瓶颈是机器的内存大小和网络带宽,而CPU不是Redis的性能瓶颈,所以Redis选择了使用单线程

为什么Redis单线程还那么快?

  1. redis是基于内存的,内存的读写速度非常快;
  2. redis是单线程的,省去了很多上下文切换线程的时间;
  3. redis使用多路复用技术,可以处理并发的连接;

发表评论

表情:
评论列表 (有 0 条评论,190人围观)

还没有评论,来说两句吧...

相关阅读