1、Linux 系统下安装 redis
安装
在 redis 官网中有安装教程,链接:https://redis.io/download,安装步骤我拷贝过来了,步骤如下:
$ wget http://download.redis.io/releases/redis-5.0.6.tar.gz $ tar xzf redis-5.0.6.tar.gz $ cd redis-5.0.6 $ make
我在 /usr/local 目录下面操作的这些命令,也就是说 Redis 的安装目录为 /usr/local ,这些命令执行完之后你的机器上安装好 Redis ,在安装的过程中,如果你的机器上没有安装 gcc ,你安装好 gcc 之后再 make 可能会报以下错误
jemalloc/jemalloc.h: No such file or directory
当时没有截取详细的错误信息,只把主要的一段截取出来了,这个错误的原因是我们上一次 make 报错之后,有编译后的文件,所以我们需要清除上一次的残留文件再重新编译,将 make 换成 make distclean && make 就可以了。
redis.conf 文件
redis.conf 是 Redis 的配置文件,redis 的所有配置有在这个文件里面,这个文件挺大的有接近 1400 行,有关 redis 的操作、使用说明都在里面,可以详细的阅读阅读这个配置文件,大部分情况下我们使用默认配置就行,只需要设置少量配置就行。redis.conf 的存放位置在 Redis 的安装目录下,我这里是 /usr/local/redis-5.0.5 目录下,一起来看看我们可能会修改的几个配置:
● bind 127.0.0.1:允许访问机器的IP,默认只有本机才能访问,你可以修改 ip 来运行其他机器也能访问,但是如果你想让所有机器都可以访问的话,直接设置为 bind 0.0.0.0 就行了。
● port 6379:redis 实例启动的端口,默认为 6379
● daemonize no:是否以守护进程的方式运行,默认是 no,也就是说你把启动窗口关闭了,redis 实例也就关闭了,一般这个选项我们设置为 yes,以守护进程的方式运行,说俗一点就是后台运行。
● pidfile /var/run/redis_6379.pid:如果我们使用守护进程方式运行的话 ,就会产生一个后缀名为 .pid 的文件,这个使用默认的也行
● dir ./:持久化文件存放位置,这个配置我们还是设置一下为好,我这里设置为 dir /usr/local/redis_data
● appendonly no:是否开启 AOF 持久化方式,redis 默认只开启了 RDB 模式,这里我们设置为 yes,两种方式都开启,双重保险,关于这两种方式的区别,我们后面在学习
● 好像大概设置这几个就好了,更多关于 redis.conf 的配置,你可以详细阅读 redis.conf 配置文件或者查阅相关手册。
redis 的启动
Redis 的启动非常简单,Redis 安装完成之后,会在 /usr/local/redis-5.0.5/src 存放 Redis 的 shell 交互命令,其中有一个 redis-server ,这个就是 Redis 的启动命令,执行:
./redis-server /usr/local/redis-5.0.5/redis.conf
后面跟的是 redis.conf 的文件路径,不出意外的话我们将启动成功,你会看到如下界面:
在这里找到我们需要关闭 redis 实例的进程号,比如这里我们的进程号为 27133,那么我们就直接使用 kill 27133 关闭 Redis 实例服务,这种方式我们需要注意一个地方,那就是需要我们去把 pid 文件删掉,pid 文件存放的位置我们在 redis.conf 里配置的 pidfile /var/run/redis_6379.pid,我们需要到 /var/run 目录下把 redis_6379.pid 删掉,这样下一次才能正常重启 Redis 服务。
上面两种方式都可以关闭 Redis 服务,随便选一种都行,但是切记不要使用 Kill 9 方式关闭 Redis 进程,这样 Redis 不会进行持久化操作,除此之外,还会造成缓冲区等资源不能优雅关闭,极端情况下会造成 AOF 和复制丢失数据的情况
redis 开机自启动
在服务器上我们可能需要将 Redis 设置为开机自启动,其实这个也非常简单,我们只需要做以下四步操作即可。
1、 编写配置脚本 vim /etc/init.d/redis
#!/bin/sh # # Simple Redis init.d script conceived to work on Linux systems # as it does use of the /proc filesystem. #chkconfig: 2345 80 90 #description:auto_run # 端口号 REDISPORT=6379 # 启动命令 EXEC=/usr/local/redis-5.0.5/src/redis-server # shell 交付命令 CLIEXEC=/usr/local/redis-5.0.5/src/redis-cli # pid 存放位置 PIDFILE=/var/run/redis_${REDISPORT}.pid # redis 配置文件 CONF="/usr/local/redis-5.0.5/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 ;; *) echo "Please use start or stop as first argument" ;; esac
2、修改 redis.conf,设置 redis 为守护进程方式运行
################################# GENERAL ##################################### # By default Redis does not run as a daemon. Use 'yes' if you need it. # Note that Redis will write a pid file in /var/run/redis.pid when daemonized. daemonize yes
3、修改文件执行权限
chmod +x /etc/init.d/redis
4、设置开机启动
# 启动 redis service redis start # 停止 redis service redis stop # 开启服务自启动 chkconfig redis on
2、Docker 安装 Redis
Docker 安装 Redis 整体来说比较方便,我说的是非生产环境,就是自己搭着测试或者学习的环境,下面的步骤全部建立在你已经在你的电脑上安装了 Docker 的基础上,下面就来开启安装之旅。
1、拉取 redis 镜像
docker pull redis
2、快速启动
docker run -p 6379:6379 --name myredis -d redis redis-server --appendonly yes
这种方式启动使用的默认的 redis.conf 配置,我们先来看看这几个参数的意思
3、使用 redis
通过上面的步骤,我们已经在 Docker 中启动了 Redis 服务,下面我们就来通过 redis-cli 访问一下,使用下面这条命令就可以启动 redis-cli
docker exec -it dockerRedis redis-cli
其中 dockerRedis 是你启动 Redis 容器名称,不出意外的话,你可以启动一个 redis-cli 客户端,如下图所示:
/usr/local/redis/data :存放持久化文件
建立好两个目录后, 我们把 redis.conf 放在 /usr/local/redis 目录下,使用下面这条 Docker 命令启动 Redis 镜像:
docker run -p 6379:6379 -v /usr/local/redis/redis.conf:/usr/local/etc/redis/redis.conf -v /usr/local/redis/data:/data --name dockerRedis -d redis redis-server /usr/local/etc/redis/redis.conf
这条 docker 启动命令跟上面的有一点区别,有两个参数我在这里说明一下:
● -v /usr/local/redis/redis.conf:/usr/local/etc/redis/redis.conf:这参数是将 /usr/local/redis/redis.conf 复制到 /usr/local/etc/redis/redis.conf 下
● -v /usr/local/redis/data:/data:容器内持久化文件的存放位置也会映射到宿主机,换句话说在 /usr/local/redis/data 也会存放持久化文件
到此,Docker 安装 Redis 的复杂操作也做完了,如果没什么特别要求的话,使用简单的 docker 启动就好了,简单方便,完全够用了。
更多Redis相关知识,请访问Redis使用教程栏目!
以上就是Redis的两种安装部署方式(图文详解)的详细内容,更多请关注其它相关文章!