Redis介绍——Linux环境Redis安装全过程和遇到的问题及解决方案

Redis介绍——Linux环境Redis安装全过程和遇到的问题及解决方案

大家好,又见面了,我是全栈君。

一:redis的入门介绍:
首先贴出官网;
英文:https://redis.io/
中文:http://www.redis.cn/
1.是什么
–REmote DIctionary Server(远程字典服务器)
–完全开源免费,用c语言编写的,遵守BSD协议
–高性能(key/value)分布式内存数据库,基于内存运行。并支持持久化的NoSql数据库。
–Redis于其他key-value产品的三个特点
(1)可以持久化,到磁盘
(2)数据类型多,list,set,zset,hash的数据结构的存储
(3)支持数据备份,即master-slave模式
2.能干嘛
–内存的存储和持久化
–发布,订阅消息系统
–定时器、计算器

3.去哪里下载
–官网 www.redis.cn

4.怎么玩
–数据类型的基本操作
–持久化和复制
–事务的控制 – 部分成,不保证事务
–……
二:Redis安装全过程和遇到问题解决方案
1.下载redis安装包,然后使用解压命令进行解压

tar -zxvf redis.tar.gz

2.解压完成,进入解压的目录,使用make命令

[root@localhost redis-3.0.4]# make

然后遇到错误了!如下所示:老长一串了!大概看看就行!

cd src && make all
make[1]: Entering directory `/root/dufy/redis/redis-3.0.4/src' rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-dump redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html (cd ../deps && make distclean) make[2]: Entering directory `/root/dufy/redis/redis-3.0.4/deps'
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-*)
make[2]: Leaving directory `/root/dufy/redis/redis-3.0.4/deps' (rm -f .make-*) echo STD=-std=c99 -pedantic >> .make-settings echo WARN=-Wall -W >> .make-settings echo OPT=-O2 >> .make-settings echo MALLOC=jemalloc >> .make-settings echo CFLAGS= >> .make-settings echo LDFLAGS= >> .make-settings echo REDIS_CFLAGS= >> .make-settings echo REDIS_LDFLAGS= >> .make-settings echo PREV_FINAL_CFLAGS=-std=c99 -pedantic -Wall -W -O2 -g -ggdb -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -DUSE_JEMALLOC -I../deps/jemalloc/include >> .make-settings echo PREV_FINAL_LDFLAGS= -g -ggdb -rdynamic >> .make-settings (cd ../deps && make hiredis linenoise lua jemalloc) make[2]: Entering directory `/root/dufy/redis/redis-3.0.4/deps'
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-*)
(echo "" > .make-ldflags)
(echo "" > .make-cflags)
MAKE hiredis
cd hiredis && make static
make[3]: Entering directory `/root/dufy/redis/redis-3.0.4/deps/hiredis' gcc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c make[3]: gcc:命令未找到 make[3]: *** [net.o] 错误 127 make[3]: Leaving directory `/root/dufy/redis/redis-3.0.4/deps/hiredis'
make[2]: *** [hiredis] 错误 2
make[2]: Leaving directory `/root/dufy/redis/redis-3.0.4/deps' make[1]: [persist-settings] 错误 2 (忽略) CC adlist.o /bin/sh: cc: command not found make[1]: *** [adlist.o] 错误 127 make[1]: Leaving directory `/root/dufy/redis/redis-3.0.4/src'
make: *** [all] 错误 2

怎么解决呢,安装进行不下去了,仔细看错误,发现make[3]: gcc:命令未找到 ,是gcc的问题啊!
解决方案在这里:使用yum进行安装gcc
备注:如果你的虚拟机可以直接上网,那么请直接使用下面命令:

yum -y install gcc

否则请先搭建本地yum源,使用光盘搭建,然后在使用下面命令:

yum -y install gcc

3.在此使用make命令

[root@localhost redis-3.0.4]# make

然后发现又有问题出现了?出错信息如下:

cd src && make all
make[1]: Entering directory `/root/dufy/redis/redis-3.0.4/src'
 CC adlist.o
在包含自 adlist.c:34 的文件中:
zmalloc.h:50:31: 错误:jemalloc/jemalloc.h:没有那个文件或目录
zmalloc.h:55:2: 错误:#error "Newer version of jemalloc required"
make[1]: *** [adlist.o] 错误 1
make[1]: Leaving directory `/root/dufy/redis/redis-3.0.4/src'
make: *** [all] 错误 2

备注:没有文件或者目录 ,这个是残存文件需要处理,使用命令make distclean

[root@localhost redis-3.0.4]# make distclean
cd src && make distclean
make[1]: Entering directory `/root/dufy/redis/redis-3.0.4/src'
rm -rf redis-server redis-sentinel redis-cli redis-benchmark redis-check-dump redis-check-aof *.o *.gcda *.gcno *.gcov redis.info lcov-html
(cd ../deps && make distclean)
make[2]: Entering directory `/root/dufy/redis/redis-3.0.4/deps'
(cd hiredis && make clean) > /dev/null || true
(cd linenoise && make clean) > /dev/null || true
(cd lua && make clean) > /dev/null || true
(cd jemalloc && [ -f Makefile ] && make distclean) > /dev/null || true
(rm -f .make-*) make[2]: Leaving directory `/root/dufy/redis/redis-3.0.4/deps' (rm -f .make-*)
make[1]: Leaving directory `/root/dufy/redis/redis-3.0.4/src'

