今天来写点基础的东西,可能很多初学者不太会装Redis,这篇文章主要是分享一下如何在Linux中安装redis服务。

1. Redis的介绍

Redis是一种非关系型数据库(NoSQL),NoSQL是以key-value的形式存储,和传统的关系型数据库不一样,不一定遵循传统数据库的一些基本要求,比如说SQL标准,ACID属性,表结构等等,这类数据库主要有以下特点:非关系型的、分布式的、开源的、水平可扩展的。  

NoSQL使用场景:对数据高并发读写、对海量数据的高效率存储和访问、对数据的高可扩展性和高可用性。

Redis的key可以是字符串、哈希、链表、集合和有序集合。value类型很多,包括ststring、list、set、zset。这些数据类型都支持push/pop、add/remove及取交集和并集及更丰富的操作,Redis支持各种不同方式的排序。为了保证效率,数据都是在缓存在内存中,它也可以周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件。  

有了redis有哪些好处呢?举个比较简单的例子,看下图:

  

Redis集群和Mysql是同步的,首先从redis中获取数据,如果redis挂了,再从mysql中获取数据,这样网站就不会挂掉。更多关于redis的介绍以及使用场景,可以谷歌和百度,在这就不赘述了。

2. Redis的安装与部署

2.1 连接虚拟机

首先得启动虚拟机的network服务。我装的是目前最新版的CentOS7,虚拟机的网络使用的是桥接的方式。CentOS默认是不开启网卡的,所以首先得修改下配置。

  1. 运行vi /etc/sysconfig/network-scrips/ifcfg-eno16777736打开配置文件
  2. 将ONBOOT=no改为yes,CentOS默认是不开启网卡的
  3. 接着在虚拟机重启network服务。#service network restart
  4. 使用ifconfig查看eno16777736的ip地址,我的是192.168.1.120
  5. 在window命令行ping一下该地址,如果能ping的通,说明可以连接。我的ip是192.168.1.105,所以没问题。

ping通了说明可以使用putty来链接虚拟机了(当然了,也可以不使用putty,直接在CentOS的命令行操作也行,所以这一步不是必须的),打开putty输入虚拟机的ip地址,然后输入用户名和密码即可连接上:

2.2 安装gcc编译

因为后面安装redis的时候需要编译,所以事先得先安装gcc编译,

yum install gcc-c++

2.3 下载、解压和编译

wget http://download.redis.io/releases/redis-3.2.2.tar.gz tar xzvf redis-3.2.2.tar.gz cd redis-3.2.2 make

make这一步可能会报错,如果报错,可以尝试使用如下命令来编译:

make MALLOC=libc

编译好的二进制文件会放到src/目录下,可以看到有redis-server和redis-cli,这是redis的服务端可客户端,我们到时候可以直接运行这两个文件即可启动服务端和客户端,下面再说。另外还有一些其他配置文件。我们会觉得这有点乱,所以我们一般会自己新建一个目录专门存放命令和配置。

2.4 移动文件、便于管理

当然,你也可以不这么做~不过建议自己管理一下命令和配置,因为我的所有命令和配置都放在/usr/local/目录下,所有我在/usr/local/下新建了一个reids目录以及两个子目录来存放redis的命令和配置文件:

mkdir –p /usr/local/redis/bin 放命令 mkdir –p /usr/local/redis/etc放配置文件

然后将上面src目录下的命令和配置文件分别移动到对应的目录,移动后的结果如下:

2.5 启动redis服务

进入到/usr/local/redis/bin目录下,执行

./redis-server /usr/local/redis/etc/redis.conf

这是根据配置文件redis.conf来启动redis服务,但是默认是前台启动的,会占用我的session,如果想要后台启动redis,还需要修改一下redis.conf的配置,打开该配置文件:

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

然后将daemonize=no改为yes,然后再启动一下redis服务就可以后台启动了,然后我们可以查看一下是否启动成功:

ps -ef | grep redis   查看是否启动成功 netstat -tunpl | grep 6379  查看该端口有没有占用 结果如下:可以看出,redis启动正常。


2.6 启动redis客户端

redis客户端命令也在bin目录下,是redis-cli文件,运行一下即可启动redis客户端:

./redis-cli

启动结果如下:随便往里面插入一个name为eson15测试一下,可以正常获取,说明客户端没有问题。退出客户端的话直接quit即可。

2.7 关闭redis服务

关闭redis服务的话直接使用如下命令即可:

pkill redis-server


可以看出,关闭了之后就没有该服务的信息了,端口号也没有占用了,运行客户端就会提示无法连接,说明redis服务已经关闭了。当然了,也可以使用如下命令关闭:

./redis-cli shutdown

都是OK的。这篇文章就总结到这吧。

