redis安装和基本介绍
前言
在之前的hibernate中我们用到了echache的二级缓存,那个是把文件存储在电脑硬板中。
我们本章节使用的缓存机制就是把数据存储在内存里,因为我们在上面一章中已经实现了VM其他的虚拟机。所以我们还是把Redis 给装在虚拟机里就行。
Redis
Redis 下载:http://download.redis.io/releases/redis-5.0.2.tar.gz
下载完后就可以通过Winscp放到一个自己定好的位置(不明白的可以看一看linux虚拟环境搭建)
Redis的编译环境
一,解压
在把安装包移过来后,就可以解压:tar -zxvf redis-5.0.2
因为redis是c语言编写的所以我们要下载一个gcc 的编写环境,
输入:yum install gcc-c++
等待中,中间 yes|or|no ,输入y
二,make(编译)
到redis 5.0的目录下执行!
输入 make
等待编译结束,结束后,我们就可以启动redis了
输入:./src/redis-server redis.conf
可是这个redis默认就只有一个主线程,守护线程是默认关闭的
导致不能进行其他的操作。
对了,在修改文件之前最好考个复制:
所以我们要改变redis.conf这个文件
#daemonize no
为
daemonize yes
修改完毕后
我们可以发现进程就不是之前的那个主线程了。
所以我们也可以输入:./src/redis-cli
ping就代表可以使用了
Redis的可视化工具
下载地址:
链接:https://pan.baidu.com/s/1142MgakNexMq2rUgegKjgw
提取码:5xs7
当然也可以去官网下载
傻瓜式安装,
可是重点来了,这次我们是在我们自己的主机上安装的可视化工具。
所以要连接到虚拟机里的Redis
因此我们需要修改和配置相对应的配置。
一,增加端口号
firewall-cmd --zone=public --add-port=6379/tcp --permanent
跟新防火墙规则
firewall-cmd --reload
防火墙列表
firewall-cmd --zone=public --list-ports
防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
先:firewall-cmd --zone=public --add-port=6379/tcp --permanent
再:firewall-cmd --reload
二,注释bind 127.0.0.1 ,增加一个密码
打开 vi redis.conf
注释掉bind 127.0.0.1
再找到
#找到下面这一行并去除注释,并添加密码(396行)
#requirepass foobared #修改前
requirepass 123456 #修改后
注1:配置完成密码后,以后登录就密码按下面的命令进行登录
输入 ./src/redis-cli -h 127.0.0.1 -p 6379 -a 123456
然后我们再用到可视化工具去连接的时候就可以连接上了
Redis操作语法
因为有了可视化工具,所以我们大可用工具创建值。
但是如果想用命令操作也是可以的
0. 学习网址
https://www.w3cschool.cn/redis/
1. Redis简介
Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。
它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,
同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区
学习网址:https://www.w3cschool.cn/redis/
www.redis.cn
www.redis.net.cn
Redis用途:1. 数据库 2. 缓存
基于内存存储的数据库
redis
memcache
2. Redis支持五种数据类型
string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)
3. 通过命令操作redis(命令不区分大小写)
redis默认的数据库有16,mongodb是3个:admin/local/test
redis-cli #打开redis终端
select index #选择指定的数据库,默认的数据库有16,mongodb是3个:admin/local/test
#字符串
set name #保存
get name #获得
type name #查看类型
keys *
del name
#哈希(Hash),Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象
hset key attr1 value1 attr2 value2
hget key attr1
hgetall key
#列表(List)
lpush key value1 value2 value3
llen key
lindex key index
lrange key start stop #stop可以为-1,到末尾的意思
#Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。
sadd key value #sadd idcard 100
sadd key value1 value2 vlaue3
scard key
sscan key cursor [MATCH pattern] [COUNT count]
exists key #检查key是否存在
上一篇: get传送的疑惑
下一篇: PHP设计模式工厂方法