博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux下Redis的安装和部署
阅读量:6744 次
发布时间:2019-06-25

本文共 6279 字,大约阅读时间需要 20 分钟。

一、Redis介绍

Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,Redis支持各种不同方式的排序。 和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的应用场景适用于缓存无需持久化的数据。而Redis不同的是它会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,实现数据的持久化。

二、Redis的安装

下面介绍在Linux环境下,Redis的安装与部署

1、首先上官网下载Redis 压缩包,地址:http://redis.io/download 下载稳定版3.0.7即可。

2、通过远程管理工具,将压缩包拷贝到Linux服务器中,执行解压操作

[root@localhost ~]# wget http://download.redis.io/releases/redis-3.0.7.tar.gz--2018-08-15 14:39:52--  http://download.redis.io/releases/redis-3.0.7.tar.gz正在解析主机 download.redis.io (download.redis.io)... 109.74.203.151正在连接 download.redis.io (download.redis.io)|109.74.203.151|:80... 已连接。已发出 HTTP 请求,正在等待回应... 200 OK长度:1375200 (1.3M) [application/x-gzip]正在保存至: “redis-3.0.7.tar.gz”

3、执行make 对Redis解压后文件进行编译

[root@localhost ~]# tar xzf redis-3.0.7.tar.gz [root@localhost ~]# cd redis-3.0.7/[root@localhost redis-3.0.7]# make####################报错cd hiredis && make staticmake[3]: 进入目录“/root/redis-3.0.7/deps/hiredis”gcc -std=c99 -pedantic -c -O3 -fPIC  -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb  net.cmake[3]: gcc:命令未找到make[3]: *** [net.o] 错误 127make[3]: 离开目录“/root/redis-3.0.7/deps/hiredis”make[2]: *** [hiredis] 错误 2make[2]: 离开目录“/root/redis-3.0.7/deps”make[1]: [persist-settings] 错误 2 (忽略)    CC adlist.o/bin/sh: cc: 未找到命令make[1]: *** [adlist.o] 错误 127make[1]: 离开目录“/root/redis-3.0.7/src”make: *** [all] 错误 2#######################解决上述错误需要安装下面的插件  要等一段时间[root@localhost ~]# yum -y install gcc gcc-c++ libstdc++-devel

编译完成之后,可以看到解压文件redis-3.0.7 中会有对应的src、conf等文件夹,这和windows下安装解压的文件一样,大部分安装包都会有对应的类文件、配置文件和一些命令文件。

[root@localhost ~]# cd redis-3.0.7/[root@localhost redis-3.0.7]# makecd src && make allmake[1]: 进入目录“/root/redis-3.0.7/src”    CC adlist.oIn file included from adlist.c:34:0:zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录 #include 
^编译中断。####解决方案是:[root@localhost redis-3.0.7]# make MALLOC=libc###成功安装如下所示: LINK redis-benchmark CC redis-check-dump.o LINK redis-check-dump CC redis-check-aof.o LINK redis-check-aofHint: It's a good idea to run 'make test' ;)make[1]: 离开目录“/root/redis-3.0.7/src”

4、编译成功后,进入src文件夹,执行make install进行Redis安装

5、安装完成,界面如下

[root@localhost src]# make installHint: It's a good idea to run 'make test' ;)    INSTALL install    INSTALL install    INSTALL install    INSTALL install    INSTALL install

三、Redis的部署

安装成功后,下面对Redis 进行部署

1、首先为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中

a)创建bin和redis.conf文件

复制代码代码如下:

[root@localhost src]# mkdir -p /usr/local/redis/bin[root@localhost src]# mkdir -p /usr/local/redis/ect

b)执行Linux文件移动命令:

复制代码代码如下:

[root@localhost redis-3.0.7]# mv /root/redis-3.0.7/redis.conf /usr/local/redis/ect/[root@localhost redis-3.0.7]# cd /root/redis-3.0.7/src/[root@localhost src]# mv mkreleasehdr.sh  redis-benchmark redis-check-aof redis-check-dump redis-cli redis-server /usr/local/redis/bin

2、执行Redis-server 命令,启动Redis 服务

