`

Redis 安装学习

阅读更多
1、安装redis

下载redis安装包 redis-3.2.4.tar.gz

创建redis目录

mkdir /usr/local/redis

cp redis-3.2.4.tar.gz /usr/local/redis  #将安装包拷贝到指定目录

tar -zxvf redis-3.2.4.tar.gz

cd redis-3.2.4

make PREFIX=/usr/local/redis install  #安装到指定目录,不指定将会默认安装到local/bin目录下用的是ubuntuOS,自带REFIX指令


安装完成后, /usr/local/redis/bin 包含以下文件
redis-benchmark  redis-check-aof  redis-check-rdb  redis-cli  redis-sentinel  redis-server


2、做成redis服务
先找到 redis_init_script脚本,位于刚才的解压缩的文件 redis-3.2.4中
cd /usr/locak/redis/redis-3.2.4/utils  

复制到 /etc/init.d/ 目录下,并修改为redis
cp  redis_init_script   /etc/init.d/redis


进入刚才复制redis,脚本内容

#!/bin/sh
#
# Simple Redis init.d script conceived to work on Linux systems
# as it does use of the /proc filesystem.

REDISPORT=6379
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli

PIDFILE=/var/run/redis_${REDISPORT}.pid
CONF="/etc/redis/${REDISPORT}.conf"

case "$1" in
    start)
        if [ -f $PIDFILE ]
        then
                echo "$PIDFILE exists, process is already running or crashed"
        else
                echo "Starting Redis server..."

                $EXEC $CONF &

        fi
        ;;
    stop)
        if [ ! -f $PIDFILE ]
        then
                echo "$PIDFILE does not exist, process is not running"
        else
                PID=$(cat $PIDFILE)
                echo "Stopping ..."
                $CLIEXEC -p $REDISPORT shutdown
                while [ -x /proc/${PID} ]
                do
                    echo "Waiting for Redis to shutdown ..."
                    sleep 1
                done
                echo "Redis stopped"
        fi
        ;;
    *)
        echo "Please use start or stop as first argument"
        ;;
esac


以上是修改后的文件,修改的地方有:
EXEC 和CLIEXEC,配置对应安装的地方
EXEC=/usr/local/redis/bin/redis-server
CLIEXEC=/usr/local/redis/bin/redis-cli


PIDFILE 需要在对应 var/run 目录下找redis文件,如果是redis.pid,就删除_{REDISPORT},redis_6379.pid就不用修改
PIDFILE=/var/run/redis_${REDISPORT}.pid

CONF是拷贝的配置文件,找到解压包中的redis.conf,复制变更改为6379.conf
CONF="/etc/redis/${REDISPORT}.conf"


mkdir /etc/redis
cp  redis.conf  /etc/redis/6379.conf


最后 在$EXEC $CONF 添加  &  表示后台运行

接下来在网上找都是通过 chkconfig 指令进行操作,结果自己测试找不到这个指令,发现ubuntu早没有了,后面找到sysv-rc-conf可代替,sysv-rc-conf用来管理ubuntu server,这里只是简单的用了下
安装
sudo apt-get install sysv-rc-conf 


完成后,即可注册redis服务
sudo sysv-rc-conf redis on


启动服务
Service redis  start 


最后修改 /etc/profile 文件,添加

export PATH="$PATH:/usr/local/redis/bin"


3、参数配置
vi /etc/redis/6379.conf

修改权限配置,修改后客户端jedis连接时都需要提供密码
requirepass password

注释绑定ip
bind 127.0.0.1           #jedis连接需要注释


后台启动
daemonize yes           #启动方式,yes为后台启动,


主从配置,配置后主从可以进行读写分离,主节点可以进行写操作,从节点只能进行读操作
slaveof  ip  port


数据备份
bgsave #该命令在后台执行,进行持久化操作,不会影响客户端的链接  
save  #如果上述bgsave执行失败,可以使用save进行操作,但是会影响客户端的链


日志和数据保存,先创建目录
mkdir -p /opt/redis/logs  
mkdir -p /opt/redis/data


配置修改:
loglevel debug                      #日志级别:默认为notice  
logfile /opt/redis/logs/redis.log         #日志输出:默认为stdout  
dbfilename redis.rdb                 #默认为dump.rdb  
dir /opt/redis/data                   #默认为./


备份策略
save 60 1000  

含义:
如上的设置,会在60s内、如果有1000个key发生改变就进行持久化,可设置多个save选项,默认持久化到dump.rdb。
文件追加(aof):append-only-file模式。Redis会将每个接收到的“写命令”通过write函数追加到appendonly.aof文件,重启Redis时通过该文件重建整个数据库。由于os内核会缓存write函数所做的“修改”,可以使用fsync函数指定写入到磁盘的方式。
appendonly yes          #启动aof持久化方式   
appendfsync always      #对每条“写命令”立即写至磁盘  
appendfsync everysec    #默认:每秒写入一次,在性能和可靠性之间的平衡  
appendfsync no          #依赖于os,不指定写入时机
 

两种方式的比较:   
快照方式:性能较好,但是快照间隔期间,如果宕机将造成数据丢失。  
AOF模式:影响性能,不容易造成数据丢失。  
如果Redis宕机:重启Redis即可,会自动使用redis.rdb、appendonly.aof恢复数据库。主从备份:从数据安全性角度考虑。   
关闭快照功能。   
同时设置主从服务器都为AOF模式。   
说明:如果仅对Slave进行持久化设置,重启时,Slave自动和Master进行同步,全部数据丢失

4、Jedis连接问题
下载jidis,直接测试

出现 connection  refused 问题,需要关闭linux 防火墙, ubuntuOS 查看防火墙状态:
sudo ufw status

然后关闭
sudo  ufw  disable


出现DENIED Redis is running in protected mode because protected mode is enabled问题;需要将redis.conf文件中要将protected-mode yes改为no

出现NOAUTH Authentication required  问题,由于自己开始启动时没有设置密码,后面又修改添加了密码,关闭时出现问题,使用kill强制结束进程,再启动OK
分享到:
评论

相关推荐

    Redis安装和使用教程

    小白学习redis的必备文档,认识redis,安装reids,redis语法等等教程

    redis安装文档,亲测成功并进行整理

    redis安装文档,包含windows环境及linux环境,亲测安装成功,方便大家进行学习整理,个人觉得非常有必要学习一下~

    redis安装教程

    redis安装教程,新手们学习redis安装的法宝redis安装教程,新手们学习redis安装的法宝

    redis相关学习文档

    redis相关学习文档,包含reids安装等等

    热-redis安装配置学习

    redis安装配置

    Redis学习-实战.docx

    Redis学习-实战.docx NoSQL 2.3、 安装Redis Redis数据库操作命令 、 Jedis Spring Data Redis

    redis 学习资料

    redis 安装 集群 部署文档 内含bat启动文件 适合新手了解redis

    7.Redis学习笔记.pdf

    redis学习笔记,讲解redis的安装使用,基本原理,常见场景,脚本,持久化,事务等高级特性都有讲解

    redis基础学习笔记

    二.Redis安装及配置 3 1.下载源码,编译安装 3 2.修改配置 4 3.启动 5 三.Redis常用的命令 6 四.Redis 在客户端程序中的使用 11 1.Java客户端jar包 11 2.测试程序: 11 3.Spring中的配置 13 4.pipeline 14 五....

    redis安装版本和免安装版本以及redis可视化工具

    redis学习的前提条件工具下载

    Redis学习笔记-安装、性能、复制等

    一、Redis 介绍 二、Redis 性能介绍 三、Redis 功能 四、Redis 安装及配置 五、Redis 启动 六、Redis 的数据类型 七、Redis 的master/slave 配置

    window下 php5 安装redis 及安装php-redis扩展 (亲测有用)

    phpredis是个人觉得最好的一个php-redis客户端,因为其提供的function与redis的命令基本一致,降低的了学习成本,...1. windows下redis的客户端,可直接安装redis; 2. php5.5 的redis扩展(64位和32位的dll文件);

    redis安装脚本setup.sh

    有时候在linux上安装个程序就很麻烦,要看教程,找地方下载,安装编译,很多时候各种各样的错误需要解决,最近准备学习redis,需要安装一个,正好看到开源项目Teamtalk里有自动安装的脚本,特地分享出来,一个命令就...

    redis源码安装以及配置

    安装步骤:https://blog.csdn.net/weixin_38642130/article/details/86596979 查阅了一些资料进行整理,记录学习之旅,分享给大家共同学习进步!

    windows下redis安装

    在window环境下安装redis服务,方便大家学习使用

    docker、docker-compose 安装redis集群 (一台虚拟机上安装的伪集群,学习使用)

    docker、docker-compose 一键安装redis集群 (一台虚拟机上安装的伪集群,学习使用,可以修改文件配置相关参数,非原创,亲测可用) 第一步 /usr/local/下依次建docker、redis目录“/usr/local/docker/redis” 第二步 ...

    redis学习课件.zip

    以下是一些学习Redis的基本步骤和要点: 了解Redis的基本概念和特性: Redis是一个基于内存的key-value存储系统,它支持多种类型的数据结构,如字符串、哈希、列表、集合、有序集合等。 Redis的所有操作都是原子性...

    学习Redis的脑图.rar

    是一份redis学习脑图可编辑文档,能更好的辅助学习redis,是从安装到分布式部署,数据持久化,主从复制等高级的骚操作。 redis不但要会用,还要知道为啥这样用,知其然,知其所以然。 开启Redis历程篇,记录学习...

    Redis 64位安装版

    Redis 资源 安装版 3.2100安装版,欢迎大家下载学习新技术。

    redis从安装到三主三从集群_redis_redis三主三从_

    redis从安装到三主三从集群,帮助学习Redis!!!!!!!!!

Global site tag (gtag.js) - Google Analytics