linux之redis6.2环境安装与配置

1. redis 6.2 系列

1.1 安装

进入官网,下载redis-6.2.4.tar.gz

image

将下载好的 redis 文件压缩包,上传到 linux 系统中

image

# 通过终端命令解压
[root@localhost local]# tar -zxvf redis-6.2.4.tar.gz

# 重命令 redis,改不改问题不大,个人习惯
[root@hua local]# mv redis-6.2.4 redis

# 注意 redis C语言开发 安装需要 gcc 环境,才能正常运行
[root@localhost local]# yum -y install gcc

# 进入 redis 中,执行命令
[root@localhost local]# cd redis
[root@localhost redis]# make

# 在进入到 src 中
[root@localhost redis]# cd src
[root@localhost src]# make install

# 开启 redis 服务
[root@localhost src]# ./redis-server ../redis.conf

image

注意:这样开启服务,会有问题,它以前台模式运行服务,这样还需要另外一台连接服务器来对 redis 操作
# 修改 redis.conf 配置文件
[root@localhost src]# vim /usr/local/redis/redis.conf

image

保存并开启服务测试
# 进入到 redis 中的 src 里,开启服务时,带上 redis 配置文件
[root@localhost src]# ./redis-server ../redis.conf

# 连接 redis 客户端,进行操作,显示地址和端口表示 redis 连接成功,可以使用
[root@localhost src]# ./redis-cli
127.0.0.1:6379>
远程连接
# 综上,能够正常开启和连接服务,但是在windows中使用 RDM 或者 IDEA,就无法连接成功
# 原因是没有设置远程连接
# 修改 redis 配置文件
[root@localhost src]# vim /usr/local/redis/redis.conf

image

# 重启 redis 服务
[root@localhost src]# ./redis-server ../redis.conf
防火墙
# 综上得到配置好还是远程连接不上,最后排查防火墙
[root@localhost local]# systemctl status firewalld.service

image

# 关闭防火墙
[root@localhost local]# systemctl stop firewalld.service
自启动
# 编写自启动脚本
# 注意在 /etc/init.d 中 编写 redis 文件,/etc/init.d 就是开机初始化文件夹
[root@localhost src]# vi /etc/init.d/redis
配置信息
#!/bin/sh
# chkconfig: 2345 10 90
# description: Start and Stop redis

# 到本机安装redis后,存放redis命令的目录
PATH=/usr/local/bin:/usr/local/redis/src

# redis的默认端口, 要和下文中的redis.conf中一致
REDISPORT=6379

# redis服务端的命令
EXEC=/usr/local/redis/src/redis-server

# redis客户端的命令  这两个一般都在 PATH目录下
REDIS_CLI=/usr/local/redis/src/redis-cli

# reids的进程文件生成的位置
PIDFILE=/var/run/redis.pid

# redis的配置文件所在的目录
CONF="/usr/local/redis/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
                        sleep 2
                       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
# 保存后,进入到 /etc/init.d 中
[root@localhost src]# cd /etc/init.d

# 查看文件权限
[root@localhost init.d]# ll
-rw-r--r--. 1 root root 18281 May 22  2020 functions
-rwxr-xr-x. 1 root root 10613 Jul  9 19:32 mysql
-rwxr-xr-x. 1 root root  4569 May 22  2020 netconsole
-rwxr-xr-x. 1 root root  7928 May 22  2020 network
-rw-r--r--. 1 root root  1160 Oct  2  2020 README
-rw-r--r--. 1 root root  1898 Jul 15 16:20 redis

# 修改 redis 文件权限
[root@localhost init.d]# chmod 775 redis

# 再次查看 redis 权限
-rw-r--r--. 1 root root 18281 May 22  2020 functions
-rwxr-xr-x. 1 root root 10613 Jul  9 19:32 mysql
-rwxr-xr-x. 1 root root  4569 May 22  2020 netconsole
-rwxr-xr-x. 1 root root  7928 May 22  2020 network
-rw-r--r--. 1 root root  1160 Oct  2  2020 README
-rwxr-xr-x. 1 root root  1898 Jul 15 16:20 redis

# 测试是否有效
[root@localhost init.d]# /etc/init.d/redis start
Starting Redis server...
Redis is running...

# 最后添加自启
[root@localhost init.d]# chkconfig --add redis

# 开启自启
[root@localhost init.d]# chkconfig redis on

# 查看服务
[root@localhost init.d]# chkconfig --list
安装完毕!

1.2 卸载

查看是否安装了 redis 数据库
# 查看是否存在 redis
[root@localhost local]# rpm -qa | grep redis
[root@localhost local]# find / -name redis
/etc/selinux/targeted/active/modules/100/redis
/usr/local/redis

# 查看服务是否开启状态
[root@localhost local]# ps -ef | grep 6379
root       2854      1  0 14:31 ?        00:00:01 ./redis-server 0.0.0.0:6379
root       6970   1465  0 14:41 pts/0    00:00:00 grep --color=auto 6379

# 存在服务进程,将其杀死
[root@localhost local]# kill -9 2854

# 卸载 redis 服务
[root@localhost local]# rm -rf /etc/selinux/targeted/active/modules/100/redis
[root@localhost local]# rm -rf /usr/local/redis
卸载完毕!
posted @ 2021-07-18 17:12  陈可儿  阅读(2824)  评论(3编辑  收藏  举报