Linux环境下redis安装、配置、启动/停止

来源:互联网 发布:php时间戳转换月份 编辑:程序博客网 时间:2024/04/29 09:51

安装环境:Ubuntu 16.04.2

安装gcc:apt install gcc/yum -y install gcc

下载redis解压文件:wget http://download.redis.io/redis-stable.tar.gz

解压:tar xzvf redis-stable.tar.gz 
切换到解压目录:cd redis-stable
编译:make 

编译过程可能会出现的问题:

1)zmalloc.h:50:31: fatal error: jemalloc/jemalloc.h: No such file or directory

原因是jemalloc重载了Linux下的ANSI C的malloc和free函数。解决办法:make时添加参数。


解决办法:采用make MALLOC=libc重新编译


2)编译完成,会提示Hint: It's a good idea to run 'make test' ;)如果采用make test进行编译校验,可能会报如下错误:

cd src && make testmake[1]: Entering directory '/opt/redis-stable/src'You need tcl 8.5 or newer in order to run the Redis testMakefile:225: recipe for target 'test' failedmake[1]: *** [test] Error 1make[1]: Leaving directory '/opt/redis-stable/src'Makefile:6: recipe for target 'test' failedmake: *** [test] Error 2


解决办法:apt install tcl/yum install tcl

安装成功后再次使用make test进行测试,过程时间可能比较长。

成功后显示:\o/ All tests passed without errors!

3)测试OK后,使用make install进行安装

make install会将redis的一些可执行文件拷贝到/usr/local/bin目录内,后续启动redis就可以直接输入可执行文件名称即可。


4)redis可执行文件说明

redis-benchmark             redis性能测试工具

redis-check-aof   AOF文件修复工具

redis-check-rdb   RDB文件检查工具

redis-cli   redis命令行客户端

redis-sentinel   sentinel 服务器

redis-server redis服务器


5)启动redis

5.1)直接启动,输入redis-server即可;默认端口号为6379,可以自定义端口号redis-server --port 6380

5.2)通过初始化脚本启动redis(生产环境建议使用)。

首先切换目录至前边的redis解压目录中,其中有个utils的目录,进去可以找到一个redis_init_script的初始化脚本文件

#!/bin/sh## Simple Redis init.d script conceived to work on Linux systems# as it does use of the /proc filesystem.REDISPORT=6379EXEC=/usr/local/bin/redis-serverCLIEXEC=/usr/local/bin/redis-cliPIDFILE=/var/run/redis_${REDISPORT}.pidCONF="/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

5.1.1)配置初始化脚本。首先将初始化脚本复制到/etc/init.d目录中,重命名文件名为redis_端口号(cp redis_init_script /etc/init.d/redis_6379),修改脚本第六行的REDISPORT值为同样的端口号。

5.1.2)建立需要的文件夹。

/etc/redis           用来存放Redis的配置文件

/var/redis/端口号               用来存放Redis的持久化文件

5.1.3)修改配置文件。首先将解压包下的redis.conf配置文件模版复制到/etc/redis目录中,以端口号命名(如cp redis.conf /etc/redis/6379.conf),然后对其中的部分参数进行编辑。(备注:进入VI后,按/,然后输入字符串,回车,按N或者n是向前向后搜索字符串

daemonize yes    使redis以守护进程模式运行

pidfile /var/run/redis_6379.pid      设置redis的PID文件位置

port 6379   设置redis监听的端口号

dir /var/redis/端口号       设置持久化文件存放位置

5.1.4)启动redis。

/etc/init.d/redis_端口号 start

如需随系统自动启动则输入命令:sudo update-rc.d redis_端口号 defaults

5.1.4)停止redis。强行终止redis进程可能会导致数据丢失,正确的方式为:redis-cli SHUTDOWN,另外采用kill redis进程的PID也可以正常结束redis


原创粉丝点击