前言
本文讲解Redis在linux环境下的下载、安装、配置、启动服务、停止服务等实践性的操作;
环境
操作系统:ubuntu18.04.1 LTS / CentOS 7
redis版本:redis 5.0.8
下载与安装
下载
下载redis的tar.gz格式的安装包,可以使用命令:
wget http://download.redis.io/releases/redis-5.0.8.tar.gz
或在官网下载:
https://redis.io/download
安装
1、安装Gcc环境
Ubuntu:
sudo apt-get build-dep gcc
#or
sudo apt-get install build-essential
CentOS:
yum install gcc
2、解压安装包
tar -zxvf redis-5.0.8.tar.gz
3、编译安装包
Ubuntu:
cd /redis-5.0.8
make
CentOS:
cd /redis-5.0.8
make
cd /src
make install
配置redis.conf
常用配置
sudo vim redis.conf
# 1、修改bind 127.0.0.1,此处可以绑定多个IP,用空格隔开。
bind 120.133.0.1 120.0.0.1
# 2、修改daemonize,使redis以守护进程的方式运行。
daemonize yes
# 3、redis数据持久化,如需关闭,则注释掉save配置,
# 下面的配置表示3600秒之内如果有一个key发生变化则进行持久化操作。
save 3600 1
# 4、设置redis服务的密码。
requirepass 818
# 5、stop-writes-on-bgsave-error
# 修改为no,默认yes,该配置标识如果持久化出错,是否禁止写redis操作。
stop-writes-on-bgsave-error no
# 6、timeout改为某个值,默认是0,表示一个空闲redis连接的最大空闲时长。
timeout 3600
# 7、修改maxmemory,表示redis可用内存的最大值。
maxmemory 32gb
配置详解
待写
Redis的启动与停止
启动服务
cd /redis5.0.8/src
./redis-server ../redis.conf
停止服务
cd /redis5.0.3/src
./redis-cli [-p port -h host -a password] shutdown
Redis客户端命令行操作
进入客户端
cd /redis5.0.8/src
./redis-cli -h 127.0.0.1
auth passwd
操作
# 操作
set a b
get a
# 查看配置
config get *
config get max*
# 修改配置
config set timeout 3600
# 退出客户端
exit
redis操作
python连接redis
1、普通连接
import redis
redis_conn = redis.Redis(
host='120.133.xx.xxx',
port=6379,
password='xxx',
decode_responses=True,
db=0
)
2、连接池
redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令(比如,SET命令对应与StrictRedis.set方法)。Redis是StrictRedis的子类,用于向后兼容旧版本的redis-py。 简单说,官方推荐使用StrictRedis方法。
redis.Redis方式:
pool = redis.ConnectionPool(
host='120.133.xx.xxx',
port=6379,
password='xxx',
decode_responses=True,
db=0
)
redis_conn = redis.Redis(connection_pool=pool)
redis.StrictRedis方式:
pool = redis.ConnectionPool(
host='120.133.xx.xxx',
port=6379,
password='xxx',
decode_responses=True,
db=0
)
redis_conn = redis.StrictRedis(connection_pool=pool)
结语
redis6.0的stable版本即将发布,官方介绍升级巨大,毕竟是大版本号的升级,多线程、分布式都可以多多期待一下,以后我还会写redis分布式的策略,或者docker安装redis并管理的策略等,加油~!