Redis入门

作者: 王小冬 | 来源:发表于2018-07-21 11:29 被阅读1次

1. 简介

Redis是一个高性能的并且开源的使用key-value保存数据的NoSql数据库,它的特点包括:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。
  • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
  • 丰富的特性,Redis还支持 publish/subscribe, 通知, key 过期等等特性。

2. 应用场景

  • 缓存
  • 任务队列
  • 应用排行榜
  • 网站访问统计
  • 数据过期处理
  • 分布式集群架构中的session分离

3. Linux下安装

#安装gcc环境,因为redis是c++写的
apt-get install gcc
# 下载最新的安装包
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
# 解压
tar -zxvf redis-4.0.9.tar.gz
cd redis-4.0.9/
#编译
make

4. 启动

cd src
#前端启动,进去以后不能操作linux了
./redis-server
#后端启动,需要配置${REDIS_HOME}/redis.conf,将 daemonize no 改为 daemonize yes,设置为后台运行
# 然后加上配置项启动
cd ..
./src/redis-server redis.conf 

5. 停止

./src/redis-cli shutdown

6. 进入redis客户端

./src/redis-cli
#进入客户端了,可以看到端口号6379
127.0.0.1:6379>

7. 增删查改数据

127.0.0.1:6379> set name wangjun
OK
127.0.0.1:6379> get name
"wangjun"
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379> set name wangjun2
OK
127.0.0.1:6379> get name
"wangjun2"
127.0.0.1:6379> del name
(integer) 1
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> 

8. Redis基础特性

  • 多数据库:

    一个Redis实例最多提供16个数据库(类似mysql的多个数据库),下标0-15,默认连接0数据库。

    通过select n 选择数据库。

  • 事务:

    一次提交多条记录,multi:开始事务;exec:提交事务;discard:回滚事务。

    127.0.0.1:6379> get age
    "28"
    127.0.0.1:6379> multi
    OK
    127.0.0.1:6379> incr age
    QUEUED
    127.0.0.1:6379> incr age
    QUEUED
    127.0.0.1:6379> exec
    1) (integer) 29
    2) (integer) 30
    127.0.0.1:6379> get age
    "30"
    127.0.0.1:6379> multi 
    OK
    127.0.0.1:6379> incr age
    QUEUED
    127.0.0.1:6379> incr age
    QUEUED
    127.0.0.1:6379> discard
    OK
    127.0.0.1:6379> get age
    "30"
    

参考:

http://www.runoob.com/redis/redis-tutorial.html

https://www.imooc.com/video/14932/0

相关文章

网友评论

    本文标题:Redis入门

    本文链接:https://www.haomeiwen.com/subject/qjchmftx.html