Redis入门

2020-05-18  本文已影响0人  flamez57

一,下载安装

1.下载安装

你可以在redis官网(https://redis.io/download)找到下载安装的过程如下所示:

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

$ tar xzf redis-6.0.3.tar.gz

$ cd redis-6.0.3

$ make &&  make PREFIX=/usr/local/redis install

2.报错处理

安装过程中遇到报错

报错原因是由于gcc版本不够

下面是解决办法(来源:https://blog.csdn.net/P_ning/java/article/details/106146374)

# 查看gcc版本是否在5.3以上,centos7.6默认安装4.8.5

gcc -v

# 下载包

yum -y install centos-release-scl

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

临时升级,退出shell或重启就会恢复原系统gcc版本

# 升级gcc到5.3及以上,如下:

scl enable devtoolset-9 bash

如果要长期使用gcc 9.3的话:

echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

尝试用命令

# 编译出错时,清出编译生成的文件

make distclean

# 编译安装到指定目录下

make PREFIX=指定路径下 install

# 卸载

make uninstall

重启服务器后重新编译安装就可以了。

src/redis-server

3.设置后台运行和指定日志

$ cd /usr/local/redis //进入安装后的目录

$ mkdir etc logs //新建两个目录

$ cp /root/redis-6.0.3/redis.conf etc/redis.conf  //复制配置文件

通过修改redis.conf文件,搜索daemonize关键字,将   daemonize no   修改为    daemonize yes   ,设置以后台方式启动和关闭

若需要开启日志记录功能,将redis.conf 文件中的 loglevel 和 logfile 属性

$ vi /usr/local/redis/etc/redis.conf

$ /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf    //指定配置文件启动

$ ps -ef | grep redis //查看进程 

$  netstat -tunpl | grep 6379 //查看端口 

客户端命令链接服务器

/usr/local/redis/bin/redis-cli

redis 127.0.0.1:6379>

redis 127.0.0.1:6379>quit 退出

# pkill redis-server 结束redis进程。

或: # /usr/local/redis/bin/redis-cli shutdown 执行关闭

flushdb:删除所有的数据

二,开机自启动

系统开机启动时会去加载/etc/init.d/下面的脚本,通常而言每个脚本文件会自定义实现程序的启动;若想将新的程序开机自启动,只需在该目录下添加一个自定义启动程序的脚本,然后设置相应规则即可。 (参考:https://blog.csdn.net/ai_64/java/article/details/101042895)

[root@localhost ~]# cd /etc/init.d

[root@localhost init.d]# touch redis

[root@localhost init.d]# chmod 777 redis

[root@localhost init.d]# vi redis

启动脚本内容

#!/bin/bash

#chkconfig: 22345 10 90    // redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。

#description: Start and Stop redis

REDISPORT=6379

EXEC=/usr/local/redis/bin/redis-server

CLIEXEC=/usr/local/redis/bin/redis-cli

PIDFILE=/var/run/redis.pid

CONF="/usr/local/redis/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

        ;;

    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

        ;;

    restart)

        "$0" stop

        sleep 3

        "$0" start

        ;;

    *)

        echo "Please use start or stop or restart as first argument"

        ;;

esac

[root@localhost ~]# chkconfig --add redis     //服务的形式启动和关闭redis

[root@localhost ~]# chkconfig redis on     //加入开机自启服务

[root@localhost ~]# chkconfig --list       //查看所有注册的脚本文件

查看所有注册的脚本文件

强制关掉电源或断电造成的,也是没等linux正常关机。这些会照成redis启动失败。启动失败时往往会提示 :

/var/run/redis_6379.pid exists, process is already running or crashed

解决方法:

1:可用安装文件启动     redis-server /etc/redis/6379.conf

2:shutdown -r now 软重启让系统自动恢复下就行了。

linux 运行级别含义:

运行级别就是操作系统当前正在运行的功能级别。这个级别从0到6 ,具有不同的功能。这些级别在/etc/inittab文件里指定。这个文件是init程序寻找的主要文件,最先运行的服务是那些放在/etc/rc.d 目录下的文件。

不同的运行级定义如下:(可以参考Linux里面的/etc/inittab)

# 缺省的运行级,RHS用到的级别如下:

0:关机

1:单用户模式

2:无网络支持的多用户模式

3:有网络支持的多用户模式

4:保留,未使用

5:有网络支持有X-Window支持的多用户模式

6:重新引导系统,即重启

通俗的解释:

0 为停机,机器关闭。

1 为单用户模式,就像Win9x下的安全模式类似。

2  为多用户模式,但是没有NFS支持。

3  为完整的多用户模式,是标准的运行级。

4 一般不用,在一些特殊情况下可以用它来做一些事情。

例如在笔记本 电脑的电池用尽时,可以切换到这个模式来做一些设置。

5  就是X11,进到X Window系统了。

6  为重启,运行init 6机器就会重启。

上一篇下一篇

猜你喜欢

热点阅读