在此执行make命令,一切ok了!

4.备份redis.conf,启动redis服务

注:安装了软件之后需要更改配置文件最好将原始的文件备份一份出来。
(1)进入到redis的目录:

cp redis.conf redis.conf.bak  #备份redis.conf

修改redis.conf

daemonize yes
#其他的配置暂时使用默认
#默认的端口是port 6379

(2)启动redis服务
redis的启动命令放在:

/usr/local/bin

启动命令:

#redis-server 目录名称/配置文件
#redis-server /root/dufy/redis/redis-3.0.4/redis.conf

[root@localhost redis-3.0.4]# cd /usr/local/bin/ 
[root@localhost bin]# ll
总用量 13848
-rwxr-xr-x. 1 root root 4165407 617 06:19 redis-benchmark -rwxr-xr-x. 1 root root 16467 617 06:19 redis-check-aof -rwxr-xr-x. 1 root root 37703 617 06:19 redis-check-dump -rwxr-xr-x. 1 root root 4254645 617 06:19 redis-cli lrwxrwxrwx. 1 root root      12 6月  17 06:19 redis-sentinel -> redis-server
-rwxr-xr-x. 1 root root 5695533 617 06:19 redis-server [root@localhost bin]# redis-server /root/dufy/redis/redis-3.0.4/redis.conf

注:#加上&号使redis以后台程序方式运行,为什么要后台运行使程序在Linux后台运行
例如:

 redis-server /root/dufy/redis/redis-3.0.4/redis.conf &

5.验证redis服务是否正常

[root@localhost bin]# redis-cli -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set key helloworld
OK
127.0.0.1:6379> get key
"helloworld"
127.0.0.1:6379> 

[root@localhost bin]# ps -ef|grep redis
root     28047     1  0 06:39 ?        00:00:00 redis-server *:6379                                 
root     28058 24868  0 06:40 pts/1    00:00:00 grep redis

redis安装结束,谢谢!


欢迎访问我的csdn博客,我们一同成长!

不管做什么,只要坚持下去就会看到不一样!在路上,不卑不亢!

博客首页:http://blog.csdn.net/u010648555

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/121163.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 测试开发需要学习的知识结构[通俗易懂]

    努力成为一个优秀的测试开发从业者,加油!!!一些视频链接:我这有一些软件测试的视频,你可以点开看看。转行互联网测试需要哪些技能?-假装在测试的回答-知乎作为一名软件测试人员,有哪些网站是你应该多多关注的,哪些书籍是你必须要看的?-假装在测试的回答-知乎白盒与黑盒测试什么区分1、黑盒测试  黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检…

  • 将 Linux 移植到 M1 Mac 真的太难了!「建议收藏」

    将 Linux 移植到 M1 Mac 真的太难了!「建议收藏」【CSDN编者按】自去年苹果自研M1芯片发布之后,激发了无数用户的体验热情,与此同时,也吸引大批开发者在M1上开启探索模式。其中,国外一位资深操作系统移植专家HectorMa…

  • 浅谈Vue.js_Vue js quote

    浅谈Vue.js_Vue js quote作为一名Vue.js的忠实用户,我想有必要写点文章来歌颂这一门美好的语言了,我给它的总体评价是“简单却不失优雅,小巧而不乏大匠”,下面将围绕这句话给大家介绍Vue.js,希望能够激发你对Vue.js的

  • 基于STC89C51/2的的超声波测距(1602A显示)「建议收藏」

    基于STC89C51/2的的超声波测距(1602A显示)「建议收藏」基于STC89C51/2的的超声波测距(1602A显示) 楼主在做学校单片机设计的时候为了测试超声波模块的功能与精度,动手DIY一款能用的超声波测距仪器,用1602液晶显示屏动态显示,精度在0.5cm左右,粗略测距,可用于避障,检测距离等的实际用途中。 我的超声波模块使用的是HC-SR04,板子使用的是STC89C52RC学习版(理论上51和52均可使 用)。得到距离之后可用于扩展功能,之后有空可以把我的经验分享出来,欢迎讨论。我的引脚接口如下ECHO=P2^4;

  • jquery时间轴幻灯展示源代码

    查看效果:http://hovertree.com/texiao/jquery/75/源代码下载:http://hovertree.com/h/bjaf/8jlpc2wu.htm效果图如下:代码如下:

    2021年12月26日
  • MQTT 服务器介绍

    MQTT 服务器介绍MQTT发布订阅模式简述MQTT是基于发布(Publish)/订阅(Subscribe)模式来进行通信及数据交换的,与HTTP的请求(Request)/应答(Response)的模式有本质的不同。订阅者(Subscriber)会向消息服务器(Broker)订阅一个主题(Topic)。成功订阅后,消息服务器会将该主题下的消息转发给所有的订阅者。主题(Topic)以‘…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号