[root@localhost redis-3.0.7]# cd /usr/local/redis/bin/[root@localhost bin]# ./redis-server 21386:C 15 Aug 15:02:57.988 # Warning: no config file specified, using the default config. In order to specify a config file use ./redis-server /path/to/redis.conf21386:M 15 Aug 15:02:57.988 * Increased maximum number of open files to 10032 (it was originally set to 1024).                _._                                                             _.-``__ ''-._                                                   _.-``    `.  `_.  ''-._           Redis 3.0.7 (00000000/0) 64 bit  .-`` .-```.  ```\/    _.,_ ''-._                                    (    '      ,       .-`  | `,    )     Running in standalone mode |`-._`-...-` __...-.``-._|'` _.-'|     Port: 6379 |    `-._   `._    /     _.-'    |     PID: 21386  `-._    `-._  `-./  _.-'    _.-'                                    |`-._`-._    `-.__.-'    _.-'_.-'|                                   |    `-._`-._        _.-'_.-'    |           http://redis.io          `-._    `-._`-.__.-'_.-'    _.-'                                    |`-._`-._    `-.__.-'    _.-'_.-'|                                   |    `-._`-._        _.-'_.-'    |                                    `-._    `-._`-.__.-'_.-'    _.-'                                         `-._    `-.__.-'    _.-'                                                 `-._        _.-'                                                         `-.__.-'                                               21386:M 15 Aug 15:02:57.991 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.21386:M 15 Aug 15:02:57.991 # Server started, Redis version 3.0.721386:M 15 Aug 15:02:57.991 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.21386:M 15 Aug 15:02:57.991 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled.21386:M 15 Aug 15:02:57.991 * The server is now ready to accept connections on port 637921386:M 15 Aug 16:02:58.001 * 1 changes in 3600 seconds. Saving...21386:M 15 Aug 16:02:58.007 * Background saving started by pid 2245922459:C 15 Aug 16:02:58.015 * DB saved on disk22459:C 15 Aug 16:02:58.017 * RDB: 0 MB of memory used by copy-on-write21386:M 15 Aug 16:02:58.109 * Background saving terminated with success

四、客户端redisClient

五、登录和密码设置

[root@localhost ~]# redis-cli   登录redis127.0.0.1:6379> pingPONG127.0.0.1:6379> COMMAND KEY_NAME(error) ERR Unknown subcommand or wrong number of arguments.127.0.0.1:6379> config set requirepass test123OK127.0.0.1:6379>
[root@localhost ~]# redis-cli127.0.0.1:6379> auth test123OK127.0.0.1:6379> config get requirepass1) "requirepass"2) "test123"

转载于:https://www.cnblogs.com/zhizhao/p/9491543.html

你可能感兴趣的文章
rabbitmq 重复ACK导致消息丢失
查看>>
【Sigma敏捷版系列文章】从运行流程和list-watch看kubernetes系统的设计理念
查看>>
两列布局——但只用右浮动
查看>>
PHP网站安全日志系统开发与部署
查看>>
联想在MWC上推出两款全新Win10变形本,并加入了指纹识别器
查看>>
Java中泛型得到T.class
查看>>
TortoiseSVN客户端如何更改新的URL
查看>>
GNOME 网页浏览器 Epiphany 将要进行 5 项改进
查看>>
今年CES最大亮点:智能语音助手正成为新趋势
查看>>
Windows Mysql Server重启, log-bin路径配置
查看>>
刘剑锋:友云采助力企业数字化采购的新发展
查看>>
Rainbond 5.0.4 发布,做最好用的云应用操作系统
查看>>
缩短研发周期30% 阿里云助力安世亚太打造国内第一朵高性能仿真云
查看>>
亚马逊宣布与西云数据达成合作,旨在进一步扩大中国业务
查看>>
利用Zipkin追踪Mysql数据库调用链
查看>>
软件定义数据中心(SDDC)安全问题引人注目
查看>>
吴恩达新书《Machine Learning Yearning》中7个实用建议(附论文)
查看>>
【好东西】简书助手
查看>>
日本地震再不怕,无人机给你送实惠
查看>>
C++ 对引用的深入理解
查看>>