redis安装与基本使用
什么是Redis
什么是NoSQL
介绍Redis之前,先了解下NoSQL (Not noly SQL)不仅仅是SQL
属于非关系型数据库;Redis就属于非关系型数据库
传统的Mysql ,oracle ,sql server 等 都是关系型数据库
为什么需要NoSQL,主要应对以下问题,传统关系型数据库力不从心
- High performance -高并发读写
- Huge Storage-海量数据的高效率存储和访问
- High Scalablility && High Availability 高可扩展性和高可用性
NoSQL的特点
易扩展
灵活的数据模型
大数据量,高性能
高可用
高性能键值对数据库,支持的键值数据类型
- 字符串类型
- 列表类型
- 有序集合类型
- 散列类型
- 集合类型
Redis的应用场景
- 缓存
- 任务队列
- 网站访问统计
- 数据过期处理
- 应用排行榜
- 分布式集群架构中的session分离
安装Redis
第一步:安装gcc
gcc是用来编译c语言的,因为redis源码是c写的,所以需要gcc
yum install gcc-c++
第二步:wget方式,下载redis压缩包,并解压以及编译
下载:
wget http://download.redis.io/releases/redis-3.2.9.tar.gz
解压:
tar -zxvf redis-3.2.9.tar.gz
进入解压后的目录:
make
第三步:安装redis
make PREFIX=/usr/local/redis install
安装到/usr/local/redis
回到解压目录,
cp redis.conf /usr/local/redis/
第四步:启动和关闭redis服务
启动:redis里的redis-server命令
结束:Ctrl + C
或者:./bin/redis-cli shutdown
验证:ps -ef | grep -i redis
后台启动
编辑redis.conf文件
把no改成yes
使用指定配置文件启动:
./bin/redis-server ./redis.conf
Redis的基本使用
./bin/redis-cli
,进入客户端
字符串类型:
- 存储:
set key value
- 获取:
get key
- 无值返回nil
- 删除:
del key
哈希类型 hash:
- 存储:
hset key field value
- 获取:
- 获取指定field:
hget key field
- 获取全部field:
hgetall key
- 获取指定field:
- 删除:
hdel key field
列表类型:可以添加一个元素到列表的头部或者尾部
- 存储:
- 将元素添加到列表左边:
lpush key value1, value2, ......
- 将元素添加到列表右边:
rpush key value1, value2, ......
获取:
- 将元素添加到列表左边:
- 范围获取:
lrange key start end
(获取所有可以写start是0,end是-1)
删除: lpop
:从左边弹出一个元素(删除最左边元素并返回)rpop
:从右边弹出一个元素
集合类型:
存储:sadd key value
获取:smembers key
:获取set集合中所有元素
删除:srem key value
:删除set集合中的某个元素
有序集合类型:
不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复
集合是通过哈希表实现的,所以添加、删除、查找的复杂度都是O(1)。
- 存储:
zadd key score value
- 获取:
- 获取所有:
zrange key start end
- 获取所有:
- 删除:
zrem key value
通用命令:
- 查询所有的键:
keys *
(*处其实可以添加正则表达式) - 获得value类型:
type key
- 删除指定key的value:
del key
redis安装与基本使用的更多相关文章
- Redis安装测试(待完善)
1 Redis安装 在网址http://redis.io/下载redis-3.2.3.tar.gz,解压. 进入解压目录 编译和安装,具体配置项可参考自带的README.md文件 make test ...
- Redis安装及实现session共享
一.Redis介绍 1.redis是key-value的存储系统,属于非关系型数据库 2.特点:支持数据持久化,可以让数据在内存中保存到磁盘里(memcached:数据存在内存里,如果服务重启,数据会 ...
- windows 环境下的redis安装
Redis安装 1.由于是练习,所以就在windows下安装的环境,并没有在LINUX服务器上装,但是知识点是一样的 安装流程: a.下载地址:https://github.com/MSOpenTec ...
- CentOS7— Redis安装(转和延续)
Part I. Redis安装(转载部分) 一.安装 wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.t ...
- php redis 安装篇(windows 7)
人人都说redis比memcached好,但是没有实际体验过,概念还是比较模糊,今天就先把redis安装好,后面的体验再分享,由于php已经有了很好的扩展库支持,所以redis安装非常方便,下面是wi ...
- linux下的redis安装以及php添加redis扩展
一.redis的安装 win版本详见: 下面是linux版本的安装步骤: step1.下载 http://redis.io/download下载完后直接make然后make install,注意sud ...
- CentOS 6.6下Redis安装配置记录
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/120.html?1455855209 在先前的文章中介绍过redis,以下 ...
- Redis安装配置与Jedis访问数据库
一.NOSQL概要 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库.NoSQL数据库的四大分类 键值(Key-Value)存储数据库 这一类数据 ...
- Redis总结(一)Redis安装
最近项目中需要使用Redis,刚好这两天有时间,便总结记录一下Redis的安装,以及如何在.NET中使用Redis. Redis是一个用的比较广泛的Key/Value的内存数据库.目前新浪微博.Git ...
- Redis-cluster集群【第一篇】:redis安装及redis数据类型
Redis介绍: 一.介绍 redis 是一个开源的.使用C语言编写的.支持网络交互的.可以基于内存也可以持久化的Key-Value数据库. redis的源码非常简单,只要有时间看看谭浩强的C语言,在 ...
随机推荐
- linux-redis cluster集群(redis5.x)
1.查看redis安装目录: [root@iZwz97y9qoykzzotubitq3Z redis-5.0.5]# lltotal 472-rw-rw-r-- 1 root root 106874 ...
- Java8之Stream详解
Java8中提供了Stream对集合操作作出了极大的简化,学习了Stream之后,我们以后不用使用for循环就能对集合作出很好的操作. 一.流的初始化与转换 Java中的Stream的所有操作 ...
- 多线程启动selenium,报NameError: name '__file__' is not defined
将__file__加上单引号就解决了: # 获取当前文件名,用于创建模型及结果文件的目录 file_name = os.path.basename('__file__').split('.') ...
- PHPstorm出现卡顿解决小记
用的是PHPstorm9,在打开了两个比较大的文件之后,码字反应变得很慢,久不久操作快点还会出现转蓝色小圈圈,最后还给了我这个提示TOT: google了下说是设置的内存不够了,看了下任务管理器php ...
- python多项式拟合:np.polyfit 和 np.polyld
python数据拟合主要可采用numpy库,库的安装可直接用pip install numpy等. 1. 原始数据:假如要拟合的数据yyy来自sin函数,np.sin import numpy as ...
- docker镜像相关的常用操作
1.保存镜像 #docker save 镜像名称 -o 保存的完整地址和文件名 docker save zhoushiya/zhiboyuan -o d:/zhiboyuan.tar 2.载入镜像 # ...
- 【强化学习RL】必须知道的基础概念和MDP
本系列强化学习内容来源自对David Silver课程的学习 课程链接http://www0.cs.ucl.ac.uk/staff/D.Silver/web/Teaching.html 之前接触过RL ...
- ScrollView示例(转载)
// 初始化var scrollView = new ccui.ScrollView(); // 设置方向scrollView.setDirection(ccui.ScrollView.DIR_VER ...
- Go键盘输入与打印输出
输出 格式化打印占位符 符号 说明 %v 默认格式 %T 打印类型 %t 布尔类型 %s 字符串 %f 浮点数 %d 十进制的整数 %b 二进制的整数 %o 八进制 %x 十六进制0-9 a-f %X ...
- 【Python】time库