本文介绍: Redis 是完全开源免费的,遵守BSD协议内存中的数据结构存储系统,它可以用作数据库缓存消息中间件。特点:支持数据持久化,可以内存中的数据保存硬盘,在重启后再次加载使用支持数据结构丰富,Stringlistsetzsethash等等。支持数据备份masterslave模式进行数据备份。优势:性能高,Redis能读的速度是110000次/s,写的速度是81000次/s。数据类型丰富原子性,redis中所有操作都是原子的,并且多个操作支持原子性。

目录

1. Redis简介

2. 离线安装

2.1 准备工作

2.2 解压、安装

2.3 修改配置文件

2.4 redis服务与关闭

2.5 redis服务的开机启动

2.5.1 Ubuntu上的配置

2.5.2 centos上的配置

3. 在线安装

4. 设置防火墙

5. 客户端连接


1. Redis简介

Redis 是完全开源免费的,遵守BSD协议内存中的数据结构存储系统,它可以用作数据库缓存消息中间件

特点:
支持数据持久化,可以将内存中的数据保存硬盘,在重启后再次加载使用
支持的数据结构丰富,Stringlistsetzsethash等等。
支持数据备份masterslave模式进行数据备份

优势:
性能高,Redis能读的速度是110000次/s,写的速度是81000次/s。
数据类型丰富
原子性,redis中所有操作都是原子的,并且多个操作也支持原子
丰富的特性,如通知key过期等。

2. 离线安装

说明:该例的示例步骤基于ubuntu16版本

2.1 准备工作

离线安装redis前先安装两个软件gccmake,为方便安装可以先将用户切换root下(使用 su 命令需要输入root密码
1)安装gcc

apt-get install gcc

2)安装make

apt-get install make

关于gccmake
GCC(GNU Compiler Collection,GNU编译器套件),是由 GNU 开发编程语言编译器。它是以GPL许可证所发行的自由软件,也是 GNU计划关键部分。GCC是Linux下重要的编译工具
make工具定义通过编写makefile脚本文件描述整个工程编译链接规则;通过脚本文件,对于复杂工程可以只通过一个命令完成整个编译过程。类似于java中的maven

3)下载redis5,本例下载到了/home/lise目录下。

wget http://download.redis.io/releases/redis-5.0.3.tar.gz

注: wget简介
wgetlinux常用文件下载工具wget支持httphttpsftp协议,支持使用http代理
wget有很多参数常用的有一下几个:
-V —version 显示wget版本
ooutputfile=file信息写入file,如果不提供默认以下载的文件作为文件名
vverbose 详细输出默认值
ttries=number 设置重试次数,0表示限制

2.2 解压安装

1)在/usr/local目录创建一个redis目录又来放置解压后的redis

mkdir /usr/local/redis

2)在本例中redis下载在/home/lisen目录,来到该目录执行解压

tar -zxvf redis-5.0.3.tar.gz  -C /usr/local/redis

3)编译安装(在/usr/local/redis/redis-5.0.3目录下执行)

#编译
make

#安装
make install

编译成功的输出

安装完成时的输出

可以查看编译完成的redis命令文件

ls /usr/local/bin/redis*
文件 作用
/usr/local/bin/redis-benchmark 性能测试工具
/usr/local/bin/redis-checkaof 更新日志检查
/usr/local/bin/redis-checkdump 本地数据文件检查
/usr/local/bin/redis-cli 命令行操作工具
/usr/local/bin/redis-server 服务器程序

执行编译后,安装之前,可以选择性执行make test我们下载的一般都是release版本,该步骤是可选的(该步骤运行所有的单元测试代码需要较长的时间),如果执行时报:You need tcl 8.5 or newer in order to run the Redis test,则需要先安装tcl,可以使用
wget https://nchc.dl.sourceforge.net/project/tcl/Tcl/8.6.8/tcl8.6.8-src.tar.gz执行安装。

2.3 修改配置文件

 vim /usr/local/redis/redis-5.0.3/redis.conf

