Redis服务器搭建与学习

Redis服务器搭建与学习

四月 06, 2020 阅读数(请刷新)

Redis服务器的搭建

首先需要gcc环境
yum install gcc-c++
下载redis压缩包
wget http://download.redis.io/releases/redis-5.0.3.tar.gz
解压
tar -zxvf redis-5.0.3.tar.gz
编译安装

1
2
3
4
cd redis-5.0.3
make
# 安装到/usr/local/redis
make install PREFIX=/usr/local/redis

将redis.conf文件复制到/usr/local/redis/bin下

1
cp redis.conf  /usr/local/redis/bin

修改redis.conf文件

1
2
3
vim redis.conf

将daemonize no 改成daemonize yes

cd /usr/local/redis/bin
直接启动:./redis-server 退出:ctrl+c
后台启动:./redis-server redis.conf
查看是否启动:ps aux|grep redis
关闭:kill 端口 或者 ./redis-cli shutdown
强制关闭:kill -9
查看防火墙状态:service iptables status

连接本地客户端:./redis-cli
退出客户端:ctrl+c

连接其他服务端的redis客户端:./redis-cli -h ip地址 -p 端口号
(连接其他服务端需要更改配置文件redis.conf中的bind,加入IP地址)

客户端命令:ping (查看redis健康状态)返回PONG表示政正常
Redis五种基本数据类型:string,hash,list,set,sorted set

数据库

默认情况下,Redis有16个数据库,从0号数据库到15号数据库。在默认情况下,Redis客户端的数据库为0号数据库,但客户端可以通过执行select命令来切换数据库。切换之后,在客户端中会显示数据库的标号(0号数据库不显示)

string

存数据(key,value):set key value
取数据:get key
查看当前数据库所有key:keys *
key自增(加1),value只能是数字,取出来的值是string类型:incr key
key自减:decr key
删除key:del key
查看当前库中key值数量:DBSIZE
keys k?:查找以k开头且后面跟一个字符的key值(keys k??)
清空当前库:FLUSHDB
清空所有库:FLUSHALL

hash

添加hash数据类型:hset hash名 field名 value
查看hash类型下所有的field:hkeys hash名
查看hash类型下所有的field对应的值:hvals hash名

获取hash类型的所有field及对应的value:hgetall hash名

删除hash类型的field:hdel hash名 field

list

添加list类型(可添加重复元素):
从左边开始添加:lpush list名 valuse


从右边开始添加:rpush list名 values


查看list中的values:lrange list名 start end(-1表示查看所有)

取出元素:
从左边取元素:lpop list名
从右边取语速:rpop list名

元素取出后list中将不存在

set

添加set类型(不可添加重复元素):sadd set名 values
查看元素:smembers set名

删除元素:srem set1 value[values]

两个set集合取差集:sdiff set名 set名

取交集:sinter set名 set名
取并集:sunion set名 set名

sorted set

添加 sorted set类型(有序的集合):zadd zset1 score value
根据score大小将value进行升序排序

查看:zrange key start end(-1查看所有)
删除:zrem key value
降序排序查看:zrevrange key start end
查看value及score:zrange/zrevrange key start end withscores

查看所有key:keys *

设置key的过期时间:expire key seconds,在过期时间没到之前可用该命令重置过期时间;将key持久化(永不过期,必须在过期时间内设置):Persist key
查看key的过期时间:ttl key(为正数则正在倒计时过期时间,为-1则说明永久保存,为-2表示该key不存在)

Redis持久化方案

Rdb:快照形式,定期把内存中当前时刻的数据保存到磁盘,Redis默认的持久化方案,默认开启。

aof:默认关闭,完整性相比于Rdb高,每秒访问一次磁盘,将操作存在appendonly.aof文件中,如果要恢复数据库则会将appendonly.aof文件中的操作执行一遍已实现数据恢复。

二、Redis Cluster(Redis 集群)的搭建
三、SSM整合Redis Cluster(Redis集群)
四、Redis集群踩的坑及报错记录并解决