一、关系比较
1. 什么是redis?
Redis是属于nosql类型, meaeched, mogodb(小说内容)数据库,一个意大利的创业公司开发的.现在获得了 VMware赞助.
redis3.0. 底层是使用C语言开发,读取数据库,是从内存中读取的.数据库传输调用是使用 二进制码.内存占用比较少,
2. 什么是nosql数据库
就是一个NoSQL(no only sql)类型数据库,非关系型数据库,和我们关系型数据库的区别?
存放数据的时候, key value 存放数据的时候是存到内存中, mysql,Oracle 往二维表中存数据. 存在硬盘里.
3. redis和memcached相比的独特之处
1、redis可以用来做存储(storge), 而memccached是用来做缓存(cache)
这个特点主要因为其有”持久化”的功能.
2、存储的数据有”结构”,对于memcached来说,存储的数据,只有1种类型--”字符串”,
而redis则可以存储字符串,链表,哈希结构,集合,有序集合.
3、mongodb用来存储小说内容
二、 redis的安装
1、安装虚拟机,固定ip(可选)
2、连接xshell
3、运行命令先安装c语言的编译运行环境
执行:yum install gcc-c++
一直选择“Y同意。安装成功后的画面如下:
版本说明
本教程使用redis3.0版本。3.0版本主要增加了redis集群功能。
4. 源码下载
从官网下载 http://download.redis.io/releases/redis-3.0.0.tar.gz
5. 安装
5.1 解决不能上传文件的命令,需要yum install -y lrzsz 安装上传文件命令
理由:因为有可能我们从本地已经下载完毕一些gz压缩包,我们需要将这些压缩包拖到xshell当中,有些拖拽会如图所示
5.2 将redis-3.0.0.tar.gz拷贝到 /usr/local目录下
进入到这个目录直接拖拽文件
5.3 解压redis-3.0.0.tar.gz
tar -zxvf redis-3.0.0.tar.gz
5.4 进入解压后的目录进行编译
cd /usr/local/redis-3.0.0
5.5 执行:make进行编译
5.6 安装到指定目录
[root@localhostredis-3.0.0]#make install PREFIX=/usr/local/redis
三、redis的启动
1. 前端模式启动
退出到根目录下,进入cd /usr/local/redis 因为之前将redis安装到这个目录下
启动命令:./redis-server 默认端口是6379
直接运行./redis-server将以前端模式启动,前端模式启动的缺点是ssh命令窗口关闭则redis-server程序结束,不推荐使用此方法。如下图:
2. 若想用前端操作,则需要克隆一个session
2.1 连接redis: ./redis-cli
2.2 简单操作 redis是以key value方式存储的,下图:a是key,1000是value
有个问题是每次这样都得克隆新的用户连接比较麻烦,所以我们得改为后台启动命令
ctrl+c停止掉
2.3 Redis官方说明:
优点: redis的并发读取量30W/秒 写入数据并发量能达到10万/秒
缺点: 对数据的完整性支持的不是特别好,先保存到内存中,根据你使用的持久化方案,选择保存到硬盘上的时机. 所以redis在实际应用的时候,不会用他来保存持久化的数据,例如订单信息 不能用redis存储一些重要数据. 对数据不是完全依赖于redis.
3. 后端模式启动
3.1 进入 redis3.0.0这个目录
3.2 进入到这文件下执行复制命令
把redis的源码包中复制到安装好的redis的bin目录下
[root@localhost redis-3.0.0]# cp redis.conf /usr/local/redis/bin
3.3 执行命令进入到redis的文件夹下
[root@localhost redis-3.0.0]# cd /usr/local/redis/bin
3.4 修改redis.conf文件
执行命令 vim redis.conf
修改redis.conf配置文件, daemonize yes 以后端模式启动
修改好以后, 按Esc :wq 保存退出
3.5 修改后的启动方式
[root@localhost bin]# ./redis-server redis.conf
3.6 查看进程命令
[root@localhost bin]# ps aux|grep redis
3.7 修改端口号
redis默认端口号是:6379
也可修改redis.conf文件修改端口号
四、redis停止服务
[root@localhost bin]# ./redis-cli shutdown
五、redis常用命令
5.1 set和get命令
5.2 自增和自减命令
incr a
decr a
5.3 删除
del a
5.4 查看所有的key
key *
5.5 往set中存数据和取数据
hset hash1 key1 123
hget hash1 key1
5.6 设置key的生命周期(秒)和过期时间
expire a 1000 ---->设置key值a的生命周期1000秒
ttl a -----》查询key值a的剩余过期时间
ttl a 返回-1是永久性的, 返回-2代表是生命周期结束了
5.7 退出命令
quit
六、redis支持的数据类型
redis支持五种数据类型:
String(最常用)
Hash(其次)
List
Set
SortedSet