配置文件需要如下修改

2.4 redis服务关闭

1)启动
安装成功后可以使用redis-server命令进行启动,改命令已经放入/usr/local/bin目录下,且该目录已经放入path环境变量,所以不必进入redis的安装目录也可以执行redis-server命令,在执行时为了使在/usr/local/redis/redis-5.0.3/redis.conf配置文件起效,需要作为启动参数提供。

redis-server  /usr/local/redis/redis-5.0.3/redis.conf

注意:为了能正常读取redis.conf配置文件需要切换root用户,或通过sudo命令启动

启动成功后可以通过如下命令查看

ps -aux|grep redis

 

2)关闭
可以使用如下命令进行关闭

redis-cli shutdown      #未设置密码直接关闭
redis-cli -a 密码  shutdown   #设置密码,在关闭时需要提供密码

 

2.5 redis服务开机启动

2.5.1 Ubuntu上的配置

1)在设置开机启动之前先确定是否安装了sysv-rcconf

dpkg -l | grep sysv-rc-conf

如果没有安装则先安装该软件

注:sysv-rcconf 是功能强大的服务管理软件

apt-get install sysv-rc-conf

安装完成后可以通过如下命令来启动该程序

sysv-rc-conf

2)将启动脚本redis_init_script(位于安装目录下的utils目录下)复制到/etc/init.d下,重命名为redis-5.0.3

#将启动脚本拷贝init.d目录
cp /usr/local/redis/redis-5.0.3/utils/redis_init_script /etc/init.d/

#进入init.d目录,重命名
cd /etc/init.d
mv redis_init_script redis-5.0.3

注: init.d目录即存放安装的服务的启动脚本

3)使用vim编辑启动脚本

#进入/etc/init.d
cd /etc/init.d

vim redis-5.0.3

# 将CONF修改为安装目录下的redis.conf
REDISPORT=6379                               #redis端口
EXEC=/usr/local/bin/redis-server             #redis server目录
CLIEXEC=/usr/local/bin/redis-cli             #redis cli目录
PIDFILE=/var/run/redis_${REDISPORT}.pid      #PID文件目录 
#CONF="/etc/redis/${REDISPORT}.conf"          #启动配置文件目录
CONF=/usr/local/redis/redis-5.0.3/redis.conf

4)使用sysv-rc-conf设置开机启动
使用方法
操作界面十分简洁,你可以用鼠标点击,也可以用键盘方向定位,用空格选择,用Ctrl+N翻下一页,用Ctrl+P翻上一页,用Q退出。其中,“X”表示开启服务

5)如果启用了密码保护,则需要在启动脚本中做一些修改,否则在运行service redis-5.0.3 stop 时会报错

注: 将 $CLIEXEC –p REDISPORT shutdown改为 CLIEXEC –p $REDISPORT -a 密码 shutdown

2.5.2 centos上的配置

1) 在 usr/local/redis/redis-5.0.3 目录下,可以看到utils目录

[root@localhost redis-5.0.3]# ls
00-RELEASENOTES  COPYING  Makefile   redis.conf       runtest-sentinel  tests
BUGS             deps     MANIFESTO  runtest          sentinel.conf     utils
CONTRIBUTING     INSTALL  README.md  runtest-cluster  src
[root@localhost redis-5.0.3]#

2) 进入utils目录,并指向install_server.sh脚本

[root@localhost utils]# ./install_server.sh
Welcome to the redis service installer
This script will help you easily set up a running redis server

Please select the redis port for this instance: [6379]
Selecting default: 6379
Please select the redis config file name [/etc/redis/6379.conf] /usr/local/redis/redis-5.0.3/redis.conf
Please select the redis log file name [/var/log/redis_6379.log]
Selected default - /var/log/redis_6379.log
Please select the data directory for this instance [/var/lib/redis/6379]
Selected default - /var/lib/redis/6379
Please select the redis executable path [/usr/local/bin/redis-server]
Selected config:
Port           : 6379
Config file    : /usr/local/redis/redis-5.0.3/redis.conf
Log file       : /var/log/redis_6379.log
Data dir       : /var/lib/redis/6379
Executable     : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service...
Successfully added to chkconfig!
Successfully added to runlevels 345!
/var/run/redis_6379.pid exists, process is already running or crashed
Installation successful!

