一、Redis的使用
REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。
Redis 优势
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
原子 – Redis的所有操作都是原子性的,同时Redis还支持对几个操作全并后的原子性执行。
丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性下载。
Redis与其他key-value存储有什么不同?
Redis有着更为复杂的数据结构并且提供对他们的原子性操作,这是一个不同于其他数据库的进化路径。Redis的数据类型都是基于基本数据结构的同时对程序员透明,无需进行额外的抽象。
Redis运行在内存中但是可以持久化到磁盘,所以在对不同数据集进行高速读写时需要权衡内存,应为数据量不能大于硬件内存。在内存数据库方面的另一个优点是, 相比在磁盘上相同的复杂的数据结构,在内存中操作起来非常简单,这样Redis可以做很多内部复杂性很强的事情。 同时,在磁盘格式方面他们是紧凑的以追加的方式产生的,因为他们并不需要进行随机访问。
1、下载安装后的redis目录结构如下:
其中需要注意红色标注的文件。
2、假如你的redis安装在:
D:\Redis-x64-3.2.100
3、在windows命令行中,进入D盘
C:\Users\lqyao>d:
4、再进入目录(D:\Redis-x64-3.2.100):
D:\>cd D:\Redis-x64-3.2.100
5、下载启动redis服务:
D:\Redis-x64-3.2.100>redis-server.exe redis.windows.conf
端口号是:6379
注意:不要关闭这个窗口,不然就无法访问服务端。
6、启用客户端:
打开新的windows命令窗口,然后直接输入命令启动客户端:
D:\Redis-x64-3.2.100\redis-cli.exe
看到这个就表示进入成功:
127.0.0.1:6379>
然后就可以设置值和取值。
7、设置一个值下载
当你在键盘上敲上set时,命令行会进行自动提示补充(非常不错):
127.0.0.1:6379> set key value [EX seconds] [PX milliseconds] [NX|XX]
当然,我们可能不需要设置太多,就当键值对设置也行,如下:
127.0.0.1:6379> set age 20
OK
返回ok表示成功。
8、根据key取值
同样,你敲到get时,会有提示:
127.0.0.1:6379> get key
获取刚才设置的age属性的值:
127.0.0.1:6379> get age
"20"
正确返回了20
9、Redis支持五种数据类型下载:
string(字符串)
hash(哈希)
list(列表)
set(集合)
zset(sorted set:有序集合)
10、删除设置的属性
键盘输入del时,会有提示:
127.0.0.1:6379> del key [key ...]
删除刚才的age:
127.0.0.1:6379> del age
(integer) 1
如果键被删除成功,命令执行后输出 (integer) 1,否则将输出 (integer) 0
11、删除再查询age:
127.0.0.1:6379> get age
(nil)
12、检查是否存在下载
127.0.0.1:6379> exists age
(integer) 1
127.0.0.1:6379> exists tom
(integer) 0
存在返回1、不存在返回0
13、EXPIRE key seconds 为给定 key 设置过期时间:
给age设置20秒失效:
127.0.0.1:6379> expire age 20
(integer) 1
14、PEXPIRE key milliseconds 设置 key 的过期时间亿以毫秒计:
同13,只是时间为毫秒。
15、PERSIST key 移除 key 的过期时间,key 将持久保持:
127.0.0.1:6379> persist age
(integer) 1
16、TTL key 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live):下载
127.0.0.1:6379> ttl age
(integer) -1
返回-1表示该key值不会过期。
17、PTTL key 以毫秒为单位返回 key 的剩余的过期时间:
同16.
18、RANDOMKEY 从当前数据库中随机返回一个 key :
127.0.0.1:6379> randomkey
"myname"
19、RENAME key newkey 修改 key 的名称:下载
127.0.0.1:6379> rename outtime mytime
OK
20、RENAMENX key newkey 仅当 newkey 不存在时,将 key 改名为 newkey :
127.0.0.1:6379> renamenx mytime age
(integer) 0
127.0.0.1:6379> renamenx mytime my
(integer) 1
当newkey存在时,返回0,表示失败。当newkey不存在时,返回1,表示成功。
21、TYPE key 返回 key 所储存的值的类型:
127.0.0.1:6379> type age
string
22、一个小提示:当输入一部分唯一确定的命令时,按Tab键,会自动补全,有点Linux的味道。