linux上安装redis及远程连接(一)

本文详细介绍Redis的安装步骤,包括依赖安装、编译过程中的常见问题及解决方案,并介绍如何配置Redis以实现后台运行、开机自启及远程连接。

一、redis的安装

1、获取安装包

可以通过wget直接获取,也可以去官网下载,通过远程传输工具,传输到linux上。

redis官网

[root@localhost local]# wget http://download.redis.io/releases/redis-6.0.8.tar.gz

2、解压下载的安装包

[root@localhost local]# tar -zxvf redis-6.0.8.tar.gz

3、安装redis

这里好多坑呀,我遇到了各种问题

1、make命令安装

[root@localhost local]# cd redis-6.0.8
[root@localhost redis-6.0.6]# cd src
[root@localhost redis-6.0.6]# make

4、遇到的问题

1、make之后报错重装

  • make clean 之后重新make,如果还是报错

  • 解压后的安装包,重新解压,重新make,可以解决一大部分不能安装的问题(前提是你安装了gcc编译)

2、make前提条件

make之间,一定要有gcc编译,如果没有gcc,会出现以下报错

CC adlist.o

/bin/sh: cc: command not found

网上大部分都是这么说的吧,原因是因为未安装gcc呀,其实有的人这样操作未必有用(例如我),获许用于,试试就知道了。

[root@localhost /]# yum install gcc-c++ -y

我按命令安装完gcc之后继续make,后面还是报错。

错误:

make[1]: Entering directory `/root/redis-4.0.6/src'
    CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory
 #include <jemalloc/jemalloc.h>
                               ^

3、make MALLOC=libc

根据2上报出的错误找到了解决办法。

我们可以通过敲以下命令解决

[root@localhost redis-6.0.6]# make MALLOC=libc

但是当我执行了这个命令之后,还是报错。(心态崩了呀)

4、gcc全套,没有安装完全导致报错

然后我又去网上寻找,终于找到了,最终取得了胜利!

安装gcc全套:

yum install cpp
yum install binutils
yum install glibc
yum install glibc-kernheaders
yum install glibc-common
yum install glibc-devel
yum install gcc
yum install make

同时升级gcc:

yum -y install centos-release-scl

yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils

scl enable devtoolset-9 bash

最后执行make命令:

[root@localhost redis-6.0.6]# make

此时redis-6.0.8中的src下有redis-server、redis-cli就代表安装成功了。

在这里插入图片描述

二、redis的启动

1、设置后台守护进程运行

[root@localhost redis-6.0.8]# vi ./redis.conf

在这里插入图片描述

2、启动redis服务:

进入你安装redis目录下,启动redis-server 服务,根据配置文件启动,

ps -ef | grep redis通过管道命令查看是否成功启动服务。

[root@localhost src]# ./redis-server /usr/local/redis-6.0.8/redis.conf
[root@localhost src]# ps -ef | grep redis
root       3152      1  0 22:31 ?        00:00:00 ./redis-server 127.0.0.1:6379
root       3160   1238  0 22:31 pts/0    00:00:00 grep --color=auto redis

3、启动客户端

在安装的redis目录下的src下,运行redsi-cli名就可以了。我们就能正常使用redis了

[root@localhost src]# ./redis-cli
127.0.0.1:6379>

4、设置开机自动启

1、设置redis.conf中daemonize为yes,确保守护进程开启。

2、编写开机自启动脚本

vi /etc/init.d/redis

3、使用以下脚本,可能不适用于任何人,但是大部分是满足的。

#!/bin/sh
REDISPORT=6379
#注意自己安装的redis根目录
REDISPATH=/usr/local/redis-6.0.8/src	#找到本机安装redis后,存放redis命令的目录
EXEC=${REDISPATH}/redis-server	#redis服务端的命令
CLIEXEC=${REDISPATH}/redis-cli	#redis客户端的命令
PIDFILE=/var/run/redis_${REDISPORT}.pid	#reids的进程文件生成的位置
CONF="${REDISPATH}/redis.conf"	#redis的配置文件所在的目录
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

4、设置redis 权限

chmod 755 /etc/init.d/redis

5、启动redis

/etc/init.d/redis start

6、设置开机启动

cd /etc/init.d/
chkconfig redis on

  1. 可能会出现如下报错
    服务 redis 不支持 chkconfig,可能是上面shell脚本有问题,修复方法参考下面
    在这里插入图片描述

2.修复不支持chkconfig

cp utils/redis_init_script /etc/init.d/redis

重复步骤4,5,6

7、重启观察是否生效
执行> reboot 命令重启
如下图所示,重启后程序还没有自启动,继续观察,已启动
在这里插入图片描述

三、远程连接

1、使用Another redi DesktopManager工具

报错:
在这里插入图片描述
解决:修改redis.conf配置文件

1、 找到 bind 127.0.0.1 , 注销该配置
2、找到 # masterauth mstpassword , 移除注释, masterauth 后面跟上自己要设置的密码, 没有找到这个的话就算了, 就是把第二个单词改成自己的密码
3、找到 # requirepass foobared , 移除注释, requirepass 后面跟上自己要设置的密码, 就是把第二个单词改成自己的密码, 两个密码设置成一样的

2、开启防火墙

firewall-cmd --permanent --zone=public --add-port=6379/tcp

firewall-cmd --reload

3、重启服务

/etc/init.d/start stop
/etc/init.d/redis start

4、重新连接

在这里插入图片描述
可以正常使用了:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值