该命令是交互式的,需要交互式输入port, redis.conf,log文件等。

3)在/etc/init.d/目录下可以看到redis_6379这个自启动脚本

[root@localhost utils]# cd /etc/init.d
[root@localhost init.d]# ls
functions  netconsole  network  README  redis_6379  tomcat
[root@localhost init.d]#
./usr/local/redis/redis-5

4) chkconfiglist命令查看

[root@localhost init.d]# chkconfig --list

注:该输出结果显示 SysV 服务,并不包含
原生 systemd 服务。SysV 配置数据
可能原生 systemd 配置覆盖。

      要列出 systemd 服务,请执行 'systemctl list-unit-files'。
      查看在具体 target 启用的服务请执行
      'systemctl list-dependencies [target]'。

netconsole      0:关    1:关    2:关    3:关    4:关    5:关    6:关
network         0:关    1:关    2:开    3:开    4:开    5:开    6:关
redis_6379      0:关    1:关    2:开    3:开    4:开    5:开    6:关
tomcat          0:关    1:关    2:开    3:开    4:开    5:开    6:开
[root@localhost init.d]#

可以看到redis程序在2,3,4,5这四个等级下是开机自启动

3. 在线安装

在线安装比较简单运行下面命令即可

apt-get install redis-server

查看安装的位置

whereis redis

修改redis.conf配置文件(/etc/redis/redis.conf),取消只能本地访问限制即可

查看安装的redis版本

redis-server -v

注:目前通过apt-get在线安装的redis-server版本为3.0.6,建议使用离线安装的方式安装 5.0.3版本。

centos中使用

yum install redis

进行在线安装,如果现实未找到源,则可以先安装epel软件库,如果在执行安装

yum install -y epel-release

....
yum install redis

目前centos中在线安装的redis版本比较低,版本号大约是3.2.12

自启
在/etc/init.d 目录下创建sh脚本如下

##!/bin/bash

# chkconfig: 2345 10 90
# description: Start and Stop redis
 
PATH=/usr/local/bin:/sbin:/usr/bin:/bin
 
REDISPORT=6379 #实际环境而定
EXEC=/bin/redis-server #实际环境而定
REDIS_CLI=/bin/redis-cli #实际环境而定
 
PIDFILE=/var/run/redis.pid
CONF="/etc/redis.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
                if [ "$?"="0" ]
                then
                        echo "Redis is running..."
                fi
                ;;
        stop)
                if [ ! -f $PIDFILE ]
                then
                        echo "$PIDFILE exists, process is not running."
                else
                        PID=$(cat $PIDFILE)
                        echo "Stopping..."
                        $REDIS_CLI -p $REDISPORT SHUTDOWN
                        while [ -x $PIDFILE ]
                        do
                                echo "Waiting for Redis to shutdown..."
                                sleep 1
                        done
                        echo "Redis stopped"
                fi
                ;;
        restart|force-reload)
                ${0} stop
                ${0} start
                ;;
        *)
                echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2
                exit 1
esac

设置权限

chmod +x /etc/init.d/redis



# 尝试启动或停止redis
service redis start
service redis stop


# 开启服务自启动
chkconfig redis on

4. 设置防火墙

如果服务器开启了防火墙,则需要将redis使用的端口号加入防火墙

ufw allow 6379

注:
开启防火墙 ufw enable
禁用防火墙 ufw disable

5. 客户端连接

1)redis-cli 连接

redis-cli -h 127.0.0.1 -p 6379  -a 密码   --raw

注:如果没有设置密码可以不带-a参数,–raw参数用于解决中文显示乱码问题

2) 使用RedisDesktopManager

原文地址:https://blog.csdn.net/qq_73126462/article/details/134696503

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_40820.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注