基本知识
1、redis默认有16个数据库,默认使用第0个。16个数据库为:DB 0~DB 15 默认使用DB 0 ,可以使用select n切换到DB n,dbsize可以查看当前数据库的大小,与key数量相关。
[root@Zhong bin]# redis-server myredis-conf/redis.conf #启动服务器
[root@Zhong bin]# redis-cli -p 6379 #启动客户端
127.0.0.1:6379> select 2 #切换数据库
OK
2、redis是单线程的。
Redis是单线程的,Redis是基于内存操作的。所以Redis的性能瓶颈不是CPU,而是机器内存和网络带宽。
3、Redis为什么这么快?
核心:Redis是将所有的数据放在内存中的,所以说使用单线程去操作效率就是最高的,多线程(CPU上下文会切换:耗时的操作!),对于内存系统来说,如果没有上下文切换效率就是最高的,多次读写都是在一个CPU上的,在内存存储数据情况下,单线程就是最佳的方案。
4、Redis的五大数据类型
Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区。其中五个基本数据类型为:字符串(String)、哈希表(Hash)、列表(List)、集合(Set)、有序集合(Zset)。
5、Redis-key
在redis中无论什么数据类型,在数据库中都是以key-value形式保存,通过进行对Redis-key的操作,来完成对数据库中数据的操作。
其基本命令
SET key value 设置一个key
GET key 获取一个key对应value
EXISTS key 查询key是否存在
MOVE key n(数字) 将当前key移动到指定的几号数据库中
KEYS * 查询当前数据库中全部的key
EXPIRE key time 设置当前key的过期时间
TTL key 查询当前key的存活时间
TYPE key 查看key的数据类型
1、set key value
127.0.0.1:6379> set name 张三 # 设置key-value
OK
127.0.0.1:6379> get name # 查询key指定的value
张三
2、exists key
127.0.0.1:6379> exists name # 查看当前key是否存在
1
127.0.0.1:6379> exists name1
0
3、move
127.0.0.1:6379> move name 1
1
127.0.0.1:6379> KEYS *
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> keys *
name
4、expire key time
127.0.0.1:6379> expire name 5 # 设置当前key的过期时间,单位是秒
1
127.0.0.1:6379> ttl name # 查看指定key的存活时间,
-2 # 返回-2表示当前key已经过期,如果为-1,表示永不过期
127.0.0.1:6379> KEYS * # name 过期被清空
(empty list or set)
5、type key
127.0.0.1:6379> set name 张三
OK
127.0.0.1:6379> type name
string
以上为Redis的基本知识的学习!