如有收获请划至底部

点击“在看”支持,谢

关注马士兵

每天分享技术干货

点赞是最大的支持 

centos redis make 报错_Redis入门安装,你只需要看我写的这篇就行了相关推荐

  1. centos redis make 报错_ubuntu 18.04 搭建 redis 实验环境

    本文只介绍在 Ubuntu 上搭建 redis 环境. 1. 安装构建工具 && sudo apt install make gcc python-dev 2. 下载 redis 源码 ...

  2. php hugepage,【原创】解决Redis启动报错:Transparent Huge Pages (THP) support enabled in your kernel...

    问题背景 Redis启动报错: WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This w ...

  3. Linux 常规安装MySQL 执行启动命令报错(附安装方法)

    采用解压官网的targ ,配置mysql group权限组,并且初始化数据库后,执行service mysql start 报错: /etc/init.d/mysql: line 244: my_pr ...

  4. 已解决-MacBook重装系统报错:准备安装时发生错误,请尝试重新运行此程序

    我是月球挖掘机,今天重新安装了下macbook air的系统,用联网恢复的方式安装的时候,结果总是报错:准备安装时发生错误,请尝试重新运行此程序.网上找了方法用了还是不行,最后发现自己的时间虽然按照设 ...

  5. Redis:报错Creating Server TCP listening socket *:6379: bind: No error

    错误: window下启动redis服务报错: Creating Server TCP listening socket *:6379: bind: No error 原因: 端口6379已被绑定,应 ...

  6. VScode 使用background插件 报错:Code 安装似乎损坏。请重新安装 解决方法

    VScode 使用background插件 报错:Code 安装似乎损坏.请重新安装 解决方法 安装了background插件后启动时右下角出现弹窗报错 这时候需要使用插件:Fix VSCode Ch ...

  7. 三张解决方法--安装VMware报错:无法安装服务vmware Authorization server请确保你有足够的权限

    安装VMware报错:无法安装服务vmware Authorization server请确保你有足够的权限 解决一: 出现"无法安装服务vmware Authorization serve ...

  8. redis启动报错解决

    一. redis启动报错 [test-mac:~ test$ redis-server 1342:C 18 Oct 2021 17:02:46.555 # oO0OoO0OoO0Oo Redis is ...

  9. Redis 启动报错 QForkMasterInit: system error caught. error code=0x000005af 解决

    title: Redis 启动报错 QForkMasterInit system error caught error code=0x000005af 解决 date: 2022-03-16 16:2 ...

最新文章

  1. mysql隔离级别加锁情况_MySQL数据库事务各隔离级别加锁情况--read committed amp;amp; MVCC...
  2. BZOJ 2561: 最小生成树(最小割)
  3. keepalived 安装和配置
  4. 在ListBox中添加ToggleButton(有IsChecked属性)
  5. PyTorch教程(三):索引与切片
  6. 实验4-2-3 pta验证“哥德巴赫猜想” (20分)
  7. 使用VS开发C++ 控制台程序或其他项目出现 ‘ LINK : fatal error LNK1104: 无法打开文件“LIBCD.lib” ’ 常规解决办法
  8. python谱聚类算法_谱聚类Spectral clustering(SC)
  9. KDE桌面没有wifi的解决方案
  10. paypal如何支付欧元_国际在线支付巨头——PayPal
  11. 压力测试 - Apache JMeter使用教程
  12. 生成二维码,批量导出带格式的execl
  13. JS_js和jq获取屏幕高度、宽度的方法
  14. 尔雅网络选课 大学计算机知识,2017-2018学年第1学期超星尔雅网络课程选课指南.PDF...
  15. 计算机考研复试面试系列 计算机专业英语篇
  16. 华信分享-网站优化关键词密度多少才是最合适的?
  17. 支持Micro USB安卓接口与iphone 8手机的5W无线充电芯片|无线快充芯片小封装SOP8外围简单精简
  18. 英语不好学不好编程?程序员记忆单词专属诀窍,效果简直要逆天
  19. 【Ⅰ绪论】2.数据结构的基本概念
  20. matlab受力曲线导入adams中,如何在adams中导入dxf曲线

热门文章

  1. JSONP 跨域共享信息
  2. C# MVC的博客开发(三)注册
  3. mysql int()_简单谈谈MySQL中的int(m)
  4. sign check fail: check Sign and Data Fail
  5. vscode 英伟达tk1_英伟达的未来,不只是GPU
  6. 使用spring ResponseEntity处理http响应
  7. 计算机硬盘到内存不足,内存不够硬盘来凑,怪不得电脑卡!
  8. (JAVA)FileWriter
  9. Java 中的 Reference
  10. matplotlib的颜色和控制条