redis服务端的安装及常用数据存储
1 Redis简介
Redis是一个开源(BSD许可),内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。
它支持字符串、哈希表、列表、集合、有序集合,位图,hyperloglogs等数据类型。内置复制、Lua脚本、LRU收回、事务以及不同级别磁盘持久化功能,
同时通过Redis Sentinel提供高可用,通过Redis Cluster提供自动分区
学习网址:https://www.w3cschool.cn/redis/
Redis用途:1. 数据库 2. 缓存
基于内存存储的数据库
redis
memcache
2 Redis支持五种数据类型
string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)
3 redis服务端的安装
yum install gcc-c++(gcc编译c的,因为redis是c编写的,所以我们先安装下gcc)
yum -y install wget
wget http://download.redis.io/releases/redis-5.0.2.tar.gz(wget方式 下载redis压缩包)
Tar -xvf redis-5.0.2.tar.gz(解压)
cd redis-5.0.2/(进入目录)
Make(编译)
我这里采用的是离线安装
下载网址:https://www.redis.net.cn/download
启动虚拟机
连接WinSCP,从本地磁盘中找到文件压缩包copy到指定文件内,然后连接到SecureCRTPortable里面执行命令操作解压文件。
离线解压命令
tar -zxvf 压缩包名
解压后记得查看一下,是否解压成功
查看文件目录下的所有文件 ll
然后 cd redis-5.0.2/
注意一定要进行编译
Make(编译)
编译后会有以下文件
redis-5.0.2/redis.conf
编译后的文件
编译成功
安装redis服务端成功
可以操作如下(指定redis.conf)
./src/redis-server redis.conf
./src/redis-cli (使用redis)
Exit(退出)
开放端口
firewall-cmd --zone=public --add-port=6379/tcp --permanent
跟新防火墙规则
firewall-cmd --reload
防火墙列表
firewall-cmd --zone=public --list-ports
防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld
/相当于Ctrl+F
n是查找下一个
备份一份redis.conf
例如redis_bak.conf
开启守护进程,不开启的话,不能做其他操作
#daemonize no
daemonize yes
3 配置密码登录
vi /etc/redis/redis.conf #编辑redis配置文件
#找到下面这一行并去除注释,并添加密码(396行)
#requirepass foobared #修改前
requirepass 123456 #修改后
2 配置远程登录
vi /etc/redis/redis.conf #编辑redis配置文件
#bind 127.0.0.1 #注释这一行(69行)
配置完后,查看一下,执行其它操作命令
注1:配置完成密码后,以后登录就密码按下面的命令进行登录
./redis-cli -h 127.0.0.1 -p 6379 -a 123456
重启redis或ubuntu
service redis-server restart
#reboot
4 redis客户端的安装
双击redis-desktop-manager-0.8.8.384.exe即可
傻瓜式安装,一直下一步,就安装好了
5 redis常用数据存储的指令
通过命令操作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是否存在
6 redis客户端连接
可视化管理工具
填写你自己虚拟机的端口
我这里是192.168.56.130
连接成功执行下一步命令指令
以下是指令执行成功示例图片