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

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

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

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

127.0.0.1:6379> select 3
OK
127.0.0.1:6379[3]> dbsize
(integer) 0
127.0.0.1:6379[3]> set name zhangsan
OK
127.0.0.1:6379[3]> dbsize
(integer) 1
127.0.0.1:6379[3]> keys *
1) "name"
127.0.0.1:6379[3]> flushdb
OK
127.0.0.1:6379[3]> keys *
(empty array)
127.0.0.1:6379[3]> flushall
OK

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

127.0.0.1:6379> exists name
(integer) 1
127.0.0.1:6379> exists name1
(integer) 0
127.0.0.1:6379> type name
string

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

127.0.0.1:6379> move name 1
(integer) 1
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
1) "name"

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

127.0.0.1:6379> expire name 10
(integer) 1
127.0.0.1:6379> ttl name
(integer) 2
127.0.0.1:6379> ttl name
(integer) -2
127.0.0.1:6379> get name
(nil)

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

127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""
127.0.0.1:6379> config set requirepass '123456'
OK
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.  
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> config get requirepass
1) "requirepass"
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使用多路复用技术,可以处理并发的连接;

猜你喜欢

转载自blog.csdn.net/BLU_111/article/details/108269124